いくつかの Jenkins Jobs の動的ビルド パラメータを確立しようとしています。私はすでにDynamic Parameter Plug-inとExtensible Choice Parameter pluginを見つけました。どちらも、入力に groovy スクリプトを使用できます。
ここで、トリッキーな部分が来ます。project.property ファイル (現在のバージョン) を読み取り、それを入力のデフォルトとして使用したいと考えています。問題は、ワークスペース内のファイルにアクセスすることでした。「Extensible Choice Parameter」プラグインのみに、ワークスペースの FilePath を取得できる現在のプロジェクト (AbstractProject) の便利な変数を有効にするオプションがありました。次のスクリプトを参照してください。
import hudson.FilePath;
propertiesFile = new FilePath(project.getWorkspace(),"project.properties");
props = new Properties();
props.load(propertiesFile.read());
return [props["version"]]
現在、このプラグインはユーザーにリストを提供するだけで (編集可能にできますが)、主な欠点は、このスクリプトをコピーして、使用するすべてのジョブに貼り付ける必要があることです (これらすべての何かを変更することは言うまでもありません)仕事も苦痛になります)。
動的パラメーター プラグインには優れたスクリプトラー統合がありますが、現在のプロジェクトを取得する方法がわかりません。この例では、実際のワークスペースからパラメーターをロードするものは何も示していませんが、外部ファイルからのみロードしています。
これらの問題のいずれかを解決する方法を知っている人はいますか?