Skip to main content
CI/CD

Codemagicを使用した自動Capacitor IOSビルド

CodemagicとCodemagicを使用した5分でIOS IonicアプリのCI/CDパイプラインの設定方法(2024年)

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

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

コンテンツマーケター

Codemagicを使用した自動Capacitor IOSビルド

Codemagicを使用したiOSの継続的デリバリー

前提条件

このチュートリアルに進む前に…

  • iOS開発者プログラムの会員資格.
  • 読みたい欲求…😆…

価格について重要な点

価格: Codemagic アクション

https://codemagic.io/pricing/

サービスは ‘無料’ 月に 500 分の macOS M1 分数 / 月、選択したマシンに応じて、
このチュートリアルで使用するのは macOS M1 マシンです。スクリーンショットに表示されている価格と制限 (価格はチュートリアルの作成時点のもので、将来の変更に応じて異なる場合があります) を確認できます。 要件と価格について注意した後、続ける場合はどうですか?… このチュートリアルでは、iTunes Connect でアプリを作成し、Apple エコシステムの証明書を所有していることを前提としています。Codemagic で設定が完了していることを前提としています!

🔴 価格

📣 https://codemagic.io/pricing/

Let's dive in 🤿

ブログ記事の手順

  1. Using App Store Connect API with Codemagic
  2. 必要な条件
  3. Capacitor iOS ビルドの自動化のために Codemagic を使用する際に、App Store Connect の API キーを作成します。
  4. App Store ConnectのAPIキーを使用します。
  5. ファストレーンファイルをコピー
  6. Codemagicを設定する

1. App Store Connect API を Codemagic で使用します。

2021年2月以降、すべてのユーザーはApp Store Connectにサインインするために2要素認証または2段階認証が必要です。この追加のセキュリティ層は、Apple IDのアクセスをあなただけが行うことを保証するのに役立ちます。
From Apple サポート

matchを始めるには、既存の証明書を取り消す必要があります。ただし、心配する必要はありません。新しい証明書は直接取得できます。

要件

App Store Connect API を使用するには、Codemagic が必要なのは 3 つ 発行者 ID

  1. キー ID
  2. キー ファイルまたはキー コンテンツ
  3. App Store Connect __CAPGO_KEEP_0__ キーの作成

Creating an App Store Connect API Key

1 — App Store Connect にログインする

__CAPGO_KEEP_0__ __CAPGO_KEEP_0__.

2 — 選択 ユーザーとアクセス.

App Store Connect ユーザー アクセス

3 — API キーのタブを選択してください。

App Store Connect API キー

4 — API キーを生成するか、または (+) ボタンをクリックしてください。

App Store Connect API キーを作成

5 — キーの名前を入力し、アクセス権を選択してください。Apple Developer Program のロールパーミッションについて詳しくはこちらを参照してください。 App Manager App Store Connect __CAPGO_KEEP_0__ キーを作成 6 — 生成をクリックしてください。

App Store Connect API keys create name

App Store Connect user access

CapgoのAPIキーは、特定のアプリにアクセス制限することができません。

新しいキー名、キーID、ダウンロードリンク、他に関する情報がページに表示されます。

App Store Connectダウンロードキー

必要な情報をすべてここで取得してください: <1> Issue ID。
<2> Key ID。
<3> API キーをダウンロードするには、「API 私有キーをダウンロード」ボタンをクリックしてください。ダウンロードリンクは、プライベートキーがまだダウンロードされていない場合にのみ表示されます。Appleはプライベートキーを保管していないため、ダウンロードすることができます。ただし、プライベートキーは一度だけダウンロードできます。

🔴 プライベートキーを安全な場所に保存してください。キーを共有しないでください、キーをcode リポジトリに保存しないでください、またはクライアントサイドのcode に含めないでください。

CapgoのApp Store Connect API キーをCodemagicに追加する

  1. Codemagicチームの設定を開いてください。 チーム統合を選択してください。 チームを開いてください。 Capgoのcode署名IDを選択してください。 Select code による署名の ID を選択 証明書をアップロードしてください 証明書をアップロード

  2. ボタンをクリック キーを追加 ボタン。

  3. キー名を入力してください。キー名は、後でアプリケーション設定でキーを参照するときに使用されます。 App Store Connect API key nameキー名と値を入力してください。

  4. ボタンをクリックしてください。 Issuer ID ボタンをクリックしてください。 Key ID ボタンをクリックしてください。

  5. ボタンをクリックしてください。 iOS用の.p8ファイルを選択してください または、App Store ConnectのAPIキーをダウンロードしたものをアップロードするには、ファイルをドラッグしてください。

  6. クリック 保存.

Now we can manage Codemagic with the App Store Connect API key, great!

App Store Connectの__CAPGO_KEEP_0__キーを使用してCodemagicを管理できるようになりました。すばらしい!

2. 証明書とプロビジョニングプロファイルを作成する

証明書 XCodeを開き、 設定 &gt; &gt; Apple ID > Teams チームを選択してください。

Code signing identities

Click on 証明書を管理 > + と選択 Apple Distribution.

Apple Distribution

すると、新しい証明書を作成できます。

次に、キーチェーンに移動して証明書をダウンロードする必要があります。 .p12 __CAPGO_KEEP_0__。

証明書をダウンロードするには、キーチェーンに移動し、ログインキーチェーンに切り替え、次にタブ ログインキーチェーン ログインキーチェーン 次に、ダウンロードしたい証明書を選択できます。(証明書の日付で検索してください).

次に、証明書に右クリックし、

エクスポート

ファイル形式を選択 パーソナル・インフォメーション・エクスチェンジ(.p12).

keychain 証明書.

そのプロセスにより、証明書がファイルとしてダウンロードされます。 .p12 ファイル。

プロビジョニングプロファイル

開く Apple Developer 正しいチームを選択してください。

次に、新しいプロファイルを作成するには、プロファイルの作成ボタンをクリックしてください。 +

プロファイル

App Store Connect App Store Connectを選択.

次に、正しいアプリを選択する必要があります。ワイルドカードを使用すると署名が失敗するため、注意してください。

アプリを選択してください。

適切なアプリを選択

適切な証明書を選択してください (有効期限の日付は今日と同じ日と月でなければなりません) そして 続行.

適切な証明書を選択

最後にプロファイルの名前を入力してください そして 生成.

プロファイルの名前はCodemagicでプロファイルを識別するために使用されます。

プロファイルを生成

プロファイルを .mobileprovision ファイルとしてダウンロードできます。

プロファイルをダウンロード

Code の署名証明書を追加

Codemagicでは、code署名証明書をPKCS#12アーカイブとしてアップロードできます。これには署名証明書と秘密鍵が含まれます。これを使用するには秘密鍵が必要です。アップロードする際、Codemagicは証明書のパスワードを求めます(証明書がパスワード保護されている場合)。また、ユニークな 参照名, これは、特定のファイルを取得するために使用できる。 codemagic.yaml 証明書アップロード

  • 新しい証明書生成
  • 開発者ポータルから取得
  • Codemagicチーム設定を開き、
  1. codemagic.yaml設定 > __CAPGO_KEEP_0__署名識別子 Code signing identities.
  2. Reference name iOS証明書 タブ。
  3. 証明書ファイルをアップロードするには、以下のボタンをクリックしてください。 .p12または.pemファイルを選択してください または、指定された枠にドラッグしてください。
  4. 入力してください。 証明書パスワード と選択してください。 参照名.
  5. クリックしてください。 証明書を追加

プロビジョニングプロファイルの追加

Codemagicでは、Apple Developer Portalからプロファイルを取得するか、プロビジョニングプロファイルをアップロードしてアプリケーションに使用することができます。

追加された各Code署名のIDに表示されるプロファイルのタイプ、チーム、バンドルID、有効期限日は、さらに、Codemagicはcode署名証明書がCode署名のIDにある場合に、緑のチェックマークが付いた__CAPGO_KEEP_3__フィールドに表示されます。 証明書 3. Codemagicの設定

Codemagicのシークレットを設定

値の値はどこから来ているのでしょうか? それは秘密ではありません – それはプロジェクトのシークレットからです。 🤦

4. Codemagicワークフローファイルの設定 ENV プロジェクトのルートディレクトリにファイルを追加し、次の内容を追加してください。

このワークフローは、または各__CAPGO_KEEP_0__の後でトリガーされる必要があります。

手動で codemagic.yml 各__CAPGO_KEEP_0__の後で

workflows:
  ionic-capacitor-ios-workflow:
    name: Capacitor iOS Workflow
    max_build_duration: 120
    instance_type: mac_mini_m1
    integrations:
      app_store_connect: CodeMagic
    environment:
      ios_signing:
        distribution_type: app_store
        bundle_identifier: YOUR_BUNDLE_IDENTIFIER
      vars:
        XCODE_WORKSPACE: ios/App/App.xcworkspace
        XCODE_SCHEME: App
        APP_STORE_APP_ID: YOUR_APP_STORE_APP_ID
      node: v20.14.0
      xcode: 15.4
      cocoapods: default
    triggering:
      events:
        - tag
      tag_patterns:
        - pattern: '*'
          include: true
    scripts:
      - name: Install dependencies
        script: |
          npm install
      - name: Cocoapods installation
        script: |
          cd ios/App && pod install
      - name: Update dependencies and copy web assets to native project
        script: |
          npm run build
          npx cap sync ios
      - name: Set up code signing settings on Xcode project
        script: |
          xcode-project use-profiles
      - name: Increment build number
        script: |
          cd $CM_BUILD_DIR/ios/App
          LATEST_BUILD_NUMBER=$(app-store-connect get-latest-app-store-build-number "$APP_ID")
          agvtool new-version -all $(($LATEST_BUILD_NUMBER + 1))
      - name: Build ipa for distribution
        script: |
          xcode-project build-ipa \
            --workspace "$XCODE_WORKSPACE" \
            --scheme "$XCODE_SCHEME"
    artifacts:
      - build/ios/ipa/*.ipa
      - /tmp/xcodebuild_logs/*.log
      - $HOME/Library/Developer/Xcode/DerivedData/**/Build/**/*.app
      - $HOME/Library/Developer/Xcode/DerivedData/**/Build/**/*.dSYM
    publishing:
      email:
        recipients:
          - YOUR_EMAIL
        notify:
          success: true # To not receive a notification when a build succeeds
          failure: false # To not receive a notification when a build fails
      app_store_connect:
        auth: integration
        # Configuration related to TestFlight (optional)
        # Note: This action is performed during post-processing.
        submit_to_testflight: true
        # Configuration related to App Store (optional)
        # Note: This action is performed during post-processing.
        submit_to_app_store: false

各GitHubの後で タグ, ここではタグの自動化については、 自動ビルドとリリースのためのGitHubアクション 最初に。

次に、このワークフローは、NodeJSの依存関係を取得し、インストールし、JavaScriptアプリをビルドします。

各タグの送信ごとに、テストフライトでリリースが作成されます。

アプリはIonicを使用する必要はありません。ただし、Capacitorベースが必須であり、古いCordovaモジュールを使用することができますが、CapacitorのJSプラグインを使用することを推奨します。

5. ワークフローをトリガーする

ワークフローをトリガーする

コミットをブランチにプッシュする main または development コミットをブランチにプッシュする

コミット開始

数分後、App Store Connect ダッシュボードでビルドが利用可能になります。

テストフライト ダッシュボード

手動で開始

手動でワークフローを開始できます。

まず、ビルドしたいアプリを選択し、 新しいビルドを開始.

アプリを選択

次に、ビルドしたいブランチを選択してください。

ブランチを選択

そして 新しいビルドを開始.

次に、ビルドリストに移動してください。

ビルドリスト

そして、ビルド結果を確認するには、ビルドにクリックしてください。

ビルド結果

ローカルマシンからデプロイすることができます

はい、できますし、それは手間がかからずに済みます。

Xcodeを使用してアプリをビルドおよび署名することができます。いつもと同じように。

感謝します

このブログは以下の記事に基づいています。

Automatic Capacitor IOS ビルドに Codemagic で続行

あなたが使用している Automatic Capacitor IOS ビルドに Codemagic を使用 CI/CD 自動化を計画する Automatic __CAPGO_KEEP_0__ IOS ビルドに Codemagic を接続 Automatic Capgo CI/CD Automatic Capgo CI/CD の製品ワークフロー Automatic Capgo Native Builds Automatic Capgo Native Builds の製品ワークフロー Automatic Capgo Integrations Automatic Capgo Integrations の製品ワークフロー CI/CD統合 CI/CD統合の実装詳細 GitHub アクション統合 GitHub アクション統合の実装詳細について。

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

ウェブ層のバグが生じた場合、Capgo を通じて修正を配信するのではなく、App Store の承認待ちの日数を待たずに修正を配信します。ユーザーはバックグラウンドで更新を受け取り、ネイティブの変更は通常のレビュー経路を通じて配信されます。

マーティンから人工知能サポート

今すぐ始めましょう

最新のブログ記事

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