メインコンテンツにジャンプ
製品

Capgo Cloud Buildをご紹介します - 苦労を省くネイティブアプリのビルド

Capacitor アプリをiOSとAndroid用にクラウドでビルドすることができます。Expoと同様に、ローカルのXcodeやAndroid Studioは必要ありません。CLI からアプリストアに直接提出することができます。

マーティン・ドナディュー

マーティン・ドナディュー

コンテンツマーケター

Capgo Cloud Build - ローカル環境やCI/CDインフラを必要とせずにネイティブアプリをクラウドで作成

私たちは大変に嬉しく思っています Capgo Cloud Build - a new way to build your Capacitor apps for iOS and Android directly in the cloud, without the need for local development environments or CI/CD infrastructure.

解決しようとしている問題

ネイティブモバイルアプリを開発することは、ウェブ開発者にとっていつも大きな痛手でした。必要なものは

  • ローカル開発ツール: Xcode (30+ GB)をインストールおよび維持し、Macハードウェア
  • : iOSビルドにはMacが必要であり、これはLinux/Windows CIランナーの場合に高価または不可能ですCI/CDインフラ
  • CI/CD 設定: GitHub の複雑なアクションや他の CI/CD ワークフローを設定することができます。ビルドキャッシュ、クレデンシャル管理、など
  • 依存関係管理: ビルドツール、SDK、証明書を環境間で最新の状態に保つ

そのようなことはすべてスキップできればいいのに

Cloud Build をご紹介します

Cloud Build を使用すると、Capgo の Cloud Build を使用して、アプリをビルドするのは次のようになります:

# First time: Save your credentials locally
npx @capgo/cli@latest build credentials save --platform ios
npx @capgo/cli@latest build credentials save --platform android

# Then build
npx @capgo/cli@latest build com.example.app

Xcode、Android Studio、複雑な CI/CD 設定なしで、単に 1 つのコマンドを実行するだけです。

  1. プロジェクトをローカルに圧縮する
  2. プロジェクトを Capgo のクラウドインフラストラクチャにアップロードする
  3. 保存されたクレデンシャルを使用して、専用のインフラストラクチャでアプリをビルドする
  4. 実時間でターミナルにログをストリーミングする
  5. App Store と Play Store に提出 (設定済みの場合)

How It Works

Capgo Cloud Build を構築するために、Expo EAS Build と同じアプローチを使用しました - Dedicated Cloud Infrastructure です。これにより、すべての複雑さを管理するための専用のクラウドインフラストラクチャが提供されます。

しかし、ここが私たちの違いです: 私たちはこれまでに 3 年間を過ごしました私たちは Capgo の始まりから、クライアント向けにネイティブアプリを構築してきました。私たちは、 Capacitor アプリを信頼性の高いものに構築するために必要なものを学びました。

Our Expertise

過去の 3 年間で、以下のことを実行しました:

  • 私たちは独自の Fastlane システムを構築しました - Capacitor アプリ向けにカスタムの Fastlane 設定を特に最適化しました
  • Capacitor ビルドをマスターしました - Capacitor ビルドの際に重要な点を深く理解しています。プラグインの設定からネイティブ依存関係まで
  • ネイティブ専用に焦点を当てています。 - iOSとAndroidのネイティブ部分のみを構築します (JavaScriptはあなたの側に残します)。あなたのウェブサイトのcodeに触れることはありません。
  • インフラを改良しました。 - 数千の内部ビルドにより、ビルドシステムを改良し、あなたに提供する前に完成させました。

これは新しい実験ではありません。数年間、依存してきた戦闘テストされたインフラをあなたに提供しています。

Android用

Androidビルドは、即時クリーンアップ後に完了した後、安全なCloudflareサンドボックス内で実行されます。アプリはGradleを使用して、Capacitor最適化されたビルドスクリプトでコンパイルされ、署名され、Playストアに提出されます。

iOS用

iOSビルドは、Scaleway Mac miniをオンデマンドでプロビジョニングした専用Macマシン上で実行されます。Fastlaneのカスタム設定を使用します - 数年間のCapacitorビルドを経て改良 - を使用してビルド、署名、TestFlightに提出します。各ビルドは、セキュリティのために隔離されたmacOSユーザーアカウント内で実行され、24時間後に自動的にクリーンアップされます。

リアルタイムログ

他のソリューションとは異なり、ビルドログをあなたのターミナルにリアルタイムでストリーミングします。

  • 依存性のインストール
  • ビルドコンパイル
  • Code署名
  • アプリストアの提出
  • エラーまたは警告

ここが重要な部分です: あなたのログを保存しません。あなたのプライバシーを確保するために、ビルド中のみあなたのCLIセッションを通じて利用できます。

クレデンシャルはどのように機能するか

ビルドする前に、署名クレデンシャルを提供する必要があります。Capgoは、最大限のセキュリティを考慮してこれを取り扱います。

ローカルにクレデンシャルを保存

あなたのマシン上にあなたのクレデンシャルがローカルに保存されます。 ~/.capgo/credentials.json:

# For iOS - provide certificates and provisioning profiles
npx @capgo/cli@latest build credentials save --platform ios \
  --certificate ./path/to/cert.p12 \
  --p12-password "your-password" \
  --provisioning-profile ./path/to/profile.mobileprovision

# For Android - provide keystore and passwords
npx @capgo/cli@latest build credentials save --platform android \
  --keystore ./path/to/keystore.jks \
  --keystore-alias "your-alias" \
  --keystore-key-password "key-password" \
  --keystore-store-password "store-password"

これらのクレデンシャルは Capgoにアップロードされません。 __CAPGO_KEEP_0__にアップロードされることはありません。

ビルドの際に何が起こるか

ビルドコマンドを実行すると

  1. ローカル: CLIは ~/.capgo/credentials.json
  2. アップロード: CapgoサーバーにHTTPS経由で安全にクレデンシャルとプロジェクトを送信します。
  3. ビルド: クレデンシャルはビルドプロセス中のみ使用されます。
  4. クリーンアップ: ビルドが完了した後、Capgoサーバーからクレデンシャルが自動的に削除されます。

セキュリティ保証

あなたの資格情報について保証することはこちらです:

  • 永続的に保存されない - Capgoサーバー上で資格情報は、ビルドがアクティブな間のみ存在します。
  • 自動削除 - ビルドが完了した後すぐに削除されます (ビルドが失敗しても 24 時間以内)
  • ログやアーティファクトなし - ビルドログや、資格情報の痕跡が残る可能性のある IPA/APK ファイルを保存しません
  • 一時環境 - ビルド環境は使用後完全に破棄されます
  • ストアに直接 - アプリは App Store/Play Store に直接配信されます - Capgo はアプリを保管しません

資格情報の管理

__CAPGO_KEEP_0__の保存された資格情報については、完全に管理することができます。

# List saved credentials (passwords masked)
npx @capgo/cli@latest build credentials list

# Clear credentials for a specific platform
npx @capgo/cli@latest build credentials clear --platform ios

# Clear all credentials
npx @capgo/cli@latest build credentials clear

どの資格情報が必要ですか?

iOSの場合:

  • 証明書の作成 (.p12ファイルとパスワード)
  • プロビジョニングプロファイル (.mobileprovisionファイル)
  • オプション: App Store Connect API キー (自動提出用)

Androidの場合:

  • キーストアファイル (.jksまたは.keystore)
  • キーストアのエイリアス
  • キーストアのキーパスワード
  • キーストアのストアパスワード
  • オプション: Google Play サービス アカウント JSON (自動提出用)

詳細なセットアップ手順については、 私たちの クレデンシャル ドキュメント

プライバシー & セキュリティを第一に

クレデンシャル以外にも、ビルド システム全体をプライバシーとセキュリティに意識して設計しました:

  • ログの保存なし: ビルド ログは実行中のターミナルにリアルタイムで Server-Sent Events (SSE) により流れますが、ディスクやデータベースに永続化されることはありません
  • アーティファクトの保存なし: ビルドされた IPA/APK ファイルは、Capgo の保存なしで、ビルド マシンから App Store/Play Store サーバーに直接送られます
  • 自動クリーンアップ:
    • Android: ビルド サンドボックスは即時完了後に破棄されます
    • iOS: Macユーザーアカウントはビルド後にクリーンされ、24時間後にマシンが削除されます
  • 隔離ビルド: iOS各ビルドは、独自のキーチェーンを持つ完全に独立したmacOSユーザーアカウント内で実行されます
  • あなたのCodeプライバシー: ご利用のJavaScript/HTML/CSSは、サーバーに触れずにネイティブパーツのみをビルドします
  • ビルド履歴なし: ご利用のビルド、バージョン、またはビルドメタデータのデータベースは維持されません。ただし、実行中のビルドに必要な情報のみが保持されます

どこでも利用可能

Cloud Buildはどこでも利用可能 - ローカルマシン、GitHub Actions、GitLab CI、またはCI/CDプラットフォームのどれでも

ローカル開発

ローカルマシン上で、クレデンシャルを保存してビルドを実行することができます

# One-time credential setup
npx @capgo/cli@latest build credentials save --platform ios \
  --certificate ./certs/dist.p12 \
  --p12-password "$P12_PASSWORD" \
  --provisioning-profile ./certs/profile.mobileprovision

# Build anytime
npx @capgo/cli@latest build com.example.app --platform ios

CI/CD統合

CI 環境では、次のいずれかを実行できます。

オプション 1: CI で資格情報を保存する (シンプルさのために推奨)

# GitHub Actions example
- name: Save credentials and build
  env:
    CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
    P12_PASSWORD: ${{ secrets.P12_PASSWORD }}
  run: |
    # Decode base64-encoded credentials from secrets
    echo "${{ secrets.IOS_CERTIFICATE_BASE64 }}" | base64 -d > cert.p12
    echo "${{ secrets.PROVISIONING_PROFILE_BASE64 }}" | base64 -d > profile.mobileprovision

    # Save credentials
    npx @capgo/cli@latest build credentials save --platform ios \
      --certificate ./cert.p12 \
      --p12-password "$P12_PASSWORD" \
      --provisioning-profile ./profile.mobileprovision

    # Build
    npx @capgo/cli@latest build com.example.app --platform ios

オプション 2:資格情報をインラインで提供する (高度な使用例のために)

資格情報を環境変数で直接渡すこともできます - 詳細は、 資格情報のドキュメントを参照してください。 Mac ランナーの設定、ビルド キャッシュの管理、CI 環境で SDK のインストールは必要ありません。__CAPGO_KEEP_0__ はすべての処理をクラウドで行います。

No need to configure Mac runners, manage build caches, or install SDKs in your CI environment. Capgo handles all of that in the cloud.

実際に使用したビルド時間に基づいて料金を請求します。

Android ビルド

  • CI 環境では、次のいずれかを実行できます。: 1× __CAPGO_KEEP_0__
  • iOSのビルド: 2× __CAPGO_KEEP_0__ (Mac用ハードウェアのコストのため)

料金は固定されず、使用した分だけ支払います。

あなたのCode、あなたの責任

Capgo Cloud Buildの重要な原則は 私たちはネイティブ部分のみをビルドします.

あなたのJavaScript、HTML、CSSはあなたの側に残します。私たちはあなたのWeb codeを処理、検査、または保存しません。 npm run build あなたはあなたのWebアセットをローカルにビルドする責任があります (あなたの好きなビルドツールを使用して)、私たちはネイティブのコンパイルを取り扱います。

この分離は意図的に行われました

  • より良いセキュリティ - アプリケーションロジックはあなたのコントロールの外には出ません
  • 高速化のビルド - 私たちはあなたのウェブ code の再構築の時間を浪費しません
  • 明確な責任 - あなたはウェブのビルドプロセスを制御し、ネイティブの複雑さを私たちが処理する

ライブアップデートについて

Cloud Build は私たちの既存の ライブアップデートシステムと互換性があります. ここでは、それらがどのように組み合わせられているかを説明します:

  • Cloud Build: ネイティブアプリの変更 (プラグイン、パーミッション、ネイティブ code) が App Store/Play Store のレビューを必要とする場合
  • ライブアップデート: ウェブ code の変更 (HTML、CSS、JavaScript) が即座にデプロイできるようにレビューなしで

Cloud Build を使用するには、プラグインを追加したりネイティブの構成を変更したりするときに、Cloud Build を使用します。Live Update を使用するのは、他のすべての場合です。両方を組み合わせると、可能な限り最速のデプロイワークフローを実現できます。

現在のステータス: 公開ベータ

Cloud Build は現在、 パブリックベータステージです。 まだ誰もが利用できるようになる前に、エクスペリエンスを改善するために、選択されたグループの早期採用者と一緒に働いています。

試してみることが興味がありますか? Discord に参加し、早期テスターとして参加してくれることを願っています! Getting Started

ハッスルなくビルドする準備ができましたか?

Cloud Build ドキュメント を確認して、以下の情報について学びましょう: Cloud Build のドキュメント

次は何を?

現在、以下の機能を開発中です。

  • iOS ビルドの高速化: ビルド時間の短縮のために、依存関係のキャッシュ
  • ビルドアーティファクトの保存: IPA/APK ファイルのダウンロードオプション
  • カスタムビルドスクリプト: プリ/ポストビルドのハックとカスタムFastlaneレーンのサポート
  • ビルドログの履歴: デバッグと監査トレイルのためにログの保存オプション

We’re building Capgo Cloud Build to be the simplest, most developer-friendly way to build native mobile apps. If you have feedback or feature requests, we’d love to hear from you in our Discordコミュニティ.

ハッピービルド!


詳細を見る

Capacitor アプリのリアルタイム更新

ウェブ層のバグが生じた場合、Capgo を使用して修正を配信し、数日間待つ必要のないアプリストアの承認を待つのではなく。ユーザーはバックグラウンドで更新を受け取り、ネイティブの変更は通常のレビュー経路で残ります。

スタートする

ブログの最新記事

Capgo を使用すると、プロフェッショナルなモバイルアプリを作成するために必要な最良の洞察を得ることができます。