mcpField
L
ln-732-cicd-generator

ln-732-cicd-generator

github.com/levnikolaevichクラウド・DevOps584384 回インストール2 日前に更新
リポジトリ

ln-732-cicd-generator について

.NET または Python のプロジェクト向けに、GitHub Actions の CI ワークフローを生成するスキルです。フロントエンドや Docker のジョブも含められ、生成した YAML を検証します。デプロイや CD の設定は対象外です。

主な機能

  1. 01.NET または Python のスタック検出
  2. 02フロントエンドのコマンドとバージョン検出
  3. 03`.github/workflows/ci.yml` の生成
  4. 04lint、ビルド、テスト、Docker のジョブ
  5. 05YAML 検証と上書き前の警告

活用シーン

  1. 01.NET プロジェクトの CI 設定
  2. 02Python の lint・テスト用ワークフロー作成
  3. 03パイプラインへのフロントエンド検査追加

インストール

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

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-732-cicd-generator

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
github_ci_dotnet.template.yml
github_ci_python.template.yml
github_ci.template.yml

詳細

パス: ファイルパス(references/、../ln-*)はこのスキルディレクトリからの相対パスです。

ln-732-cicd-generator

種類: L3 Worker カテゴリー: 7XX Project Bootstrap

自動テストと検証のための GitHub Actions CI パイプラインを生成します。


目的と範囲

GitHub 用の CI/CD ワークフローを作成します。

  • 実行すること: lint、test、build、docker のジョブを含む .github/workflows/ci.yml を生成します
  • 実行しないこと: デプロイの設定、シークレットの管理、CD パイプラインのセットアップ

入力

入力ソース説明
スタックの種類ln-730 coordinatorbackend-dotnet、backend-python
バージョン自動検出Node.js、.NET、または Python のバージョン
フロントエンドのパス自動検出フロントエンドディレクトリのパス
ビルドコマンド自動検出npm スクリプト、dotnet/pytest コマンド

出力

ファイル目的テンプレート
.github/workflows/ci.ymlメインの CI パイプラインgithub_ci_dotnet.template.yml または github_ci_python.template.yml

ワークフロー

フェーズ 1:スタック分析

使用するテンプレートを特定します。

検出条件バックエンドテンプレート
.sln または .csproj が存在github_ci_dotnet.template.yml
requirements.txt または pyproject.toml が存在github_ci_python.template.yml

コマンドを検出します。

  • フロントエンド:package.json からスクリプト(lint、build、test)を読み取ります
  • .NET:標準の dotnet restore/build/test
  • Python:pip install、ruff lint、pytest
フェーズ 2:変数の置換

テンプレート変数を置換します。

変数ソースデフォルト
{{NODE_VERSION}}package.json engines22
{{DOTNET_VERSION}}*.csproj TargetFramework9.0.x
{{PYTHON_VERSION}}pyproject.toml3.12
{{FRONTEND_PATH}}ディレクトリ検出src/frontend
フェーズ 3:ディレクトリの作成

.github/workflows/ ディレクトリが存在しない場合は作成します。

フェーズ 4:ファイルの生成

選択したテンプレートから ci.yml を生成します。

  1. ワークフローがすでに存在するか確認します(上書き前に警告します)
  2. 変数を置換します
  3. .github/workflows/ci.yml に書き込みます
  4. YAML 構文を検証します

生成されるパイプラインの構成

ジョブの概要
ジョブ目的依存関係
frontendReact/Vite の lint、build、testなし
backend.NET または Python の build、testなし
dockerイメージのビルド、ヘルスチェックfrontend、backend
フロントエンドのジョブ手順
  1. コードをチェックアウトします
  2. キャッシュを有効にして Node.js をセットアップします
  3. 依存関係をインストールします(npm ci)
  4. リンターを実行します(npm run lint)
  5. アプリケーションをビルドします(npm run build)
  6. テストを実行します(npm test)
バックエンドのジョブ手順(.NET)
  1. コードをチェックアウトします
  2. .NET SDK をセットアップします
  3. 依存関係を復元します(dotnet restore)
  4. ビルドします(dotnet build)
  5. テストを実行します(dotnet test)
バックエンドのジョブ手順(Python)
  1. コードをチェックアウトします
  2. pip キャッシュを有効にして Python をセットアップします
  3. 依存関係をインストールします(pip install -r requirements.txt)
  4. リンターを実行します(ruff check)
  5. テストを実行します(pytest)
Docker ジョブの手順
  1. コードをチェックアウトします
  2. イメージをビルドします(docker compose build)
  3. コンテナーを起動します(docker compose up -d)
  4. 起動を待ちます(30 秒)
  5. フロントエンドのヘルスチェックを行います(ポート 3000)
  6. バックエンドのヘルスチェックを行います(ポート 5000/8000)
  7. 失敗時にログを表示します
  8. コンテナーを停止します(docker compose down)

トリガー

イベントブランチ
Pushmain、develop
Pull Requestmain

適用されるベストプラクティス

プラクティス実装
依存関係のキャッシュnpm cache、pip cache
バージョンの固定actions/checkout@v4、setup-node@v4
ジョブの並列実行frontend と backend を並列実行します
迅速な失敗検出docker ジョブは両方のジョブの成功を待ちます
クリーンアップdocker compose down を常に実行します
デバッグのサポート失敗時にログを表示します

品質基準

生成されるワークフローは、次の条件を満たす必要があります。

  • YAML 構文の検証に合格する
  • 固定されたアクションのバージョンを使用する(@latest は不可)
  • 依存関係のキャッシュを含める
  • docker ジョブのヘルスチェックを含める
  • 完了時にリソースをクリーンアップする

重要な注意事項

  1. GitHub Actions のみ:このスキルが生成するのは GitHub Actions のワークフローのみです。Azure/GitLab はサポートされません。
  2. テンプレートベース:references/ のテンプレートを使用してください。ワークフローの内容をハードコードしないでください。
  3. 冪等性:.github/workflows/ が存在するか確認してください。ci.yml を上書きする前に警告してください。
  4. バージョン検出:ハードコードされたデフォルトではなく、検出されたバージョンを使用してください。

参照ファイル

ファイル用途
github_ci.template.ymlコメント付きの完全なテンプレート
github_ci_dotnet.template.ymlコンパクトな .NET スタックテンプレート
github_ci_python.template.ymlコンパクトな Python スタックテンプレート

完了の定義

  • .github/workflows/ci.yml が生成され、YAML 検証に合格している
  • パイプラインに lint、build、test、docker の各ジョブが含まれている
  • すべてのアクションのバージョンが固定されている(@latest は不可)

バージョン: 1.1.0 最終更新日: 2026-01-10

コメント