- Parent publication
- Bitriseドキュメントへようこそ!
- ワークフローとパイプライン
- ワークフロー
- iOSアプリのワークフローレシピ
iOSアプリのワークフローレシピ
iOSアプリ専用のワークフローレシピ。これらの一部は、クロスプラットフォームアプリのiOSバージョンにも使用できますが、ネイティブiOSアプリ専用のものもあります。
ワークフローレシピは、一般的なワークフロータスク用の既製のソリューションを提供します。
ここでは、iOSアプリ専用のワークフローレシピを見つけることができます。これらの一部は、クロスプラットフォームアプリのiOSバージョンにも使用できますが、ネイティブiOSアプリ専用のものもあります。
(iOS) Visual Studio App Center にデプロイする
説明
アプリをビルドし、AppCenter を介してテスターに配布します。
前提条件
指示
-
追加Xcode アーカイブ & iOS 用エクスポートステップ。入力変数を設定します。
-
プロジェクト パス: デフォルトで
$BITRISE_PROJECT_PATH. -
図式: デフォルトで
$BITRISE_SCHEME. -
配布方法:発達、このためにまた企業.
-
-
追加AppCenter iOS デプロイ次の入力をステップ実行して設定します。
-
APIトークン:
$APPCENTER_API_TOKEN. -
所有者名: 例えば、
弊社. -
アプリ名: 例えば、
マイアプリ.App Center CLI を使用してアプリ名を取得します。これは、Visual Studio App Center Web サイトに表示されるものとは異なる場合があるためです。
ステップのドキュメントまたはワークフロー エディターで他のオプションを確認してください。
-
bitrise.yml
- xcode-archive@4:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- scheme: "$BITRISE_SCHEME"
- automatic_code_signing: apple-id
- distribution_method: development
- appcenter-deploy-ios@2:
inputs:
- owner_name: my-company
- app_name: my-app
- api_token: "$APPCENTER_API_TOKEN"
(iOS) CocoaPods の依存関係をキャッシュする
説明
のコンテンツをキャッシュするPodsiOS プロジェクトのフォルダー。
指示
-
追加Bitrise.io キャッシュ:プルステップ。
-
追加CocoaPods のインストールを実行するステップ。
-
追加Bitrise.io キャッシュ:プッシュステップ。
オプションで設定できますアーカイブを圧縮に真実.これは、キャッシュされたフォルダーが大きい場合に便利です。
bitrise.yml
- cache-pull@2: {}
- cocoapods-install@2: {}
- cache-push@2: {}
(iOS) App Store Connect / TestFlight へのデプロイ
説明
アプリをアーカイブし、App Store Connect にアップロードして、App Store または TestFlight にリリースします。
前提条件
-
ソース コードが複製され、依存関係 (Cocoapods、Carthage など) がインストールされます。
-
コード署名が設定されました。見るiOS コード署名詳細については。iOSコード署名
-
Apple Developer 接続がセットアップされました。見るApple サービス接続詳細については。
指示
-
(オプション)Xcode プロジェクトのビルド番号を設定するステップ。入力変数を設定します。
-
Info.plist ファイルのパス: 例えば、
MyApp/Info.plist. -
ビルド番号: 例えば、
42. -
バージョンナンバー: 例えば、
1.1.
-
-
追加Xcode アーカイブ & iOS 用エクスポートステップ。入力変数を設定します。
-
プロジェクト パス: デフォルトでは、
$BITRISE_PROJECT_PATH. -
図式: デフォルトで
$BITRISE_SCHEME. -
配布方法: に設定する必要がありますアプリストア.
-
-
追加App Store Connect へのデプロイ - Application Loader (以前の iTunes Connect)ステップ。入力変数を設定する Bitrise Apple 開発者接続: 例えば、api_key.
Deploy to App Store Connect with Deliver (旧 iTunes Connect) のさらに多くのオプション
または、Deliver を使用して App Store Connect にデプロイ (以前の iTunes Connect)同様に、より多くのオプションを提供します。
bitrise.yml
- set-xcode-build-number@1:
inputs:
- build_short_version_string: '1.0'
- plist_path: BitriseTest/Info.plist
- xcode-archive@4:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- scheme: "$BITRISE_SCHEME"
- automatic_code_signing: api_key
- distribution_method: app-store
- deploy-to-itunesconnect-application-loader@1:
inputs:
- connection: api_key
(iOS) CI ワークフローの例
説明
iOS アプリのメイン ブランチでのコミットのワークフローの例。ワークフローには次が含まれます。
bitrise.yml
---
format_version: '11'
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
project_type: ios
workflows:
ci:
steps:
- activate-ssh-key@4:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- git-clone@6: {}
- cache-pull@2: {}
- cocoapods-install@2: {}
- carthage@3:
inputs:
- carthage_options: "--use-xcframeworks --platform iOS"
- recreate-user-schemes@1:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- xcode-test@4:
inputs:
- log_formatter: xcodebuild
- xcodebuild_options: "-enableCodeCoverage YES"
- xcode-archive@4:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- scheme: "$BITRISE_SCHEME"
- automatic_code_signing: apple-id
- distribution_method: development
- deploy-to-bitrise-io@2: {}
- slack@3:
inputs:
- channel: "#build-notifications"
- webhook_url: "$SLACK_WEBHOOK"
- cache-push@2: {}
app:
envs:
- opts:
is_expand: false
BITRISE_PROJECT_PATH: BitriseTest.xcworkspace
- opts:
is_expand: false
BITRISE_SCHEME: BitriseTest
- opts:
is_expand: false
BITRISE_DISTRIBUTION_METHOD: development
trigger_map:
- push_branch: main
workflow: ci
(iOS) bitrise.io にデプロイ
説明
アプリをビルドし、Bitrise.io Ship を介してテスターに配布します。
前提条件
コード署名が設定されました。見るiOS コード署名詳細については。iOSコード署名
指示
-
追加Xcode アーカイブ & iOS 用エクスポートステップ。入力変数を設定します。
-
プロジェクト パス: デフォルトでは、
$BITRISE_PROJECT_PATH. -
図式: デフォルトでは、
$BITRISE_SCHEME. -
配布方法:発達、このためにまた企業.
-
bitrise.yml
- xcode-archive@4:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- scheme: "$BITRISE_SCHEME"
- automatic_code_signing: apple-id
- distribution_method: development
- deploy-to-bitrise-io@2: {}
(iOS) プル リクエストのワークフローの例
説明
iOS プル リクエスト検証のワークフローの例。ワークフローには次が含まれます。
-
プル リクエストのワークフローをトリガーします。
bitrise.yml
---
format_version: '11'
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
project_type: ios
workflows:
pull-request:
steps:
- activate-ssh-key@4:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- git-clone@6: {}
- cache-pull@2: {}
- cocoapods-install@2: {}
- carthage@3:
inputs:
- carthage_options: "--use-xcframeworks --platform iOS"
- recreate-user-schemes@1:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- xcode-test@4:
inputs:
- log_formatter: xcodebuild
- xcodebuild_options: "-enableCodeCoverage YES"
- xcode-archive@4:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- scheme: "$BITRISE_SCHEME"
- automatic_code_signing: apple-id
- distribution_method: development
- deploy-to-bitrise-io@2: {}
- create-install-page-qr-code@1: {}
- comment-on-github-pull-request@0:
inputs:
- body: |-

$BITRISE_PUBLIC_INSTALL_PAGE_URL
- personal_access_token: "$GITHUB_ACCESS_TOKEN"
- cache-push@2: {}
app:
envs:
- opts:
is_expand: false
BITRISE_PROJECT_PATH: BitriseTest.xcworkspace
- opts:
is_expand: false
BITRISE_SCHEME: BitriseTest
- opts:
is_expand: false
BITRISE_DISTRIBUTION_METHOD: development
trigger_map:
- pull_request_source_branch: "*"
workflow: pull-request
(iOS) Firebase App Distribution へのデプロイ
説明
Firebase App Distribution を介してアプリをビルドし、テスターに配布します。
前提条件
-
正確なバンドル ID が登録されている既存の Firebase プロジェクト。フォローする Firebase ドキュメント 詳細については。
-
firebase を実行して Firebase からトークンを取得する
login:ciローカル。を参照してください Firebase CLI 詳細については、ドキュメントを参照してください。 -
このトークンをシークレットとして Bitrise プロジェクトに追加します。
FIREBASE_TOKEN. -
プロジェクトから Firebase アプリ ID を取得します。 一般設定 ページに移動し、この値を入力変数として [ベータ] Firebase アプリの配布 ステップ。
-
コード署名が設定されました。見る iOS コード署名 詳細については。iOSコード署名
指示
-
追加 Xcode アーカイブ & iOS 用エクスポート次のような必要な入力変数をステップ実行して設定します。 図式、 配布方法 および目的のコード署名方法。
-
追加[ベータ] Firebase アプリの配布次の入力変数をステップ実行して設定します。
-
Firebase トークン: 前に定義した秘密の環境変数を使用します。
$FIREBASE_TOKEN. -
Firebase アプリ ID: 詳細については、上記の前提条件セクションを参照してください。
-
必要に応じて、ステップ入力変数でテスト グループまたは個々のテスターを定義できます。
-
bitrise.yml
- xcode-archive@6:
inputs:
- distribution_method: development
- scheme: # your scheme goes here
- automatic_code_signing: api-key
- firebase-app-distribution@0:
inputs:
- firebase_token: $FIREBASE_TOKEN
- app: # your app ID from Firebase
- testers: [email protected] # optional
- groups: qa-team #optional
(iOS) 毎晩のワークフローの例
説明
iOS アプリのナイトリー ビルドのワークフローの例。ワークフローには次が含まれます。
-
バージョンとビルド番号の設定.デフォルトでは、アプリはビルド番号 (
$BITRISE_BUILD_NUMBER) をバージョン コードとして使用します。
私たちをチェックしてくださいガイドスケジュールされたビルドを実行します。
bitrise.yml
---
format_version: '11'
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
project_type: ios
workflows:
nightly:
steps:
- activate-ssh-key@4:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- git-clone@6: {}
- cache-pull@2: {}
- cocoapods-install@2: {}
- carthage@3:
inputs:
- carthage_options: "--use-xcframeworks --platform iOS"
- set-xcode-build-number@1:
inputs:
- build_short_version_string: '1.0'
- plist_path: BitriseTest/Info.plist
- recreate-user-schemes@1:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- xcode-archive@4:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- scheme: "$BITRISE_SCHEME"
- automatic_code_signing: apple-id
- distribution_method: app-store
- deploy-to-itunesconnect-application-loader@1:
inputs:
- connection: apple_id
- xcode-archive@4:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- scheme: "$BITRISE_SCHEME"
- automatic_code_signing: apple-id
- distribution_method: development
- deploy-to-bitrise-io@2: {}
- deploy-to-bitrise-io@2: {}
- create-install-page-qr-code@1: {}
- slack@3:
inputs:
- channel: "#build-notifications"
- thumb_url: "$BITRISE_PUBLIC_INSTALL_PAGE_QR_CODE_IMAGE_URL"
- webhook_url: "$SLACK_WEBHOOK"
- cache-push@2: {}
app:
envs:
- opts:
is_expand: false
BITRISE_PROJECT_PATH: BitriseTest.xcworkspace
- opts:
is_expand: false
BITRISE_SCHEME: BitriseTest
- opts:
is_expand: false
BITRISE_DISTRIBUTION_METHOD: development
(iOS) 物理デバイスでテストを実行する
説明
物理デバイスで単体テストまたは UI テストを実行します。私たちの デバイス テスト ソリューション に基づいています Firebase テスト ラボ.結果のログ、ビデオ、スクリーンショットは Bitrise で見つけることができます。
前提条件
-
ソース コードが複製され、依存関係 (Cocoapods、Carthage など) がインストールされます。
-
コード署名が設定されました。見るiOS コード署名詳細については。iOSコード署名
指示
-
を追加iOS のテスト用の Xcode ビルドステップ。
-
を追加[ベータ] iOS デバイスのテスト コード署名のステップとセットアップ。
-
を追加Bitrise.io へのデプロイ-アプリ、ログ、アーティファクトテスト結果を以下で利用できるようにするステップ テスト結果の展開と表示。
bitrise.yml
- xcode-build-for-test@1:
inputs:
- automatic_code_signing: api_key
- virtual-device-testing-for-ios@1: {}
- deploy-to-bitrise-io@2: {}
(iOS) シミュレーターでテストを実行する
説明
シミュレーターで iOS アプリの単体テストまたは UI テストを実行します。
指示
-
を追加iOS の Xcode テストステップ。入力変数を設定します。
-
プロジェクト パス: デフォルト値は
$BITRISE_PROJECT_PATHほとんどの場合、変更する必要はありません。 -
図式: デフォルト値は
$BITRISE_SCHEME、この変数は Bitrise にアプリを追加するときに設定したスキームを保存します。必要に応じて別のスキームを指定できますが、共有スキームである必要があります。 -
デバイス宛先指定子: (デフォルト:
プラットフォーム=iOS シミュレーター、名前=iPhone 8 Plus、OS=最新)。
Xcode UI テスト用の追加シミュレーターのインストール
使用しているスタックでは利用できない Xcode UI テスト用のシミュレーターが必要な場合は、以下を確認してください。 この記事 ナレッジ ベースのガイドを参照してください。
-
-
を追加Bitrise.io へのデプロイ-アプリ、ログ、アーティファクトテスト結果を以下で利用できるようにするステップ テストレポート。
bitrise.yml
- xcode-test@4: {}
- deploy-to-bitrise-io@2: {}
(iOS) CocoaPods の依存関係をインストールする
説明
CocoaPods の依存関係をインストールします。ステップでプロジェクト ファイルではなく、ワークスペースを使用していることを確認してください。これを行うには、次の値を確認します。$BITRISE_PROJECT_PATH環境変数。
指示
-
追加CocoaPods のインストールを実行するステップ。
-
(オプション) Podfile がルートにない場合は、 Podfile パス 入力変数。
bitrise.yml
- cocoapods-install@2: {}
(iOS) Carthage の依存関係をインストールする
説明
Carthage の依存関係をインストールします。
指示
追加カルタゴステップ。入力変数を設定します。
-
Github パーソナル アクセス トークン: GitHub アクセス トークンを シークレット (
$GITHUB_ACCESS_TOKEN)。 GitHub のレート制限の問題を回避するには、このトークンが必要です。 GitHub ガイドを参照してください。コマンドラインで使用するアクセス トークンの作成パーソナル アクセス トークンの作成方法については、こちらをご覧ください。このトークンを作成するときは、すべてのスコープ ボックスをオフにします。このトークンが個人情報へのアクセスを必要とする理由はありません。 -
(オプション) セット carthage コマンドの追加オプション: を参照カルタゴのドキュメント使用可能なオプションについては、たとえば、
--use-xcframeworks --platform iOS.
ビルドで特定の Carthage バージョンを設定する
あなたのプロジェクトが現在私たちのスタックで利用できない Carthage バージョンを必要とする場合は、こちらをチェックしてください。 ビルドで特定の Carthage バージョンを設定する.
bitrise.yml
- carthage@3:
inputs:
- carthage_options: "--use-xcframeworks --platform iOS"
(iOS) リリースワークフローの例
説明
iOS アプリのリリース ドラフトを App Store にアップロードするワークフローの例。ワークフローには次が含まれます。
-
バージョン番号の設定に基づくビルドに渡される環境変数(
$VERSION_NUMBER)。
bitrise.yml
---
format_version: '11'
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
project_type: ios
workflows:
release:
steps:
- activate-ssh-key@4:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- git-clone@6: {}
- cocoapods-install@2: {}
- carthage@3:
inputs:
- carthage_options: "--use-xcframeworks --platform iOS"
- set-xcode-build-number@1:
inputs:
- build_short_version_string: "$VERSION_NUMBER"
- build_version: "$BITRISE_BUILD_NUMBER"
- plist_path: BitriseTest/Info.plist
- recreate-user-schemes@1:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- xcode-archive@4:
inputs:
- project_path: "$BITRISE_PROJECT_PATH"
- scheme: "$BITRISE_SCHEME"
- automatic_code_signing: apple-id
- distribution_method: app-store
- deploy-to-itunesconnect-application-loader@1:
inputs:
- connection: apple_id
app:
envs:
- opts:
is_expand: false
BITRISE_PROJECT_PATH: BitriseTest.xcworkspace
- opts:
is_expand: false
BITRISE_SCHEME: BitriseTest
- opts:
is_expand: false
BITRISE_DISTRIBUTION_METHOD: development
(iOS) ステップ入力を使用して Apple サービス接続資格情報をオーバーライドする
説明
で構成された Apple サービス接続資格情報をオーバーライドできます。 アプリの設定 の下の入力を設定することによって App Store Connect 接続のオーバーライド の入力グループ Xcode アーカイブ & iOS 用エクスポート ステップ.
これは、チームが複数の App Store アカウントを使用している場合、または単一の Bitrise で複数のアプリを管理している場合に役立ちます。 アプリ に基づいてさまざまな Apple サービス接続を使用したいと考えています。 ワークフロー.
前提条件
開始する前に、次を使用して生成または取得します App Store Connect:
-
App Store Connect API 秘密鍵。
-
App Store Connect API キー ID。
-
App Store Connect API 発行者 ID。
詳細については、こちらをご覧ください App Store Connect API 秘密鍵の作成.
指示
-
App Store Connect API 秘密鍵ファイル (.p8 ファイル) を 汎用ファイル ストレージ の中に コード署名 タブ。
-
追加Xcode アーカイブ & iOS 用エクスポートステップ (バージョン 4.6.0 以降) をワークフローに追加します。
-
をセットする 自動コード署名方法 への入力
api-key. -
以下のステップ入力を設定します App Store Connect 接続のオーバーライド 入力グループ:
-
App Store Connect API 秘密鍵: App Store Connect API の秘密鍵 (.p8 ファイル) へのローカル パスまたはリモート URL。にアップロードした App Store Connect API 秘密鍵ファイル (.p8 ファイル) に接続された、自動生成された環境変数にこの入力を設定します。 汎用ファイル ストレージ ステップ1で。
-
App Store Connect API キー ID: App Store Connect 認証に使用する秘密鍵 ID。
-
App Store Connect API 発行者 ID: App Store Connect 認証に使用する秘密鍵発行者 ID。
-
bitrise.yml
- xcode-archive@4:
inputs:
- automatic_code_signing: api-key
- api_key_path: "$BITRISEIO_APP_STORE_CONNECT_API_ID_URL"
- api_key_id: "$APP_STORE_API_ID"
- api_key_issuer_id: "$APP_STORE_API_ISSUER_ID"