mcpField
G
github-actions-workflows

github-actions-workflows

github.com/nickcrewクラウド・DevOps6265 回インストール17 週間前に更新
リポジトリ

github-actions-workflows について

GitHub Actions の CI/CD ワークフローの設計、セキュリティ、最適化、トラブルシューティングを支援するスキルです。パイプラインを構築・保守する開発者向けに、マトリックスビルドや再利用可能なワークフロー、キャッシュ、デプロイ制御を扱います。

主な機能

  1. 01マトリックスビルドと再利用可能なワークフロー
  2. 02シークレットと権限の設定指針
  3. 03依存関係とビルド成果物のキャッシュ
  4. 04デプロイゲートと並行実行制御
  5. 05ワークフローのデバッグと保守

活用シーン

  1. 01GitHub Actions の CI/CD パイプライン構築
  2. 02複数環境でのテスト
  3. 03遅い実行や重複実行の削減
  4. 04デプロイワークフローの保護

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nickcrew/claude-cortex --skill github-actions-workflows

インストール後、Claude Code で/github-actions-workflowsを入力して読み込まれたか確認します。

同梱ファイルreferences/workflow-patterns.md

詳細

GitHub Actions ワークフロー

マトリックスビルド、再利用可能なワークフロー、キャッシュ、デプロイの自動化に関するパターンを活用し、信頼性、安全性、パフォーマンスに優れた GitHub Actions CI/CD パイプラインを設計するための専門的なガイダンスです。

このスキルを使用する場面

  • GitHub Actions を使って CI/CD パイプラインをゼロから構築するとき
  • 遅い、またはコストの高い GitHub Actions ワークフローを最適化するとき
  • 複数環境のテスト向けにマトリックスビルドを実装するとき
  • DRY なパイプラインを実現するため、再利用可能なワークフローとコンポジットアクションを作成するとき
  • 環境間でシークレットを安全に管理するとき
  • 依存関係やビルド成果物を再利用するキャッシュを設定するとき
  • ステージング環境と本番環境の承認ゲートを備えたデプロイワークフローを設定するとき
  • 失敗する、または不安定なワークフロー実行をデバッグするとき
  • 重複実行を防ぐための同時実行制御を実装するとき

クイックリファレンス

タスクリファレンスを読み込む
マトリックスビルド、再利用可能なワークフロー、キャッシュ、デプロイ、同時実行skills/github-actions-workflows/references/workflow-patterns.md

基本原則

  • ジョブを構造化する:明確に分離されたジョブにワークフローを分割し、依存関係を定義します
  • DRY な設定:重複を避けるため、再利用可能なワークフローとコンポジットアクションを使用します
  • セキュリティを最優先する:GitHub シークレット、OIDC、必要最小限の権限を使用します
  • 積極的にキャッシュする:依存関係、ビルド出力、テスト用フィクスチャをキャッシュします
  • トリガーを慎重に設定する:不要なワークフロー実行を避けるよう、イベントトリガーを設定します
  • ワークフローを文書化する:分かりにくい YAML 設定には説明コメントを追加します

ワークフロー

1. 設計

YAML を書く前に、パイプラインの構成を計画します。

  • トリガーイベント(push、pull_request、schedule、workflow_dispatch)を特定します
  • ジョブの依存関係と、並列実行できるジョブを整理します
  • キャッシュできる対象(依存関係、ビルド出力)を特定します
  • 環境の昇格手順(dev、staging、production)を計画します
2. 実装

パイプラインを段階的に構築します。

  • 最小限のワークフローから始め、徐々に複雑さを加えます
  • 複数環境のテストにはマトリックスビルドを使用します
  • 共通パターンは再利用可能なワークフローに切り出します
  • 環境保護を設定してシークレット管理を構成します
3. 最適化

実行時間とコストを削減します。

  • ワークフローの所要時間を分析し、ボトルネックを特定します
  • 依存関係とビルド成果物のキャッシュを追加します
  • 同時実行制御を使って、重複する実行をキャンセルします
  • 影響を受けないワークフローをスキップするため、パスフィルターを設定します
4. メンテナンス

ワークフローを継続的に健全な状態に保ちます。

  • セキュリティのため、アクションのバージョンを特定の SHA に固定します
  • アクションを定期的に見直し、更新します
  • ワークフローの実行時間の推移とコストを監視します
  • マージ前にワークフローの変更を相互レビューします

よくある間違い

  • SHA またはバージョンタグに固定せず、actions/checkout@main を使用する
  • permissions ブロックを設定しない(デフォルトでは過度に広い読み書き権限が付与されます)
  • パッケージマネージャーのキャッシュディレクトリではなく、node_modules をキャッシュする
  • concurrency グループを設定しないため、デプロイが重複する
  • GitHub Secrets を使用せず、ワークフローファイルにシークレットを直接記述する
  • パスフィルターを使わず、すべての push でテストスイート全体を実行する
  • リポジトリ間で CI ロジックを共有するために workflow_call を使用しない

コメント