私たちは、自動テストやコードレビューのためのgit、ヘリットとジェンキンス含め、私たちの新しいCIシステムのセットアップを終えている、と私たちは奇妙な状況を発見している:私たちは別の3を持っている複数ジェンキンス/ヘリット・プロジェクト
をgerritプロジェクト、各自が独自のJenkinsの仕事を持っています。セットアップリファレンスとしてthis guideを使用し、すべてがインストールされていて、明らかにうまく動作しています。
最初のプロジェクトがセットアップされ、サンプル変更パッチでテストされました。ジェンキンスは正しくトリガされ、テストに合格し、期待どおりにビルドに「検証済み」と投票しました。ここまでは順調ですね!
しかし、2番目のプロジェクトをセットアップしようとすると、プロジェクトの1つの変更パッチがすべてのジェンキンジョブで変更されることがわかりました。例:
GerritProjectAとGerritProjectBがあり、それぞれにJenkinsProjectAとJenkinsProjectBがあるとします。変更がGerritProjectAに送信されると、JenkinsProjectAとJenkinsProjectBの両方がトリガーされます。また、何かをビルドした後、ヘリット投票にまで混入:これはです(JenkinsProjectBの1)を構築するの1の後sshd_logでの情報:
gerrit approve 10,3 --message '\''Build Failed
http://jenkins-server:8080/job/projectA/6/ : FAILURE
http://jenkins-server:8080/job/projectB/59/ : Correcto'\!''\'' --
verified -2 --code-review 0' 14ms 6ms 1
あなたが見ることができるように、ヘリット・コマンドを承認が混ざっています任意のジェンキンスジョブ用の2つの異なるジェンキンスジョブの情報と...
サンプルのセットアップ:
Repository URL: ssh://[email protected]:29418/projectA.git
Banches to build: $GERRIT_PATCHSET_REVISION
Build triggered by Gerrit event:
Project Type: Plain
Branches: Path **
ソフトウェアバージョン:
Jenkins: 1.458
Gerrit plugin: 2.5.1
Gerrit: 2-3 rc0
アイデアをお探しですか?前もって感謝します!ジェンキンスジョブ(のはJenkinsJobBそれを呼びましょう)の
一つ、設定の「ヘリット・トリガー」の部分にでgitリポジトリの名前を持っていなかった:問題が見つかり
ドミンゴ