これは定期的にポーリングしているためJenkinsのビルドが始まるまでにタイムラグが発生する。
プッシュされたタイミングで即時にJenkinsビルドを実行させるにはGitフックを使用する。
(Git Pluginのインストールは省略)
Gitフックを使用するにはhooksディレクトリに適切なファイル名で配置する。
ここでは中央リポジトリにプッシュしたタイミングでJenkinsビルドを実行させるという想定なので
post-updateファイルを作成し、中央リポジトリのhooksディレクトリ直下に配置する。
- #!/bin/sh
- wget -q "http://[Jenkinsトップ画面のアドレス]/job/[ジョブ名]/build?delay=0"
- if [ "$?" -eq 0 ]; then
- echo "Jenkins build run."
- else
- echo "Jenkins build failed."
- fi
chmod +x post-update上記スクリプトを見るとわかる通りwgetでジョブ実行のURLを叩くだけ。
ちなみにJenkinsのセキュリティが有効になっている場合は認証トークンの設定が必要。
上記のURLに下記を追加。
&token=[認証トークン]もちろんシェルスクリプトじゃなくてもpythonでもrubyでもお好きなのでどうぞ。
0 件のコメント:
コメントを投稿