2017-09-18 23 views
10

私はやや古いHudson構成です。私たちは、社内でNexusリポジトリにクエリを行い、いくつかのジョブパラメータを設定するプラグインを開発しました。プラグインはJavaにあります。Hudson/Jenkins Plugin開発:他のプラグインの環境変数を取得する方法

デフレートされたSetEnv Pluginも使用します。ここでは、環境変数を設定しています。

私たちのプラグインは、基本的にParameterDefinitionクラスを拡張してビルドジョブ画面に一連のオプションを与え、次にParameterValueクラスが私たちのジョブの環境変数を設定します。

当社のパラメータ定義クラッセ:

class NexusQueryParameterDefinition extends ParameterDefinition 

それが私たちのパラメータ定義クラスからのsetenvプラグインで定義されている環境変数にアクセスすることは可能ですか?

私はパラメータビルドされたビルドの定義時に問題があります。これは、「今すぐビルド」ボタンを押してから、「ビルド」ボタンを押してプロセスを開始するときの画面です。この時点で私はジョブインスタンスオブジェクトへのアクセス方法を知らず、フォームの送信時にビルドオブジェクトが作成されると考えています。

これらの環境変数は​​3210に保存されています。このファイルを読むことができれば、値を解析できます。

答えて

0

Environment Injectorプラグインとgroovyコードを使用して、ジョブ設定の[実行環境の設定]オプションでマップオブジェクトを返すことを検討することをお勧めします。

-1

あなたは試したことがありますか? System.getenv( "yourEnvVar");で環境プロパティにアクセスする手段。

移行パスの設定済みEnv-Paramsにアクセスする場合は、処理が難しくなります。しかし、統合のために私はconfig.xmlを読んで、あなたのプラグイン自体の設定を引き出すことをお勧めします。

関連する問題