2017年2月6日月曜日

[Jenkins]「ビルド手順の追加」にある処理を「ビルド後の処理」で実行したい場合の回避策


そっちにあるけど、こっちはない!!ってやつです。

まずやること
  1. 同じような Issue がないか探します。(https://issues.jenkins-ci.org/)
  2. 同じような Issue があったら vote します。
  3. 対応してもらえるのを待ちます祈ります。( ̄人 ̄)



















待てるかっ


Promoted Builds Plugin を使う
Promoted Builds Plugin を使ってこの問題を回避したいと思います。

Promoted Builds Plugin は本来は「ビルドを昇格させる」のに使います。
例えば、デプロイしたら昇格する、下流のテストが全部 PASS したら昇格する、とかですかね。

さて、Promoted Builds Plugin では Promote build が実行されるトリガーに「ジョブのビルド完了後」があります。
つまり、ビルド後の処理的な感じで実行できるのです。
「Promote builds when...」にチェックを入れ、「Criteria」の「Promote immediately once the build is complete」にチェックを入れます。(unstable でも実行したい場合は「Trigger even if the build is unstable」にもチェック)


そして、「Actions」には「ビルド手順」「ビルド後の処理」の中からアクションを選択できます。


ということで、「ジョブのビルド」→「ビルド完了」→「昇格ビルド」→「ビルド手順の処理」という流れで、「ビルド手順」にしかない処理も「ビルド後」にできちゃうのです!!

昇格成功すると★がつきます。


Post Build Script Plugin を使う
もっと直球に解決してくれるプラグインがあります。

それが、Post Build Script Plugin です。
名前からすると、「ビルド後の処理」で「スクリプト」を実行できるようなプラグインの印象を受けますが、このプラグインで実行できるのは bat/shell スクリプト、Groovy スクリプトだけでなく、「ビルド手順(build step)」の処理も実行できちゃうのです!!

Post Build Script Plugin をインストールすると「ビルド後の処理」に「Execute a set of scripts」が追加されるので、それを追加してください。


まさに、これ!!なプラグインですね。
最初は Promoted でできるよなーと思って調べ始めたのですが、こんな便利なプラグインがあったとは…
今後、Jenkins 構築するときには積極的にインストールしておきたいプラグインの1つになりそうです。


最後に
いかがでしたでしょうか?やっぱり探せばあるもんですね。
Jenkins ネタはまだまだ尽きないですな。

ではでは~




0 件のコメント:

コメントを投稿