2017-06-07 10 views
0

私は最近、職場のすべてのレポに対してSubversionからGitに移行しました。しかし、svnでは、Jenkinsのジョブがチェックインされたブランチに対して実行されるように、私たちは適切な位置にフックを設定していました。さて、私はこれをGitlabを使って設定しようとしていますが、Webフックを追加する場所は1つしかないようです。何かが何かのブランチにチェックインされた時のように見えます。ウェブフックが実行されます。意味jenkins_job_Aに関連するbranch_Aがある場合、何かがbranch_Bにチェックインされ、jenkins_job_Aのコミットフックが実行されます。これらのWebフックを設定するブランチの方法でブランチがありますか?または、コミットフックとして動作する各ブランチをチェックできるスクリプトがありますか?または(私の恐れ)、この機能はGitlabではサポートされていませんか?GitlabでチェックインしたブランチのJenkinsビルド

答えて

1

投稿コミットリクエストをhttp://yourserver/jenkins/git/notifyCommit?url=<URL of the Git repository>にするようにGitLabを設定すると思いますか?理論的には、このURLで構成されているすべてのジョブのポーリングがトリガーされ、ポーリング・ステップでは、ジョブがビルドするかどうかを決定する必要があります。実際には、残念なことに、これはすべてのジョブを起動させます。

ジョブ構成をJenkinsfileに移動し、a Multibranch Pipelineを使用してこの問題を回避しました。

また、GitLab plugin for Jenkinsをインストールし、Jenkins integration in GitLabを使用することもできます。これにより、コミットがブランチにプッシュされたときに正しいジョブをトリガーすることができます。欠点は、ジョブごとの構成が必要であることです。

関連する問題