App Center ビルド構成を Azure Pipelines にエクスポートする
重要
Visual Studio App Center は、2025 年 3 月 31 日に廃止される予定です。 完全に廃止されるまで Visual Studio App Center を引き続き使用できますが、移行を検討できる推奨される代替手段がいくつかあります。
概要
App Center を使用すると、ビルド エクスポート機能を使用して、すべての App Center ビルド構成を Azure Pipelines にエクスポートできます。 JSON または YAML ファイルをダウンロードし、Azure Pipelines にインポートできます。
App Center ビルド構成を Azure Pipelines に直接移行するのが最も簡単なオプションですが、特定のアプリケーションに対して適切に最適化されていない可能性があります。 より最適化されたエクスペリエンス (Android、 Xcode、 Xamarin) のために Azure Pipelines をゼロから構築することを検討する
前提条件
ビルド構成をインポートする Azure DevOps プロジェクトが必要です。 新しいプロジェクトを作成することも、既存のプロジェクトを使用することもできます。
(省略可能)App Center タスクのサービス接続を追加する
App Center Test または App Center Distribute がビルド構成に統合されている場合は、サービス接続を作成する必要があります
- [Azure DevOps プロジェクトの設定] - [パイプライン] ->> [サービス接続] に移動します
- [新しいサービス接続] を選択します
- 'Visual Studio App Center' を検索する -> 次へ
- API トークンを作成し、接続に名前を付けて保存する
JSON ファイルを使用してエクスポートする
[App Center ビルド] ページから JSON ファイルをエクスポートします。
- App Center ポータルに移動する
- アプリケーションを選択する
- [ビルド] セクションに移動し、ブランチを選択し、[エクスポート]
- [ダウンロード] を選択し、[JSON のダウンロード] を選択します
JSON ファイルのプロジェクト ID を変更する
Azure DevOps プロジェクトの ID を取得する
- 以下の URL に移動し、プロジェクトの ID をコピーします
https://dev.azure.com/{organization}/_apis/projects?api-version=6.0
2. プロジェクト ID を JSON ファイルの project
パラメーターに貼り付けます
Azure Pipeline を作成する
- [Azure DevOps - パイプライン] ->> [パイプラインのインポート] に移動し、ダウンロードした JSON ファイルの ] を選択します
- セクションで
Pipeline
、 パラメーターの下をAgent Pool
選択Hosted (Azure Pipelines)
します - パラメーターの下にある最新の macOS Microsoft ホステッド エージェント を
Agent Specification
選択します - セクションで
Get Sources
、アプリケーションのリポジトリへの 接続 を追加します
(省略可能)署名ファイルのアップロードとパスワードの更新
App Center ビルド構成でコード署名を使用する場合は、 セキュリティで保護された ファイル機能を使用して、それぞれのファイルを Azure Pipelines にアップロードする必要があります。 さらに、パイプラインに格納されているパスワード 変数 を更新する必要があります
Android
- キーストア ファイルを Azure DevOps プロジェクトにアップロードする
- 、、
keyAlias
keyPassword
、および の各変数を更新するkeystoreFilename
keystorePassword
iOS/macOS
- プロビジョニング プロファイルと証明書を Azure DevOps プロジェクトにアップロードする
- 、
P12Filename
、および 変数を更新P12Password
するMobileProvisionFilename
Windows (UWP)
- Azure DevOps プロジェクトに証明書をアップロードする
- 、、
packageCertificateFileName
および を更新packageCertificatePassword
するpackageCertificateBase64String
(省略可能)App Center に関連するタスクへのサービス接続の追加
App Center の配布または App Center テストが統合されている場合は、それぞれのタスクを変更する必要があります
- Azure DevOps -> Pipelines に移動します
- インポートしたパイプラインを選択し、[編集] を選択します
- App Center タスクを検索し、[App Center サービス接続] パラメーター [サービス接続] で以前に作成したサービス接続を選択
YAML ファイルを使用してエクスポートする
App Center の [ビルド] ページから YAML ファイルをエクスポートします。
- App Center ポータルに移動する
- アプリケーションを選択する
- [ビルド] セクションに移動し、ブランチを選択し、[エクスポート]
- [ダウンロード] を選択し、[YAML のダウンロード] を選択します
Azure Pipelines で動作するようにリポジトリを構成する
- ダウンロードした
azure-pipelines.yml
ファイルをアプリケーションのリポジトリにコミットする - Azure DevOps - パイプライン ->> パイプラインの作成に移動します
- コードの場所を選択する
- パイプラインを確認して選択する
Run
YAML パイプライン作成プロセスの詳細については、 こちらを参照してください。
(省略可能)署名ファイルのアップロードとパスワードの更新
App Center ビルド構成でコード署名を使用する場合は、 セキュリティで保護された ファイル機能を使用して、それぞれのファイルを Azure Pipelines にアップロードする必要があります。 さらに、パイプラインに格納されているパスワード 変数 を更新する必要があります
Android
- キーストア ファイルを Azure DevOps プロジェクトにアップロードする
- Azure Pipelines で、、
keyAlias
keyPassword
、およびkeystoreFilename
シークレット変数を作成keystorePassword
する - 作成されたシークレット変数を使用して YAML ファイルを更新する
...
keystorePassword: $(keystorePassword)
keyAlias: $(keyAlias)
keyPassword: $(keyPassword)
keystoreFilename: $(keystoreFilename)
...
iOS/macOS
- プロビジョニング プロファイルと証明書を Azure DevOps プロジェクトにアップロードする
- Azure Pipelines で、、
P12Filename
、およびMobileProvisionFilename
シークレット変数を作成P12Password
する - 作成されたシークレット変数を使用して YAML ファイルを更新する
...
P12Password: $(P12Password)
P12Filename: $(P12Filename)
MobileProvisionFilename: $(MobileProvisionFilename)
...
Windows (UWP)
- Azure DevOps プロジェクトに証明書をアップロードする
- Azure Pipelines で、、
packageCertificateFileName
、およびpackageCertificateBase64String
シークレット変数を作成packageCertificatePassword
する - 作成されたシークレット変数を使用して YAML ファイルを更新する
...
packageCertificatePassword: $(packageCertificatePassword)
packageCertificateBase64String: $(packageCertificateFileName)
packageCertificateFileName: $(packageCertificateBase64String)
...
(省略可能)App Center サービス接続を使用するように新しく作成されたパイプラインを承認する
App Center の配布またはテストが統合されている場合は、サービス接続を使用するようにパイプラインを承認する必要があります。
- 現在実行中のジョブを開くと、アクセス許可に関するメッセージが表示されます
- 実行中のジョブを選択し、
Permit
サービス接続へのアクセス