Skip to content
Latchkey

pull request pipeline とは何か?

pull request pipeline とは、提案された変更が main branch に merge を許可される前に実行される、自動チェックの集合です。

pull request を開くと、通常はチェックが回っているリストが見えます。building、testing、linting です。それが pull request pipeline です。提案された変更に対して CI が実行され、変更が共有コードベースに加わる後ではなく前に問題が捉えられるようにします。

何であるか

pull request pipeline は、pull request を開くか更新することでトリガーされる CI pipeline です。提案された変更を build しテストし、多くの場合その変更をターゲット branch と merge したものに対して行い、結果を PR 上の status check として報告します。その仕事は、変更が merge して安全であることを検証することです。

通常何を実行するか

  • コードを build してコンパイルできることを確認する。
  • unit と integration のテストを実行する。
  • linter とフォーマットチェックを実行する。
  • セキュリティまたは依存関係の scan を実行する。
  • 各結果を PR 上の status check として報告する。

開発者が pull request に commit を push します。pipeline は変更を build し、複数の言語バージョンにわたってテストスイートを並列に実行し、5 つの緑のチェックを投稿します。reviewer はチェックが合格するのを見て、コードをレビューし、変更が build を壊さない自信を持って merge します。

なぜ main branch を守るか

main branch は常に既知の良好な状態であるべきです。誰もがその上に構築するからです。pull request pipeline は、merge 前にすべての変更を検証することでそれを強制します。branch protection と組み合わせると、合格した pipeline を merge の前提条件にするため、壊れたコードが trunk に到達できません。

速く保つ

開発者は merge の前にこれらのチェックを待つため、pipeline の速度はチームが出荷する速さに直接影響します。テストを並列化し、速く信頼できる runner を使うこと、Latchkey のようなマネージド runner プラットフォームが注力する領域が、PR pipeline を速く保ち、妨げではなく助けになるようにします。

重要なポイント

  • PR pipeline は merge 前に変更に対して CI チェックを実行する。
  • build、test、scan の結果を status check として報告する。
  • 各 merge をゲートすることで main branch を健全に保つ。

関連ガイド