mcpField
E
expo-cicd-workflows

expo-cicd-workflows

github.com/expoクラウド・DevOps3.5k39.2k 回インストール今日更新
リポジトリ

expo-cicd-workflows について

EAS CI/CDワークフローのYAMLファイルを作成、編集するためのスキルです。最新のワークフローSchemaとドキュメントを取得し、Schemaに基づいてファイルを検証します。

主な機能

  1. 01ワークフローYAMLの作成と編集
  2. 02最新のJSON Schemaとドキュメント取得
  3. 03ジョブのパラメーターと参照の確認
  4. 04式のコンテキストと条件の確認
  5. 05Schemaに基づくワークフロー検証

活用シーン

  1. 01EAS CI/CDワークフローの作成
  2. 02最新Schemaに沿ったワークフロー更新
  3. 03ジョブ依存関係と式の確認
  4. 04ワークフローYAML構造の検証

インストール

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

$npx skills add https://github.com/expo/skills --skill expo-cicd-workflows

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

同梱ファイル

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

agents/
openai.yaml
scripts/
fetch.js
package.json
validate.js

詳細

EAS ワークフローのスキル

開発者が EAS CI/CD ワークフローの YAML ファイルを作成、編集できるよう支援します。

リファレンスドキュメント

ワークフローファイルを生成または検証する前に、以下のリソースを取得してください。まずこのスキルのディレクトリを特定し、その scripts/ ディレクトリにある取得スクリプトを使用します。スクリプトは Node.js で実装されており、ETag を使用して効率的にレスポンスをキャッシュします。

# Fetch resources
node <skill-dir>/scripts/fetch.js <url>
  1. JSON スキーマ — https://api.expo.dev/v2/workflows/schema

    • このスキーマの取得は必須です
    • 検証の信頼できる情報源です
    • すべてのジョブタイプと、必須および任意のパラメーター
    • トリガータイプと設定
    • ランナータイプ、VM イメージ、およびすべての列挙値
  2. 構文ドキュメント — https://raw.githubusercontent.com/expo/expo/refs/heads/main/docs/pages/eas/workflows/syntax.mdx

    • ワークフロー YAML 構文の概要
    • 例と英語での説明
    • 式の構文とコンテキスト
  3. パッケージ済みジョブ — https://raw.githubusercontent.com/expo/expo/refs/heads/main/docs/pages/eas/workflows/pre-packaged-jobs.mdx

    • サポートされているパッケージ済みジョブタイプのドキュメント
    • ジョブ固有のパラメーターと出力

新機能の追加に伴い、これらのリソースは更新されるため、記憶している値に頼らないでください。

ワークフローファイルの場所

ワークフローは .eas/workflows/*.yml(または .yaml)に配置します。

トップレベルの構造

ワークフローファイルには、次のトップレベルキーがあります。

  • name — ワークフローの表示名
  • on — ワークフローを開始するトリガー(少なくとも 1 つ必須)
  • jobs — ジョブ定義(必須)
  • defaults — すべてのジョブに共通するデフォルト値
  • concurrency — ワークフローの並列実行を制御します

各セクションの完全な仕様については、スキーマを参照してください。

式

動的な値には ${{ }} 構文を使用します。スキーマで利用可能なコンテキストが定義されています。

  • github.* — GitHub リポジトリとイベントの情報
  • inputs.* — workflow_dispatch 入力の値
  • needs.* — 依存するジョブの出力とステータス
  • jobs.* — ジョブの出力(代替構文)
  • steps.* — カスタムジョブ内のステップ出力
  • workflow.* — ワークフローのメタデータ

ワークフローの生成

ワークフローを生成または編集する際は、次の手順に従います。

  1. スキーマを取得し、最新のジョブタイプ、パラメーター、許可される値を確認します
  2. 各ジョブタイプに必須フィールドが指定されていることを検証します
  3. needs と after 内のジョブ参照がワークフローに存在することを確認します
  4. 式が有効なコンテキストと出力を参照していることを確認します
  5. if 条件がスキーマの長さ制限を満たしていることを確認します

検証

ワークフローファイルを生成または編集した後、スキーマに照らして検証します。

# Install dependencies if missing
[ -d "<skill-dir>/scripts/node_modules" ] || npm install --prefix <skill-dir>/scripts

node <skill-dir>/scripts/validate.js <workflow.yml> [workflow2.yml ...]

バリデーターは最新のスキーマを取得し、YAML の構造をチェックします。ワークフローを完成と見なす前に、報告されたエラーをすべて修正してください。

質問への回答

ユーザーが利用可能なオプション(ジョブタイプ、トリガー、ランナータイプなど)について尋ねた場合は、古くなっている可能性のある情報に頼らず、スキーマを取得して回答を導き出してください。

コメント