MSIX および CI/CD パイプラインの概要MSIX and CI/CD Pipeline Overview

UI ベースの Azure DevOps 拡張機能を使用するか、独自の yaml ファイルを構成することにより、Azure Pipelines を使用して Azure DevOps で MSIX プロジェクトの自動ビルドを作成することができます。You can use Azure Pipelines to create automated builds for your MSIX project in Azure DevOps by either using a UI based Azure DevOps extension or by configuring your own yaml file. 他の任意のビルド システムと統合できるように、コマンド ラインを使用してこれらのタスクを実行する方法も示します。We’ll also show you how to perform these tasks by using the command line so that you can integrate with any other build system.

新しい Azure パイプラインを作成するCreate a new Azure Pipeline

まだの場合、まず、Azure Pipelines にサインアップしますBegin by signing up for Azure Pipelines if you haven't done so already.

次に、ソース コードのビルドに使用できるパイプラインを作成します。Next, create a pipeline that you can use to build your source code. パイプラインをビルドして GitHub リポジトリをビルドするチュートリアルについては、「最初のパイプラインを作成」を参照してください。For a tutorial about building a pipeline to build a GitHub repository, see Create your first pipeline. Azure Pipelines では、こちらの記事に一覧表示されているリポジトリの種類がサポートされています。Azure Pipelines supports the repository types listed in this article.

実際のビルド パイプラインを設定するには、dev.azure.com/<organization> で Azure DevOps ポータルに移動し、新しいプロジェクトを作成します。To set up the actual build pipeline, you browse to the Azure DevOps portal at dev.azure.com/<organization> and create a new project. アカウントをお持ちでない場合は、新しいアカウントを無料で作成できます。If you don’t have an account, you can create one for free. サインインしてプロジェクトを作成したら、 https://<organization>@dev.azure.com/<organization>/<project>/_git/<project> で自分用に設定されている Git リポジトリにソース コードをプッシュするか、GitHub などの他の任意のプロバイダーを使用することができます。Once you’ve signed in and created a project, you can either push the source code to the Git repository that’s set up for you at https://<organization>@dev.azure.com/<organization>/<project>/_git/<project>, or use any other provider, such as GitHub. ポータルで新しいパイプラインを作成するときに、 [パイプライン] ボタンをクリックし、 [新しいパイプライン] をクリックして、リポジトリの場所を選択します。You’ll get to choose the location of your repository when you create a new pipeline in the portal by clicking first on the Pipelines button and then on New Pipeline.

セキュア ファイル ライブラリにプロジェクト証明書を追加するAdd your project certificate to the Secure files library

注意

可能な限り、リポジトリに証明書を送信することは避けてください。git では既定でそれらが無視されます。You should avoid submitting certificates to your repo if at all possible, and git ignores them by default. 証明書などの機密性の高いファイルの安全な処理を管理するために、Azure DevOps では、セキュア ファイル機能がサポートされています。To manage the safe handling of sensitive files like certificates, Azure DevOps supports the secure files feature.

自動ビルドの証明書をアップロードするには、次の手順に従います。To upload a certificate for your automated build:

  1. Azure Pipelines のナビゲーション ウィンドウで [パイプライン] を展開し、 [ライブラリ] をクリックします。In Azure Pipelines, expand Pipelines in the navigation pane and click Library.
  2. [セキュア ファイル] タブをクリックし、 [+ セキュア ファイル] をクリックします。Click the Secure files tab and then click + Secure file.
  3. 証明書ファイルを参照し、 [OK] をクリックします。Browse to the certificate file and click OK.
  4. 証明書をアップロードしたら、それを選択してそのプロパティを表示します。After you upload the certificate, select it to view its properties. [パイプラインのアクセス許可] で、 [すべてのパイプラインで使用するために承認します。] を有効に切り替えます。Under Pipeline permissions, enable the Authorize for use in all pipelines toggle.
  5. 証明書の秘密キーにパスワードが含まれている場合は、パスワードを Azure Key Vault に保存し、パスワードを変数グループにリンクすることをお勧めします。If the private key in the certificate has a password, we recommend that you store your password in Azure Key Vault and then link the password to a variable group. その変数を使用して、パイプラインからパスワードにアクセスできます。You can use the variable to access the password from the pipeline. パスワードは秘密キーに対してのみサポートされていることに注意してください。パスワードで保護されている証明書ファイルを使用することは、現在サポートされていません。Note that a password is only supported for the private key; using a certificate file that is itself password-protected is not currently supported.

注意

Visual Studio 2019 以降では、MSIX プロジェクトで一時的な証明書が生成されなくなりました。Starting in Visual Studio 2019, a temporary certificate is no longer generated in MSIX projects. 証明書を作成またはエクスポートするには、こちらの記事に記載されている PowerShell コマンドレットを使用します。To create or export certificates, use the PowerShell cmdlets described in this article.

パイプラインを構成するConfigure your pipeline

トピックTopic 説明Description
MSIX パッケージ拡張機能MSIX Packaging Extension MSIX パッケージのビルドと署名に関するガイドが提供される Azure DevOps 拡張機能を利用しますLeverage the Azure DevOps extension that will guide you through building and signing an MSIX package
YAML ファイルを使用した CI/CD パイプラインの構成Configure CI/CD pipeline with YAML file 独自の yaml ファイルを手動で構成しますManually configure your own yaml file