私は3つのGitブランチ、マスター、br2、br3を持っています。私は3つのジェンキンスの仕事を持っています。それぞれが同じリポジトリをクローンしますが、別のブランチをチェックアウトします。私の理解は、ポスト受信フックの下のコマンド(http://kohsuke.org/2011/12/01/polling-must-die-triggering-jenkins-builds-from-a-git-hook/)でプッシュが行われたブランチに対してジョブを開始するようにJenkinsをトリガーするはずです。Git push:ブランチの変更が必ずしもJenkinsを起動させるとは限りません
カールhttp://smfosbuild:8080/git/[email protected]:scmtest.git
変更がBR2で行われ、プッシュ、正しいジェンキンスジョブが開始されます。しかし、マスターやbr3に対して行われた変更をプッシュすると、関連するジョブが開始されません。
私はまた、電子メールトリガをアクティブにして、正しいブランチを示すすべてのプッシュについて電子メールを受け取ります。したがって、ポスト受信フックは、変更されたブランチについての正しい情報を取得しています。すべてのアイデアは上記の私のコマンドが間違っているか、Jenkinsの設定にいくつかの設定がありますか?
ありがとうございました。私はあなたが暫定的な解決策として提案したことをしました。ポスト受信フックからブランチ名を取得し、httpコールを作成する独自のスクリプトを呼び出します。これは素晴らしいですが、スケーラビリティはありません。それはJenkinsの命名規則を強制します - おそらく悪いことではありません。また、私は30以上のレポを持っていて、それぞれがジェンキンスの仕事の名前の根で微調整する必要があります。 Jenkinsの職名を変更すると、名前の変更が完了するまでトリガーが掛かります。だから、非常に良い提案ですが、将来のメンテナンスのために推奨されるコマンドを手に入れたいと思っています。 – Scot
本当に申し訳ありませんが、Jenkinsの設定とログファイルを調べることなく、この問題を解決することは本当に難しいでしょう。ご希望の場合は、電子メールでこれを切り替えることができますので、さらにお手伝いさせていただきます。 –