🚀expo-cicd-workflows
- プラグイン
- expo
- ライセンス
- MIT License
- ソース
- GitHub で見る ↗
説明
EASワークフローのYAMLファイルをExpoプロジェクト向けに理解・作成するためのサポートを行います。 次のような場合に使用: - ユーザーがExpoまたはEASのコンテキストでCI/CDやワークフローについて質問している - `.eas/workflows/` に言及している - EASビルドパイプラインやデプロイメント自動化に関するサポートを求めている
原文を表示
Helps understand and write EAS workflow YAML files for Expo projects. Use this skill when the user asks about CI/CD or workflows in an Expo or EAS context, mentions .eas/workflows/, or wants help with EAS build pipelines or deployment automation.
ユースケース
- ✓ExpoまたはEASのコンテキストで質問している
- ✓.eas/workflows/に言及している
- ✓EASビルドパイプライン関連のサポート
- ✓デプロイメント自動化のサポート
本文(日本語訳)
EAS Workflows スキル
開発者が EAS CI/CD ワークフロー YAML ファイルを作成・編集するのをサポートします。
リファレンスドキュメント
ワークフローファイルを生成または検証する前に、以下のリソースを取得してください。
まずこのスキルのディレクトリを解決し、その scripts/ ディレクトリ内のフェッチスクリプトを使用します。
スクリプトは Node.js で実装されており、効率化のため ETag を使ったレスポンスキャッシュを行います:
# リソースの取得
node <skill-dir>/scripts/fetch.js <url>
-
JSON スキーマ — https://api.expo.dev/v2/workflows/schema
- このスキーマの取得は 必須 です
- バリデーションの信頼できる唯一の情報源
- すべてのジョブタイプと、その必須・任意パラメーター
- トリガータイプと設定
- ランナータイプ、VM イメージ、各種 enum
-
シンタックスドキュメント — https://raw.githubusercontent.com/expo/expo/refs/heads/main/docs/pages/eas/workflows/syntax.mdx
- ワークフロー YAML シンタックスの概要
- サンプルと説明文
- 式のシンタックスとコンテキスト
-
プリパッケージドジョブ — 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.*— ワークフローのメタデータ
ワークフローの生成
ワークフローを生成または編集する際は、以下の手順に従ってください:
- スキーマを取得して、現在のジョブタイプ・パラメーター・使用可能な値を確認する
- 各ジョブタイプに必須フィールドが含まれているか検証する
needsおよびafterで参照されているジョブがワークフロー内に存在するか確認する- 式が有効なコンテキストと出力を参照しているか確認する
if条件がスキーマの文字数制約を満たしているか確認する
バリデーション
ワークフローファイルを生成または編集した後は、スキーマに対してバリデーションを実行してください:
# 依存関係が未インストールの場合はインストール
[ -d "<skill-dir>/scripts/node_modules" ] || npm install --prefix <skill-dir>/scripts
node <skill-dir>/scripts/validate.js <workflow.yml> [workflow2.yml ...]
バリデーターは最新のスキーマを取得し、YAML 構造をチェックします。 ワークフローが完成したと判断する前に、報告されたエラーをすべて修正してください。
質問への回答
ジョブタイプ・トリガー・ランナータイプなど利用可能なオプションについてユーザーから質問された場合は、 古い情報に依存するのではなく、スキーマを取得してそこから回答を導き出してください。
原文(English)を表示
EAS Workflows Skill
Help developers write and edit EAS CI/CD workflow YAML files.
Reference Documentation
Fetch these resources before generating or validating workflow files. First resolve this skill's directory, then use the fetch script in its scripts/ directory. It is implemented using Node.js and caches responses using ETags for efficiency:
# Fetch resources
node <skill-dir>/scripts/fetch.js <url>
-
JSON Schema — https://api.expo.dev/v2/workflows/schema
- It is NECESSARY to fetch this schema
- Source of truth for validation
- All job types and their required/optional parameters
- Trigger types and configurations
- Runner types, VM images, and all enums
-
Syntax Documentation — https://raw.githubusercontent.com/expo/expo/refs/heads/main/docs/pages/eas/workflows/syntax.mdx
- Overview of workflow YAML syntax
- Examples and English explanations
- Expression syntax and contexts
-
Pre-packaged Jobs — https://raw.githubusercontent.com/expo/expo/refs/heads/main/docs/pages/eas/workflows/pre-packaged-jobs.mdx
- Documentation for supported pre-packaged job types
- Job-specific parameters and outputs
Do not rely on memorized values; these resources evolve as new features are added.
Workflow File Location
Workflows live in .eas/workflows/*.yml (or .yaml).
Top-Level Structure
A workflow file has these top-level keys:
name— Display name for the workflowon— Triggers that start the workflow (at least one required)jobs— Job definitions (required)defaults— Shared defaults for all jobsconcurrency— Control parallel workflow runs
Consult the schema for the full specification of each section.
Expressions
Use ${{ }} syntax for dynamic values. The schema defines available contexts:
github.*— GitHub repository and event informationinputs.*— Values fromworkflow_dispatchinputsneeds.*— Outputs and status from dependent jobsjobs.*— Job outputs (alternative syntax)steps.*— Step outputs within custom jobsworkflow.*— Workflow metadata
Generating Workflows
When generating or editing workflows:
- Fetch the schema to get current job types, parameters, and allowed values
- Validate that required fields are present for each job type
- Verify job references in
needsandafterexist in the workflow - Check that expressions reference valid contexts and outputs
- Ensure
ifconditions respect the schema's length constraints
Validation
After generating or editing a workflow file, validate it against the schema:
# 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 ...]
The validator fetches the latest schema and checks the YAML structure. Fix any reported errors before considering the workflow complete.
Answering Questions
When users ask about available options (job types, triggers, runner types, etc.), fetch the schema and derive the answer from it rather than relying on potentially outdated information.
原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。