私はパイプラインジョブをいくつかのステージから構成し、それぞれに数時間かかります。 パイプライン処理を行う前に、各ステージは独自のジョブであり、そのうちのいくつかにはHeavy Job Pluginを使用していました。これで、 "properties"コマンドで "HeavyJobProperty"を指定できるようになりました。私はthis questionのおかげでその構文を正しく得ることができました。パイプラインジョブでJenkins Heavy Job Propertyを使用する方法
私のパイプラインのスクリプトが好きにこのなります。スクリプトを実行するとき
node ('<label>') {
ws ('<mydir>') {
// Mark the code checkout 'stage'....
stage 'Checkout'
git url: '<repourl>'
stage 'Build'
properties ([[$class: 'HeavyJobProperty', weight: 8]])
sh '<mybuild>'
}
}
残念ながら、これは動作するようには思えない、私はメッセージを取得する:
ERROR: cannot apply hudson.plugins.heavy_job.HeavyJobProperty to a WorkflowJob
誰もがアイデアを持っていますがどのように私はこれを働かせる?
パイプライン文書でHeavyJobPropertyが表示されていても、プラグインは単純にまだパイプライン作業に適応していないように見えます。
プラグインをインストールし、「プロパティ」コマンドの「パイプライン構文」のドキュメントを見ると、「$ class: 'HeavyJobProperty'」のドキュメントが表示されます。それで、私はプラグインが互換性があると結論づけました。または、パイプライン構文がプラグインを自動的にピックアップしますか? – olenz
私は、パイプライン構文が自動的にコード内の正しいインターフェースを実装するものを選択すると思います。私の推測では、偶然インターフェイスを実装することが起こり、互換性があるかどうかを確認するために何もしていないということです。 ロードしても動作しない例として、私は最近、gradleプラグインをハックしてパイプライン構文で動作させようとしていますが、正しくロードされてもまだ変更されませんビルドのステータスは必要です。 –
私は時間を見つけたら、プラグインをパイプライン化に適応させようとします。ありがとう、サム! – olenz