Skip to content
Latchkey

GitHub Actions のランナーグループとは?

ランナーグループはセルフホステッドランナーの集合で、どのリポジトリやワークフローが利用できるかを制御するポリシーを持ちます。

組織が多数のセルフホステッドランナーを持つ場合、誰がそれらで実行できるかを制御する必要があります。ランナーグループはランナーをまとめ、アクセスポリシーを適用することで、機密性の高いハードウェアがすべてのリポジトリに開かれないようにします。

概要

組織またはエンタープライズレベルの名前付きグループで、セルフホステッドランナーを含み、どのリポジトリやワークフローがそのグループをターゲットにできるかのルールを持ちます。

仕組み

ランナーをグループに割り当て、たとえば特定のリポジトリのみ、あるいはプライベートリポジトリのみといったアクセスポリシーを設定します。ジョブはランナーのラベルに一致することでグループに到達しますが、そのリポジトリが許可されている場合に限られます。

Targeting a group
jobs:
  build:
    runs-on:
      group: production-runners
      labels: [self-hosted, linux]

重要な理由

ランナーグループはインフラに最小権限を強制します。クラウド認証情報を持つ deploy ランナーを deploy リポジトリに限定でき、信頼できないコードを特権マシンから遠ざけられます。

ガバナンス上の利点

  • 強力な、または認証情報付きのランナーを利用できるリポジトリを制限する。
  • 環境 (prod と dev) をグループごとに分離する。
  • キャパシティを一元的に監査・管理する。

関連する概念

ランナーグループはセルフホステッドランナーを整理し、ターゲット指定とアクセス制御のためにラベルと連携します。

重要なポイント

  • ランナーグループはセルフホステッドランナーをアクセスポリシーとともにまとめます。
  • ポリシーは、どのリポジトリやワークフローが利用できるかを制限します。
  • CI インフラに最小権限を強制します。

関連ガイド