mcpField
G
github-actions-templates

github-actions-templates

github.com/sickn33クラウド・DevOps48.7k408 回インストール1 日前に更新
リポジトリ

github-actions-templates について

既存リポジトリ向けの GitHub Actions ワークフローを設計・レビューするスキルです。テスト、対応環境のマトリックス、成果物の公開、許可されたデプロイを扱い、検証とワークフローの安全性を重視します。

主な機能

  1. 01テストワークフローのパターン
  2. 02対応ランタイムのビルドマトリックス
  3. 03成果物公開の境界設定
  4. 04保護されたデプロイの指針
  5. 05ワークフローの安全性確認

活用シーン

  1. 01既存リポジトリへの CI テスト追加
  2. 02対応 OS とランタイムの組み合わせテスト
  3. 03信頼された公開処理と検証の分離
  4. 04デプロイとロールバック対策のレビュー

インストール

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

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill github-actions-templates

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

同梱ファイルreferences/common-workflows.mdresources/implementation-playbook.md

詳細

GitHub Actions ワークフローパターン

使用する場面

既存のリポジトリに対して、テスト、マトリックスビルド、アーティファクトの準備、または明示的に承認されたデプロイワークフローを実装します。

入力

リポジトリの実際のスクリプト、ロックファイル、サポート対象ランタイム、必要なチェック名、リリースポリシーを確認します。ジョブの境界を決める前に、resources/implementation-playbook.md と references/common-workflows.md を読んでください。

テストワークフロー

この Node の例は、対象リポジトリが npm test を宣言し、Node 22 をサポートしていることを前提としています。ランタイムとコマンドは実際のプロジェクトに合わせて調整してください。固定されたアクションのリビジョンは明示的なレビュー対象です。テンプレートを採用または更新する前に検証してください。

name: Test
on:
  pull_request:
  push:
    branches: [main]
permissions:
  contents: read
jobs:
  test:
    runs-on: ubuntu-latest
    timeout-minutes: 15
    steps:
      - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
        with:
          persist-credentials: false
      - uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
        with:
          node-version: '22'
          cache: npm
      - run: npm ci
      - run: npm test

マトリックスビルド

マトリックスは、プロジェクトがサポートするバージョンとオペレーティングシステムに対してのみ追加します。依存関係を再現可能に保ち、失敗する組み合わせを特定し、包括的な continue-on-error で失敗を隠さないようにしてください。ジョブが条件付きでスキップされる場合の必須チェックの動作をテストします。

ビルドと公開

テスト済みのコミットからアーティファクトをビルドし、その識別情報を記録します。公開には、最小限のレジストリ権限を持つ別の信頼されたジョブが必要です。特権コンテキストで任意の信頼できないコードによって生成されたアーティファクトを公開しないでください。受け入れられたアーティファクトは、その正確なソースと生成元のワークフローに紐付けてください。

デプロイ

プロジェクトの保護されたリリースパスを使用します。デプロイコマンドを追加する前に、不変のアーティファクト、宛先、ワークロード ID、ロールアウトとロールバックのチェックを特定します。名前付きの GitHub 環境はレビュアーを自動的に構成するものではありません。その実際の保護設定を確認してください。プレースホルダーの echo コマンドをデプロイ成功と見なさないでください。

検証

トピックブランチで、成功する変更を 1 つと、意図的に失敗するテストを 1 つ実行します。失敗したチェックが下流の公開を妨げることを確認します。トークン、ランナーの分離、キャッシュ、アーティファクトの境界を確認します。信頼できない検証ジョブに本番環境の認証情報を置かないでください。

例

プロジェクトが Linux と Windows のテストを必要としているとします。サポート対象のランタイムを選択し、2 つのランナーの組み合わせを追加して、どちらかの失敗が必須の結果をブロックすることを確認します。公開は別途準備し、マトリックスにレジストリの認証情報を追加しないでください。

制限事項

このスキルはパターンを提供するものであり、インストール済みのデプロイプログラムではありません。リポジトリのポリシー、ランナーの信頼性、環境設定を確認する必要があります。すべてのサードパーティアクションを完全なコミット SHA でレビューし、ログとアップロードされたアーティファクトをデータ漏えいの可能性がある経路として扱ってください。

出典

コメント