製品プロフィール

GitHub Actions

GitHub / CI/CD(GitHub 統合)

GitHub に統合された CI/CD。リポジトリのイベントをきっかけに YAML のワークフローを自動実行する。

3つの要点
TL;DR
  1. GitHub 内蔵の CI/CD。push などで YAML を自動実行。
  2. Marketplace のアクション流用で設定が手軽・運用不要。
  3. GitHub 中心なら最有力。Jenkins ほどの自由度は不要な時に。

基本情報

仕様と立ち位置

GitHub Actions のロゴ
製品・技術の概要GitHub ActionsGitHub に統合された CI/CD。リポジトリのイベントをきっかけに YAML のワークフローを自動実行する。
種別
CI/CDGitHub 統合)
提供元
GitHub
ライセンス
GitHub に付随無料枠+従量)
登場
2019年
最大の強み
GitHub と密結合で設定が手軽公開アクション(Marketplace)が豊富
代表的な用途
テスト/ビルド/デプロイの自動化OSS・一般的な CI/CD

選定ガイド

選定ポイント

採用する理由と、事前に受け入れるべきトレードオフを分けて確認します。

採用に向く条件

選ぶ理由

  1. GitHub と密結合で設定が手軽
  2. 公開アクション(Marketplace)が豊富
  3. マネージドで運用不要

事前に確認する条件

考慮すべき点

  1. GitHub 前提
  2. 特殊要件はセルフホストランナーが要る

詳しい解説

もっと詳しく

どんなツールか

GitHub Actions は、GitHub に統合された CI/CD サービスです。コードのプッシュやプルリクエストといった GitHub 上のイベントをきっかけに、ビルド・テスト・デプロイといった処理を自動で走らせられます。

「結局なに?」を一言でいえば、リポジトリと一体で動く自動化の仕組みです。別のサーバーを立てる必要がなく、GitHub を使っていればすぐに導入できます。

横にスクロール

GitHub のイベントからワークフロー、ジョブ、ランナー、成果物、デプロイへ進む GitHub Actions の実行経路と、権限・同時実行を制御する位置
GitHub Actions はイベントを起点にジョブの依存関係を解決し、ランナー上のステップを実行します。成果物、権限、環境、同時実行制御まで含めて設計すると、安全に再実行できるパイプラインになります。

特徴・仕組み

処理は YAML の「ワークフロー」ファイルとして定義し、.github/workflows/ に置きます。イベント(on:)→ジョブ(jobs:)→ステップ(steps:)という構造です。

on: push
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm test
  • アクション(uses:: チェックアウトやデプロイなど定型処理を再利用できる部品。マーケットプレイスに多数公開され、組み合わせて組み立てられる。
  • ランナー: 実行環境。GitHub ホスト(Ubuntu/Windows/macOS)と、自前の セルフホストランナーを選べる。
  • マトリクス: OS・言語バージョンなどの組み合わせを一括で並列テストできる。
  • シークレット / OIDC: 資格情報を安全に渡せる。クラウドへは長命キーではなく OIDC の一時credentialで認証するのが推奨。

得意・不得意

  • GitHub 上のイベントと密に連携でき、設定が少なく導入が容易。
  • 再利用可能なアクション・再利用可能ワークフローが豊富で、定型処理を自分で書かずに済む。
  • 反面、GitHub を使っていることが前提。他のソース管理が中心の環境には向かない。

他の CI との違い

観点GitHub ActionsJenkins
前提GitHub リポジトリ任意(セルフホスト)
導入設定少なく即開始サーバー構築が必要
部品マーケットプレイスのアクションプラグイン
運用基盤が面倒を見る自前保守

すでに GitHub でコードを管理しているなら、まず候補に挙がります。Jenkins のように専用サーバーを自前運用する手間がなく、リポジトリと同じ場所で完結します。GitLab を使うなら GitLab CI、というように基盤に合わせて選ぶのが自然です。

使いどころ・注意点

サードパーティアクションと権限

外部アクションはコードを実行できるため、供給網リスクがあります。信頼できる発行元に絞り、コミットハッシュで固定(バージョンタグより堅牢)します。GITHUB_TOKEN の権限は最小限にし、クラウド認証は OIDC を使って長命シークレットを避けます。

総じて GitHub Actions は、リポジトリ一体の手軽さと豊富なアクションで、GitHub 中心の開発に最適な CI/CD です。

実装・運用の視点

GitHub Actionsを実務で読む

TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。

解決すること

テスト/ビルド/デプロイの自動化

比較で見る軸

種別: CI/CD(GitHub 統合) / 提供元: GitHub / ライセンス: GitHub に付随(無料枠+従量)

導入後に効く点

公開アクション(Marketplace)が豊富

先に潰すリスク

GitHub 前提

数字・仕様の読み方
種別
CI/CD(GitHub 統合)
提供元
GitHub
ライセンス
GitHub に付随(無料枠+従量)
登場
2019年

判断チェックリスト

  • 自社の用途が「テスト/ビルド/デプロイの自動化 / OSS・一般的な CI/CD」に近いか確認する。
  • 強みである「GitHub と密結合で設定が手軽」が本当に評価軸になるか確認する。
  • 注意点の「GitHub 前提」を運用で吸収できるか確認する。
  • 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
  • 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
  • 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。

次に確認する観点

テスト/ビルド/デプロイの自動化OSS・一般的な CI/CD

向いている用途

こんな用途に向く

テスト/ビルド/デプロイの自動化OSS・一般的な CI/CD
公式サイト