web-dev-qa-db-ja.com

GitHubは、フォークとローカルブランチについて、Jenkinsからのステータスチェックを必要としました

JenkinsでMultibranchPipelineジョブを使用してGitHubリポジトリを確立しました。これまで、Jenkinsがリポジトリからローカルブランチを構築するときに投稿するように、continuous-integration/jenkins/branchステータスチェックを要求することに満足しています。ただし、外部フォークからプルリクエストを受け取ったので、Jenkinsはそのためのcontinuous-integration/jenkins/pr-mergeステータスチェックを投稿しました。また、continuous-integration/jenkins/branchステータスチェックが必要なため、PRはマージされません。

(主要なメンテナからの)ローカルブランチと(時折外部の貢献者からの)フォークの組み合わせを持つプロジェクトに対して、ここで期待されるアプローチは何ですか? GitHub側でいずれかのステータスチェックが必要になるのをやめる必要がありますか?または、PRのソースに関係なく、Jenkinsに安定したステータスチェックコンテキストを投稿させる他の方法はありますか?

9
Nick Jones

私は同じ問題を抱えていましたが、親切な同僚のおかげで、デフォルトでは、ブランチソースプラグインがプルリクエストに必ずしも関連付けられていないブランチをビルドすることがわかりました。

(リンクのチェックボックス「BuildOriginbranchs」に関連します: https://go.cloudbees.com/docs/cloudbees-documentation/cje-user-guide/index.html#_controlling_what_is_built

これが「継続的インテグレーション/ジェンキンス/ブランチ」のステータスチェックを作成するものです。

そのオプションのチェックを外し、「Build Origin PRs(merged with basebranch」オプション」にチェックを入れました。両方のステータスチェックのコンテキストが「continuous-integration/jenkins/pr-merge」になり、フォークとブランチの両方のPRが同じようにトリガーされるようになりました。ステータスチェック。

私のセットアップでは、チェックボックスは組織構成にあり(GitHub組織プラグインも使用しているため)、[プロジェクト]> [GitHub組織]> [詳細]の下にあります。同じオプションがマルチブランチパイプライン構成に表示されます。

お役に立てれば

3
Kubbs