Jenkins Yaml Axis Pluginとは?
Travis CIみたいにyamlファイルからマトリックステストの軸を作成するためのプラグインです
- https://github.com/jenkinsci/yaml-axis-plugin
- https://wiki.jenkins-ci.org/display/JENKINS/Yaml+Axis+Plugin
使い方
1. リポジトリにyamlファイルをコミット
axis.yml
RUBY_VERSION:
- 2.1.8
- 2.2.4
- 2.3.0
DATABASE:
- mysql
- postgres
- oracle
2. 「マルチ構成プロジェクトのビルド」を作成
2. 「軸の設定」でYaml Axisを選択し、軸を設定
3. 実際にビルドするとyamlの値で軸が作られる
4. 特定の組み合わせのみ除外したい
Yaml matrix execution strategyを選択するとYamlで除外設定ができます
axis.yml
exclude:
- RUBY_VERSION: 2.1.8
- RUBY_VERSION: 2.3.0
DATABASE: oracle
この例だと RUBY_VERSION == "2.1.8" OR RUBY_VERSION == "2.3.0" && DATABASE == "oracle"
のような条件で除外されます。
メリット
- 軸の設定をリポジトリに含めることができる
- 1つのジョブでブランチごとにビルドする内容を変える事ができる
- 例えば、Rails 5対応ブランチのみRails 5でビルドというパターン
- 除外設定はワンライナー 1 に比べて柔軟に設定できる
- 単純な設定ならいいけど条件が2つ以上になったら厳しい
詳しいこと
Jenkinsを使った最高のマトリックステスト(2016年版) - くりにっき
-
Groovy式を入力してtrueになった時に実行される ↩