本文へスキップ
BecomeCoder

Gitコース · 第5章 CI/CD と GitHub Actions · レッスン26

GitHub Actions の構造

ローカル実施

導入

GitHub には CI/CD の仕組みが標準で組み込まれています。それが GitHub Actionsリポジトリ.github/workflows/ に YAML ファイルを置くと、それが「ワークフロー」として自動で動きます。まずは全体の骨格=用語の階層 を押さえます。

説明

ワークフロー YAML は次の階層でできています。

flowchart TD
    W["workflow(ファイル1つ)"] --> J1["job: build"]
    W --> J2["job: deploy"]
    J1 --> S1["step: チェックアウト"]
    J1 --> S2["step: 依存インストール"]
    J1 --> S3["step: テスト実行"]

最小のワークフローを読んでみましょう。行の意味をコメントで添えます。

name: CI                     # ワークフローの表示名

on: [push]                   # いつ動かすか(push されたら)

jobs:                        # 実行する仕事の集まり
  build:                     # job の名前(自由に付けられる)
    runs-on: ubuntu-latest   # どのOSの仮想マシンで動かすか
    steps:                   # 上から順に実行する手順
      - uses: actions/checkout@v4   # リポジトリのコードを取り出す
      - run: echo "Hello, CI!"      # シェルコマンドを1つ実行

覚える言葉は4つだけです。

用語意味
onいつ 動かすか(トリガー)。pushpull_request など
jobs何を するか。仕事の集まり。既定では並行に動く
runs-onどこで 動かすか。仮想マシンOS
stepsjob の中で 順番に 実行する手順

steps の各行は2種類あります。uses:公開された部品(アクション)を呼ぶ(例:actions/checkout@v4 はコードの取り出し)、run:シェルコマンドを直接実行 します。

まとめ

  • 置き場所は .github/workflows/*.yml
  • 階層は workflow → jobs → steps。
  • on=いつ / jobs=何を / runs-on=どこで / steps=順番に。
  • step は uses(部品)か run(コマンド)。