Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Jenkins Plugin 「Build Flow Plugin」 覚書

More than 3 years have passed since last update.

Build Flow Plugin

https://wiki.jenkins-ci.org/display/JENKINS/Build+Flow+Plugin
Build Flow Plugin とは JenkinsのPluginの1つで、
ざっくり言うと、複数ジョブをまとめて実施してくれるジョブを作れるプラグインです。
標準機能で
「(ビルド後に)他のプロジェクトのビルド」というのがありますが、
・数珠つなぎで各ジョブに設定しないといけなかったり、
・単品で実行したいときもあるんだ!という場合に不便だったり、
とその辺の使い勝手を改善してくれるブラグインだと思います。

基本的な書き方

あらかじめ、job1~3は単体で作ります。
その後、[新規ジョブ作成]-[Build Flow]でジョブを作ります。

build("job1")
build("job2")
build("job3")

これを実行すると job1→job2→job3 と続けてビルドしてくれます
(※ 途中でエラーになると以降のジョブは実行されません)

パラレルな書き方

parallel(
  { build("job1-1") },
  { build("job1-2") },
)

順番は問いません。job1-1 と job1-2 実行できる方から実行するという書き方です。

引数ありな書き方

build("job1")
build("job2", param1: 1)

job2 実行時に param1=1 を入れた形で実行します

引数ありな書き方2

ビルドのパラメータ化.
hoge = 5
Flow.
build("job1")
build("job2", param1: params['hoge'])

Build Flow ジョブ自体に引数を入力できるようにし、その引数をセットする形

全部入り

ビルドのパラメータ化.
hoge = 5
Flow.
parallel(
  { build("job0-1") },
  { build("job0-2") },
)
build("job1")
build("job2", param1: params['hoge'])
build("job3", param2: "aaa")

以上です

t_n
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away