GitHub Actions超入門: CI/CDを自動化しよう
🚀 GitHub Actions超入門【初心者向け】
🔰 この記事はこんな人向け!
✅ GitHub Actions を 初めて触る人
✅ CI/CD って何? というレベルの人
✅ まずは「使ってみる」ことを目標にしたい人
「GitHub Actionsって便利らしいけど、何ができるの?」という疑問を持っている方に向けて、基本的な概念・文法・サンプルコード を分かりやすく解説します!
✨ GitHub Actions でできること
GitHub Actions を使うと、以下のようなタスクを自動化できます。
✅ テストの自動化(CI)
✅ コードのフォーマットチェック(lint)
✅ Docker イメージのビルドとプッシュ
✅ 定期実行(cronジョブ)
✅ デプロイの自動化(CD)
例えば、プルリクエストが作成されたらテストを自動実行 したり、main ブランチにマージされたらデプロイ するといったことが可能です。
📜 GitHub Actions の基本構造
GitHub Actions は YAMLファイル で記述します。
GitHub リポジトリの .github/workflows/
フォルダ内に example.yml
を作成します。
📌 基本のサンプル
name: Example Workflow # ワークフローの名前
on: # 実行されるトリガー
push:
branches:
- main # main ブランチに push されたとき
jobs:
example-job:
runs-on: ubuntu-latest # 実行環境
steps:
- name: リポジトリをチェックアウト
uses: actions/checkout@v3 # コードを取得
- name: Node.js をセットアップ
uses: actions/setup-node@v3
with:
node-version: "18"
- name: npm install & test
run: |
npm install
npm test
✅ 実行の流れ
-
main
ブランチに push されたときに実行 - リポジトリのコードを取得
- Node.js をセットアップ
npm install
してテストを実行
🛠️ GitHub Actions の文法
キー | 説明 |
---|---|
name |
ワークフローの名前 |
on |
実行されるトリガー(push、pull_request など) |
jobs |
実行するジョブの定義 |
runs-on |
実行環境(Ubuntu、Windows など) |
steps |
実行するステップ |
uses |
公式 or カスタムのアクションを利用 |
run |
シェルコマンドを実行 |
🔥 追加の便利機能(初心者向け)
1️⃣ 環境変数 & Secrets の活用
環境変数を設定すると、APIキーなどの秘密情報 を安全に扱えます。
jobs:
deploy:
runs-on: ubuntu-latest
env:
APP_ENV: production # 環境変数(通常)
steps:
- name: Secret Key の利用
run: echo "Secret Key is ${{ secrets.API_KEY }}"
🔑 secrets.API_KEY
とは?
- GitHub の
Settings > Secrets and variables > Actions
で設定 -
.env
ファイルを使わなくてもセキュアに管理できる!
2️⃣ Matrix Strategy(複数環境でのテスト)
Node.js や Python のバージョンごとにテストを並列実行できます。
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14, 16, 18]
steps:
- uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm install && npm test
💡 ポイント
✅ Node.js 14, 16, 18 の3つの環境でテストを並列実行!
✅ Python や Ruby でも同じように応用できる!
3️⃣ デバッグの方法(エラー対処法)
GitHub Actions でエラーが発生したときの基本的なデバッグ方法です。
✅ エラーのログを見る
- GitHub のリポジトリの
Actions
タブへ - 失敗したワークフローを開く
- ログを確認し、エラー箇所を特定
✅ デバッグ用のログを出力
ワークフローの途中で echo
を使ってデバッグ情報を表示できます。
steps:
- name: デバッグメッセージ
run: echo "::debug::これはデバッグメッセージです"
✅ 詳細なログを取得
もっと詳細な情報を出すには ACTIONS_RUNNER_DEBUG=true
を設定。
env:
ACTIONS_RUNNER_DEBUG: true
🎯 まとめ
GitHub Actions は、リポジトリのイベントに応じてタスクを自動化できる強力なツールです!
本記事では、基本の文法と初心者向けの便利機能 を紹介しました。
✅ ワークフローの基本(on:
, jobs:
, steps:
)
✅ Secrets を使った安全な環境変数管理
✅ Matrix Strategy で複数環境のテスト
✅ デバッグの基本(エラーログの確認・詳細なログ出力)
💡 まずはサンプルをコピーして動かしてみましょう!🚀
Discussion