expo-deployment について
expo-deploymentは、Expoアプリ開発者向けのEASデプロイガイドです。iOS、Android、Webのビルドやストア提出、ホスティングに加え、自動リリースとバージョン管理も扱います。
主な機能
- 01iOSとAndroidアプリのビルド
- 02アプリストアへの提出
- 03EAS HostingによるWebデプロイ
- 04EAS Workflowsによるリリース自動化
- 05バージョン管理とビルド状況の確認
活用シーン
- 01iOSアプリストア向けビルドの準備
- 02Android版のGoogle Playへの提出
- 03PR向けWebプレビューのデプロイ
- 04プッシュ起点の継続リリース設定
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ midudev/ autoskills --skill expo-deploymentインストール後、Claude Code で/expo-deploymentを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/app-store-metadata.mdios-app-store.mdplay-store.mdtestflight.mdworkflows.md詳細
デプロイ
このスキルでは、EAS(Expo Application Services)を使用して、あらゆるプラットフォームに Expo アプリケーションをデプロイする方法を説明します。
参考資料
必要に応じて、以下の資料を参照してください。
- ./references/workflows.md -- デプロイと PR プレビューを自動化する CI/CD ワークフロー
- ./references/testflight.md -- ベータテスト用の iOS ビルドを TestFlight に提出する方法
- ./references/app-store-metadata.md -- App Store のメタデータと ASO の最適化を管理する方法
- ./references/play-store.md -- Android ビルドを Google Play Store に提出する方法
- ./references/ios-app-store.md -- iOS App Store への提出と審査のプロセス
クイックスタート
EAS CLI をインストールする
npm install -g eas-cli
eas login
EAS を初期化する
npx eas-cli@latest init
これにより、ビルドプロファイルを含む eas.json が作成されます。
ビルドコマンド
本番ビルド
# iOS App Store build
npx eas-cli@latest build -p ios --profile production
# Android Play Store build
npx eas-cli@latest build -p android --profile production
# Both platforms
npx eas-cli@latest build --profile production
ストアに提出する
# iOS: Build and submit to App Store Connect
npx eas-cli@latest build -p ios --profile production --submit
# Android: Build and submit to Play Store
npx eas-cli@latest build -p android --profile production --submit
# Shortcut for iOS TestFlight
npx testflight
Web のデプロイ
EAS Hosting を使用して Web アプリをデプロイします。
# Deploy to production
npx expo export -p web
npx eas-cli@latest deploy --prod
# Deploy PR preview
npx eas-cli@latest deploy
EAS の設定
本番環境へのデプロイに使用する標準の eas.json:
{
"cli": {
"version": ">= 16.0.1",
"appVersionSource": "remote"
},
"build": {
"production": {
"autoIncrement": true,
"ios": {
"resourceClass": "m-medium"
}
},
"development": {
"developmentClient": true,
"distribution": "internal"
}
},
"submit": {
"production": {
"ios": {
"appleId": "[email protected]",
"ascAppId": "1234567890"
},
"android": {
"serviceAccountKeyPath": "./google-service-account.json",
"track": "internal"
}
}
}
}
プラットフォーム別ガイド
iOS
- すばやく TestFlight に提出するには
npx testflightを使用します eas credentialsで Apple の認証情報を設定します- 認証情報の設定方法については、./reference/testflight.md を参照してください
- App Store への提出については、./reference/ios-app-store.md を参照してください
Android
- Google Play Console のサービスアカウントを設定します
- トラックを設定します:内部 → クローズド → オープン → 本番
- 詳細な設定方法については、./reference/play-store.md を参照してください
Web
- EAS Hosting は PR 用のプレビュー URL を提供します
- 本番環境へのデプロイ先はカスタムドメインです
- CI/CD の自動化については、./reference/workflows.md を参照してください
デプロイの自動化
CI/CD には EAS Workflows を使用します。
# .eas/workflows/release.yml
name: Release
on:
push:
branches: [main]
jobs:
build-ios:
type: build
params:
platform: ios
profile: production
submit-ios:
type: submit
needs: [build-ios]
params:
platform: ios
profile: production
その他のワークフロー例については、./reference/workflows.md を参照してください。
バージョン管理
EAS は appVersionSource: "remote" を使用して、バージョン番号を自動的に管理します。
# Check current versions
eas build:version:get
# Manually set version
eas build:version:set -p ios --build-number 42
モニタリング
# List recent builds
eas build:list
# Check build status
eas build:view
# View submission status
eas submit:list
コメント
Markdown 対応