はじめに
JenkinsのGit Pluginを使うと、ビルドが終わったあとに、リポジトリにタグを打つことができる。
Jenkinsは、環境変数 BUILD_NUMBER にビルド番号を保持している。これを使って、Gitリポジトリにタグを打つのに悩んだのでメモしておく。
やりたいこと
- build-<ビルド番号> というタグを打ちたい
- ビルド番号は4桁の整数。4桁に満たないときは左側に0を埋めて4桁にする
この、0埋めして4桁にするのに悩んだ。
使うプラグイン
次のプラグインを入れておく。
すること
まず、「ビルド手順の追加」で「シェルの実行」を選ぶ。テキストエリアには、次のようなスクリプトを書く。
mkdir -p tmp
printf "MY_TAG = build-%04d" $BUILD_NUMBER > tmp/tag.properties
続いて、「ビルド手順の追加」で「環境変数のインジェクト」を選ぶ。「プロパティファイルのパス」のテキストボックスに、 tmp/tag.properties
と書く。
これによって、環境変数MY_TAG
に、build-0023 のような値が設定されるようになる。
最後に、「ビルド後の処理の追加」で、「Git Publisher」を選ぶ。「Tag to push」や「Tag Message」に、$MY_TAG
のように、環境変数を参照する形式で書くことができる。
おわりに
もっといいやり方があったら、ぜひ教えてください。