GitHub Actions 入門 〜CI/CDをはじめてみよう〜
投稿日:2026/01/09
GitHub Actionsは、GitHubに標準で備わっているCI/CD(継続的インテグレーション / デリバリー)ツールです。
テストやビルド、デプロイなどを 自動化することで、開発効率と品質を向上させることができます。
本記事では、GitHub Actionsの基本概念から、簡単な設定例までを解説します。
GitHub Actionsとは?
GitHub Actionsは、以下のような処理をGitHub上で自動実行できます。
- テストの自動実行
- コードの静的解析(Lint / PHPStan など)
- ビルド処理
- デプロイ作業
代表的な利用シーン
- push時に自動でテストを実行
- Pull Request作成時にチェックを走らせる
- mainブランチへのマージ時に自動デプロイ
GitHub Actionsの基本構成
GitHub Actionsは以下の要素で構成されます。
Workflow(ワークフロー)
- 自動化処理全体の定義
- .github/workflows/*.ymlに記述
Job(ジョブ)
- ワークフロー内の処理単位
- 複数定義可能
Step(ステップ)
- ジョブ内の具体的な処理
- コマンド実行やActionの呼び出し
GitHub Actionsの作成例
ディレクトリ構成
.github/
└── workflows/
└── ci.yml
Workflow例
name: CI Sample
on:
push:
branches:
- main
jobs:
sample-job:
runs-on: ubuntu-latest
steps:
- name: リポジトリをチェックアウト
uses: actions/checkout@v4
- name: Hello World
run: echo "Hello GitHub Actions!"
各設定項目の解説
name
name: CI Sample
GitHub上で表示されるワークフロー名です。
on(トリガー)
on:
push:
branches:
- main
- mainブランチへのpush時に実行
- pull_requestやscheduleも指定可能
jobs / runs-on
runs-on: ubuntu-latest
- 実行環境を指定
- 一般的にはubuntu-latestを使用
steps / uses / run
uses: actions/checkout@v4
- GitHubが提供する公式Action
- リポジトリをrunnerにチェックアウト
run: echo "Hello GitHub Actions!"
- シェルコマンドを実行
よく使われるトリガー例
Pull Request時に実行
on:
pull_request:
複数イベントで実行
on:
push:
pull_request:
実務でよくある例(Laravel)
PHP のテストを実行する例
name: Laravel CI
on:
pull_request:
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: PHP セットアップ
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
- name: Composer install
run: composer install --no-interaction --prefer-dist
- name: テスト実行
run: php artisan test
GitHub Actionsを使うメリット
- 無料枠で十分使える
- GitHubと完全統合
- YAMLだけで設定可能
- チーム全体で品質を担保できる
まとめ
- GitHub Actionsは自動化の第一歩
- 最初は「テストを自動で回す」だけでOK
- 慣れてきたら、Lint・静的解析・デプロイへ拡張