変更要約: 本文を拡充(図解を追加)
5.1GitHub Actions と自動化
GitHub Actions は、CI/CD をはじめとする作業を自動化するワークフロー基盤です。
■ CI/CD とは ・CI(継続的インテグレーション)=変更を頻繁に統合し、自動ビルド・テストで問題を早期に検出する。 ・CD(継続的デリバリー/デプロイ)=リリース可能な状態を保ち、配布やデプロイを自動化する。
■ ワークフローの構造(下図)
ワークフローは .github/workflows フォルダに YAML で定義します。on キーで起動イベント(push / pull_request / schedule(cron 定期)/ workflow_dispatch(手動)など)を指定します。階層は「ワークフロー > ジョブ > ステップ」で、ジョブはランナー(runner)上で実行されます。ランナーには GitHub が用意・管理する GitHub ホステッドランナーと、自社で用意・管理するセルフホステッドランナーがあります。needs: でジョブの実行順序(依存)を表せます。
■ よく使う機能
・Secrets=API キーなどの秘密を暗号化して保存し、${{ secrets.NAME }} で参照します(ログにはマスクされます)。
・Artifacts=ビルド成果物(テストレポートやバイナリ等)を保存・共有します。
・matrix=複数の OS/言語バージョンの組み合わせでジョブを並列実行します。
・Environments=デプロイ先(staging/production 等)ごとに必須レビュアーや待機時間などの保護を設定します。
・reusable workflows(workflow_call)=共通のワークフローを定義して使い回します。
公開された再利用可能な Action は GitHub Marketplace から探し、uses: で取り込めます(バージョンを固定すると安全)。
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. GitHub Actions のワークフローの正しい階層はどれですか?
Q2. ワークフローの起動イベントを指定するキーはどれですか?

