🚀

GitHub Actions超入門: CI/CDを自動化しよう

2024/12/10に公開

🚀 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

✅ 実行の流れ

  1. main ブランチに push されたときに実行
  2. リポジトリのコードを取得
  3. Node.js をセットアップ
  4. 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 でエラーが発生したときの基本的なデバッグ方法です。

エラーのログを見る

  1. GitHub のリポジトリの Actions タブへ
  2. 失敗したワークフローを開く
  3. ログを確認し、エラー箇所を特定

デバッグ用のログを出力
ワークフローの途中で echo を使ってデバッグ情報を表示できます。

steps:
  - name: デバッグメッセージ
    run: echo "::debug::これはデバッグメッセージです"

詳細なログを取得
もっと詳細な情報を出すには ACTIONS_RUNNER_DEBUG=true を設定。

env:
  ACTIONS_RUNNER_DEBUG: true

🎯 まとめ

GitHub Actions は、リポジトリのイベントに応じてタスクを自動化できる強力なツールです!
本記事では、基本の文法と初心者向けの便利機能 を紹介しました。

ワークフローの基本(on:, jobs:, steps:
Secrets を使った安全な環境変数管理
Matrix Strategy で複数環境のテスト
デバッグの基本(エラーログの確認・詳細なログ出力)

💡 まずはサンプルをコピーして動かしてみましょう!🚀

Discussion