GitHub Actions入門|CI/CDパイプラインをゼロから構築する実践ガイド
Skills Boost Infra Academy
GitHub Actions入門|CI/CDパイプラインをゼロから構築する実践ガイド
pushするだけでテスト・デプロイが自動実行される仕組みを現役講師が解説
「CI/CDを使ってみたい」「GitHub Actionsの設定方法がわからない」という方向けに、実際のワークフローファイルをもとに解説します。
吉田たかし|元NWエンジニア・現役IT講師
CCNA/CCNP/LPIC-1/AZ-900取得。14年のインフラエンジニア経験を持つ現役IT講師。CI/CDの研修・構築支援を通じて、初学者がつまずきやすいポイントを把握しています。最小構成から段階的に説明します。
📌 この記事のポイント
✅ GitHub Actionsはリポジトリのイベント(push・PR等)をトリガーに自動でジョブを実行するCI/CDプラットフォーム
✅ ワークフローはYAMLで定義し、.github/workflows/配下に配置するだけで有効化される
✅ 無料枠(public: 無制限、private: 月2,000分)があり小〜中規模なら無料で使える
1. GitHub Actionsの基本構造
name: CI Pipeline
on:
push:
branches: [main]
pull_request:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install deps
run: pip install -r requirements.txt
- name: Run tests
run: pytest2. 主要な設定項目の解説
| 設定キー | 役割 | よく使う値 |
|---|---|---|
| on | トリガーイベント | push / pull_request / schedule |
| runs-on | 実行環境(runner) | ubuntu-latest / windows-latest |
| uses | 公式Actionの利用 | actions/checkout / actions/setup-python |
| run | シェルコマンドの実行 | 任意のbashコマンド |
| env | 環境変数 | APIキー等(secretsを使う) |
| needs | ジョブの依存関係 | 前のジョブ完了後に実行 |
3. インフラエンジニアの活用シーン
Terraformのlint・validate
tfファイルのpush時にterraform validate・tflintを自動実行してミスを事前検知
EC2/ECSへの自動デプロイ
mainへのマージ時にAWS CLIでデプロイを自動実行。AWS_ACCESS_KEY_IDはsecretsに保存
Ansibleのシンタックスチェック
ansible-lint・syntax-checkを自動実行して構成ファイルの品質を維持
Slack通知
ジョブ成功/失敗をSlackに自動通知してチームへの共有を自動化
※ GitHub Actionsの料金・仕様・Action名はGitHubにより変更される場合があります。公式ドキュメントをご確認ください。



