ここでは、基本的に依存関係パラメーターを探しています。
ビルドパラメータセクションに2つのドロップダウンがあるとします。最初のドロップダウンから選択した値に基づいて、可能なデフォルトの2番目のドロップダウンの値を変化させます。
この要件を効果的に処理するためのプラグインまたはアプローチはありますか?
これはまさにあなたが探しているものです: https://github.com/biouno/uno-choice-plugin/wiki/Uno-Choice-Cascade-Dynamic-Choice-Parameter
これは隠された宝石のようで、これまでのところ、同様の質問のいずれにも見られません。
この機能(およびその他)を備えた新しいプラグインは、こちらから入手できます。 https://wiki.jenkins-ci.org/display/JENKINS/Active+Choices+Plugin
Wikiページには、いくつかの使用例とコードが含まれています
私はそれを使用していませんが、次のプラグインがあなたの望むことをするようです:
2つの選択要素を可能にするJenkinsパラメータプラグイン。 2番目の選択は、最初の選択に対して行われた選択に応じて値を設定します。
これ はあなたが正しく達成したいことですか?
次に、_hudson.model.ChoiceParameterDefinition
_を継承して、getChoicesText
のメソッドをオーバーライドできます。必要に応じてオプションを返します。状況によっては、Hudson.getInstance()
から環境を取得できます。
以下のスニペットは、環境変数を取得する方法を示しています。
_Hudson.getInstance().getGlobalNodeProperties()
.get(EnvironmentVariablesNodeProperty.class).getEnvVars().get(name);
_
ここ も同様の質問です。
これは、単一選択、複数選択、およびレベルでの実行を可能にするトリックを実行するはずです https://wiki.jenkins-ci.org/display/JENKINS/Active+Choices+Plugin
ここに例があります。この質問を探していたときに見つけたいです。
これは、JenkinsジョブDSLでアクティブチョイスのリアクティブパラメーターを作成する方法です。
activeChoiceReactiveParam('PARAMETER_NAME') {
description('Parameter description')
filterable()
choiceType('SINGLE_SELECT')
groovyScript {
script('return [ANOTHER_PARAMETER + ".suffix", ANOTHER_PARAMETER + ".suffix2"]')
fallbackScript('return ["NotFound"]')
}
referencedParameter('ANOTHER_PARAMETER')
}
注:DSL経由でジョブをインポートしても機能しない場合は、「構成」と「保存」を実行してください。バグがあります: JENKINS-42655