次の方法で共有


Microsoft Power Platform ビルド ツール タスク

次のセクションでは、実行可能な構築タスクについて説明します。 その後、これらのタスクを利用した Azure Pipelines の例を紹介します。 ビルド ツールとそのダウンロード方法については、Azure Pipelines 向け Microsoft Power Platform ビルド ツール を参照してください。

ヘルパー タスク

利用可能なヘルパー タスクを次に示します。

Power Platform ツール インストーラー

このタスクは、ビルドおよびリリース パイプライン内の他の Power Platform Build Tools タスクの前に一度追加する必要があります。 このタスクでは、エージェントに必要となる一連の Power Platform のツールをインストールし、Microsoft Power Platform 構築タスクを実行します。 このタスクには、追加の構成は不要です。 このタスクには、インストールされる各ツールの特定のバージョン用のパラメー タが含まれます。

ツールのバージョンを常に最新の状態に保つには、これらのパラメーターが、パイプラインを適切に実行するために必要なツールのバージョンに対応していることを確認してください。

YAML スニペット (インストーラー)

# Installs default Power Platform Build Tools
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.tool-installer.PowerPlatformToolInstaller@2
  displayName: 'Power Platform Tool Installer'
# Installs specific versions of the Power Platform Build Tools
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.tool-installer.PowerPlatformToolInstaller@2
  displayName: 'Power Platform Tool Installer'
  inputs:
    DefaultVersion: false
    XrmToolingPackageDeploymentVersion: 3.3.0.928

パラメーター (インストーラー)

パラメーター 内容
DefaultVersion
既定のツール バージョンを使用する
すべてのツールの既定バージョンを使用する場合は true に設定し、それ以外の場合は false に設定します。 ツールのバージョンが指定されている場合は、必須 (そして false) です。
PowerAppsAdminVersion
XrmToolingPackageDeploymentVersion
MicrosoftPowerAppsCheckerVersion
CrmSdkCoreToolsVersion
ツール バージョン
使用するツールの特定のバージョン。

Power Platform WhoAmI

WhoAmI リクエストを接続して作成することにより、Power Platform 環境サービスの接続を確認します。 このタスクは、パイプラインの早期に含めて、処理を開始する前に接続を確認する場合に便利です。

YAML スニペット (WhoAmI)

# Verifies an environment service connection
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.whoami.PowerPlatformWhoAmi@2
  displayName: 'Power Platform WhoAmI'

  inputs: 
#   Service Principal/client secret (supports MFA)
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'My service connection'
# Verifies an environment service connection
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.whoami.PowerPlatformWhoAmi@2
  displayName: 'Power Platform WhoAmI'

  inputs:
#   Username/password (no MFA support)
    PowerPlatformEnvironment: 'My service connection'

パラメーター(WhoAmI)

パラメーター 内容
authenticationType
認証の種類
(オプション) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
PowerPlatformEnvironment
Power Platform 環境 URL
接続先の環境のサービス エンドポイントです。 これは、 プロジェクト設定 配下の サービスの接続 で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
PowerPlatformSPN
Power Platform サービス プリンシパル
接続先の環境のサービス エンドポイントです。 これは、 プロジェクト設定 配下の サービスの接続 で定義されています。

品質チェック

次のセクションは、ソリューションの品質をチェックするために利用可能なタスクです。

Power Platform Checker

このタスクは、一連の最良の規則に対してソリューションの静的分析チェックを実行し、ソリューションの構築時に誤って導入した可能性のある問題パターンを特定します。

YAML スニペット (チェッカー)

# Static analysis check of your solution
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.checker.PowerPlatformChecker@2
  displayName: 'Power Platform Checker '
  inputs:
    PowerPlatformSPN: 'Dataverse service connection'
    RuleSet: '0ad12346-e108-40b8-a956-9a8f95ea18c9'
# Static analysis check of your solution
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.checker.PowerPlatformChecker@2
  displayName: 'Power Platform Checker '
  inputs:
    PowerPlatformSPN: 'Dataverse service connection'
    UseDefaultPACheckerEndpoint: false
    CustomPACheckerEndpoint: 'https://japan.api.advisor.powerapps.com/'
    FileLocation: sasUriFile
    FilesToAnalyzeSasUri: 'SAS URI'
    FilesToAnalyze: '**\*.zip'
    FilesToExclude: '**\*.tzip'
    RulesToOverride: 'JSON array'
    RuleSet: '0ad12346-e108-40b8-a956-9a8f95ea18c9'

パラメーター (チェッカー)

パラメーター 内容
PowerPlatformSPN
サービスの接続
(必須) Power Platform チェッカーを使用するには、ライセンス済みの Microsoft Power Platform 環境への接続が必要です。 サービス接続は、プロジェクト設定配下のサービス接続で定義されており、これには Power Platform の接続タイプを使用して います。 詳細: Power Platform 作成環境BuildTools.EnvironmentUrl を参照してください

注: チェッカー タスクでは、サービス プリンシパルとユーザー名/パスワードの認証方法を使用できます。 このタスクで使用するサービス プリンシパルを構成する方法の詳細については、Power Platform 環境のサービス プリンシパル接続を構成する を参照してください。

UseDefaultPACheckerEndpoint
既定の Power Platform チェッカー エンドポイントを使用する
既定 (true) で、チェッカー サービスの地理的位置は、接続する環境と同じ地理的位置を使用します。
CustomPACheckerEndpoint
カスタム PAC チェッカー エンドポイント
UseDefaultPACheckerEndpointfalse の場合は必須です。 使用する別の地域を指定することもできます。たとえば、https://japan.api.advisor.powerapps.com. 使用可能な地域のリストについては、Power Platform Checker API の使用 を参照してください。
FileLocation
分析を行うファイルの場所
Shared Access Signature (SAS) URL sasUriFile からファイルを参照する場合に必須です。

注: リポジトリ内の解凍されたソース ファイルではなく、エクスポートされたソリューション ファイルを参照することが重要です。 管理ソリューション ファイルとアンマネージド ソリューション ファイルの両方を分析可能です。

FilesToAnalyzeSasUri
分析する SAS ファイル
FileLocationsasUriFile に設定されている場合は必須です。 SAS URI を入力します。 コンマ (、) またはセミコロン (;) で区切られたリストを使用して、複数の SAS URI を追加できます。
FilesToAnalyze
分析するローカル ファイル
SAS ファイルが分析されていない場合は必須です。 分析を行うzipファイルのパスとファイル名を指定します。 ワイルドカードを使用することができます。 たとえば、すべてのサブ フォルダーのすべての zip ファイルを対象とするには、**\*.zip と入力します。
FilesToExclude
除外するローカル ファイル
分析から除外するファイルの名前を指定します。 複数ある場合は、コンマ (、) またはセミコロン (;) で区切ったリストを指定します。 このリストには、完全なファイル名、または *jquery や form.js など、先頭または末尾にワイルドカードが付いた名前を含めることができます
RulesToOverride
オーバーライドするルール
オーバーライドするルールとレベルを含む JSON 配列。 OverrideLevel で受け入れられる値: Critical、High、Medium、Low、Informational です。 例: [{"Id":"meta-remove-dup-reg","OverrideLevel":"Medium"},{"Id":"il-avoid-specialized-update-ops","OverrideLevel":"Medium"}]
RuleSet
ルール セット
(必須) 適用するルール セットを指定します。 次の 2 つのルール セットを使用できます。
  • ソリューション チェッカー: これは、Power Apps Maker Portal から実行されるものと同じルール セットです。
  • AppSource: アプリケーションを AppSource への公開をする前に、認証を実施する目的で使用される拡張ルール セットです。
ErrorLevel
エラー レベル
エラーしきい値パラメーターと組み合わせて、許可されるエラーおよび警告の重大度を定義します。 サポートされているしきい値は <level>IssueCount で、level=Critical、High、Medium、Low、Informational です。
ErrorThreshold
エラーしきい値
チェッカーがチェック対象のソリューションに合格することを許可される、指定されたレベルのエラー (>= 0) の数を定義します。
FailOnPowerAppsCheckerAnalysisError
エラーで失敗
true なら、Power Apps チェッカー分析が Failed または FinishedWithErrors として返された場合は失敗します。
ArtifactDestinationName
DevOps アーティファクト名
チェッカー .sarif ファイルの Azure Artifacts 名を指定します。

ソリューション タスク

この一連のタスクにより、ソリューション アクションを自動化できます。 このセクションで後述する環境の作成、コピー、または復元を行う環境タスクは、新しく作成された環境とのサービス接続を上書きします。 これらのタスクにより、オンデマンドで作成された環境に対してソリューション タスクを実行できます。

Power Platform インポート ソリューション

ソリューションをターゲット環境にインポートします。

YAML スニペット (インポート)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.import-solution.PowerPlatformImportSolution@2
  displayName: 'Power Platform Import Solution '
  inputs:
    PowerPlatformEnvironment: 'My service connection'
    SolutionInputFile: 'C:\Public\Contoso_sample_1_0_0_1_managed.zip'
    HoldingSolution: true
    OverwriteUnmanagedCustomizations: true
    SkipProductUpdateDependencies: true
    ConvertToManaged: true
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.import-solution.PowerPlatformImportSolution@2
  displayName: 'Power Platform Import Solution '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'Dataverse service connection '
    SolutionInputFile: 'C:\Public\Contoso_sample_1_0_0_1_managed.zip'
    AsyncOperation: true
    MaxAsyncWaitTime: 60
    PublishWorkflows: false

パラメーター (インポート)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
ソリューションをインポートするサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
PowerPlatformSPN
Power Platform サービス プリンシパル
ソリューションをインポートするサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
SolutionInputFile
ソリューション入力ファイル
(必須) 対象の環境へのインポートを行う solution.zip ファイルのパスとファイル名称 (例: $(Build.ArtifactStagingDirectory)$(SolutionName).zip)。

注 : 変数を使用することで、パイプラインのさまざまな部分に重要なデータを簡単に取り込むことができます。 包括的なリストについては、事前定義された変数を使用する を参照してください。

HoldingSolution
保持ソリューションとしてインポート
ソリューションをアップグレードする必要がある場合に使用する事前パラメーター (true|false)。 このパラメーターは、Dataverse でソリューションをホストしますが、ソリューションのアップグレードの適用タスクが実行されるまで、ソリューションはアップグレードされません。
OverwriteUnmanagedCustomizations
アンマネージド カスタマイズを上書き
管理されていないカスタマイズを上書きするかどうかを指定します (true|false)。
SkipProductUpdateDependencies
製品アップデートの依存関係をスキップする
製品の更新に関連する依存関係の強制をスキップするかどうかを指定します (true|false)。
ConvertToManaged
マネージドへの変換​​
管理ソリューションとしてインポートするかどうかを指定します (true|false)。
AsyncOperation
非同期インポート
(true) を選択した場合、インポート操作は非同期で実行されます。 このタスクは 4 分後に自動的にタイムアウトするため、大規模なソリューションに適しています。 非同期を選択すると、ポーリングが行われ、MaxAsyncWaitTime に達するまで待機します (true|false)。
MaxAsyncWaitTime
最大待機時間
非同期操作の最大待機時間 (分単位)。既定は 60 分 (1 時間) で、タスクの Azure DevOps 既定値と同じです。
PublishWorkflows
インポート後にプロセスをアクティブ化する
インポート後にソリューション内のプロセス (ワークフロー) をアクティブ化する必要があるかどうかを指定します (true|false)。
UseDeploymentSettingsFile
展開設定ファイルを使用する
接続参照と環境変数値は、展開設定ファイルを使用して設定できます (true|false)。
DeploymentSettingsFile
展開設定ファイル
(UseDeploymentSettingsFile=true の場合は必須) 展開設定ファイルのパスとファイル名。

Power Platform ソリューション コンポーネントの追加

ソリューション コンポーネントをアンマネージド ソリューションに追加します。

YAML スニペット (追加)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.add-solution-component.PowerPlatformAddSolutionComponent@2
  displayName: 'Power Platform Add Solution Component '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    SolutionName: 'SampleSolution '
    Component: contact
    ComponentType: 1
    AddRequiredComponents: false

パラメーター (追加)

Parameters Description
ComponentId
ソリューション コンポーネントの ID
ターゲット ソリューションに追加するコンポーネントのスキーマ名または ID
ComponentType
Power Platform 環境 URL
追加しようとしているソリューション コンポーネントを表す値です。 コンポーネント値の包括的なリストについては、事前定義されたコンポーネント タイプの使用を参照してください。
SolutionUniqueName
ソリューションの名前
ソリューションの一意の名前。
AddRequiredComponents
ソリューション コンポーネントに依存する他のソリューションから必要なコンポーネント
(オプション) 追加しようとしているソリューション コンポーネントに必要な他のソリューション コンポーネントもアンマネージド ソリューションに追加する必要があるかを示します。
Environment
環境 URL または ID
(オプション) ターゲット環境の環境 URL または ID。

Power Platform 適用ソリューションのアップグレード

保持ソリューションとしてインポートされたソリューションをアップグレードします。

YAML スニペット (アップグレード)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.apply-solution-upgrade.PowerPlatformApplySolutionUpgrade@2
  displayName: 'Power Platform Apply Solution Upgrade '
  inputs:
    PowerPlatformEnvironment: 'My service connection'
    SolutionName: 'Contoso_sample'
    AsyncOperation: false
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.apply-solution-upgrade.PowerPlatformApplySolutionUpgrade@2
  displayName: 'Power Platform Apply Solution Upgrade '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'Dataverse service connection '
    SolutionName: 'Contoso_sample'
    MaxAsyncWaitTime: 45

パラメーター (アップグレード)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
ソリューションをアップグレードする先のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
PowerPlatformSPN
Power Platform サービス プリンシパル
ソリューションをアップグレードする先のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
SolutionName
ソリューション名
(必須) アップグレードを適用するソリューションの名前。 表示名 ではなく、ソリューションの 名前 を常に使用します。
AsyncOperation
非同期アップグレード
(true) を選択した場合、アップグレード操作は非同期バッチ ジョブとして実行されます。 非同期を選択すると、ポーリングが行われ、MaxAsyncWaitTime に達するまで待機します。
MaxAsyncWaitTime
最大待機時間
非同期操作の最大待機時間 (分単位)。既定は 60 分 (1 時間) で、タスクの Azure DevOps 既定値と同じです。

Note

変数を使用することで、パイプラインのさまざまな部分に重要なデータを簡単に取り込むことができます。 包括的なリストについては、事前定義された変数を使用する を参照してください。 展開設定ファイルを使用してソリューションをインポートする際に、ターゲット環境の接続参照と環境変数の情報を事前に設定できます。

詳細情報: 自動展開のための接続参照と環境変数の事前設定

Power Platform エクスポート ソリューション

ソース環境からソリューションをエクスポートします。

YAML スニペット (エクスポート)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.export-solution.PowerPlatformExportSolution@2
  displayName: 'Power Platform Export Solution '
  inputs:
    PowerPlatformEnvironment: 'My service connection'
    SolutionName: 'Contoso_sample'
    SolutionOutputFile: 'C:\Public\Contoso_sample_1_0_0_1_managed.zip'
    Managed: true
    MaxAsyncWaitTime: 120
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.export-solution.PowerPlatformExportSolution@2
  displayName: 'Power Platform Export Solution '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'Dataverse service connection '
    SolutionName: 'Contoso_sample'
    SolutionOutputFile: 'C:\Public\Contoso_sample_1_0_0_1_managed.zip'
    Managed: true
    MaxAsyncWaitTime: 120
    ExportAutoNumberingSettings: true
    ExportCalendarSettings: true
    ExportCustomizationSettings: true
    ExportEmailTrackingSettings: true
    ExportGeneralSettings: true
    ExportIsvConfig: true
    ExportMarketingSettings: true
    ExportOutlookSynchronizationSettings: true
    ExportRelationshipRoles: true
    ExportSales: true

パラメーター (エクスポート)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
ソリューションをアップグレードする先のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
PowerPlatformSPN
Power Platform サービス プリンシパル
ソリューションをアップグレードする先のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
SolutionName
ソリューション名
(必須) エクスポートを行うソリューションの名称。 表示名 ではなく、ソリューションの 名前 を常に使用します。
SolutionOutputFile
ソリューション出力ファイル
(必須) ソース環境へのエクスポートを行う solution.zip ファイルのパスとファイル名称 (例: $(Build.ArtifactStagingDirectory)$(SolutionName).zip)。

注 : 変数を使用することで、パイプラインのさまざまな部分に重要なデータを簡単に取り込むことができます。 包括的なリストについては、事前定義された変数を使用する を参照してください。

AsyncOperation
非同期エクスポート
(true) を選択した場合、エクスポート操作は非同期バッチ ジョブとして実行されます。 非同期を選択すると、ポーリングが行われ、MaxAsyncWaitTime に達するまで待機します。
MaxAsyncWaitTime
最大待機時間
非同期操作の最大待機時間 (分単位)。既定は 60 分 (1 時間) で、タスクの Azure DevOps 既定値と同じです。
Managed
マネージドとしてエクスポート
(true) を選択した場合、ソリューションを管理ソリューションとしてエクスポートします。それ以外の場合は、管理されていないソリューションとしてエクスポートします。
ExportAutoNumberingSettings
自動番号設定のエクスポート
自動番号設定をエクスポートします (true|false)。
ExportCalendarSettings
カレンダー設定のエクスポート
カレンダー設定をエクスポートします (true|false)。
ExportCustomizationSettings
カスタマイズ設定のエクスポート
カスタマイズ設定をエクスポートします (true|false)。
ExportEmailTrackingSettings
メール トラッキング設定のエクスポート
メール トラッキング設定をエクスポートします (true|false)。
ExportGeneralSettings
全般設定のエクスポート
全般設定をエクスポートします (true|false)。
ExportIsvConfig
ISV 構成のエクスポート
ISV 構成をエクスポートします (true|false)。
ExportMarketingSettings
マーケティング設定のエクスポート
マーケティング設定をエクスポートします (true|false)。
ExportOutlookSynchronizationSettings
Outlook 同期設定のエクスポート
Outlook 同期設定をエクスポートします (true|false)。
ExportRelationshipRoles
リレーションシップ ロールのエクスポート
リレーションシップ ロールをエクスポートします (true|false)。
ExportSales
売上のエクスポート
売上をエクスポートします (true|false)。

Power Platform 展開ソリューション

圧縮されたソリューション ファイルを複数の XML ファイルに分解することで、これらのファイルをより簡単に読み取り、ソース管理システムで管理できるようにします。

YAML スニペット (アンパック)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.unpack-solution.PowerPlatformUnpackSolution@2
  displayName: 'Power Platform Unpack Solution '
  inputs:
    SolutionInputFile: 'C:\Public\Contoso_sample_1_0_0_1_managed.zip'
    SolutionTargetFolder: 'C:\Public'
    SolutionType: Both

パラメーター (アンパック)

パラメーター 内容
SolutionInputFile
ソリューション入力ファイル
(必須) 解凍をする solution.zip ファイルのパスと名称を指定します。
SolutionTargetFolder
ソリューションを展開する対象のフォルダ
(必須) ソリューションの展開を行う対象フォルダとパス。
SolutionType
ソリューションの種類
(必須) 解凍するソリューションの種類。 オプションには、アンマネージド (推奨)、管理その両方が含まれます。

Power Platform パック ソリューション

ソース コントロールに表示されているソリューションを solution.zip へと圧縮すると、このファイルを、他の環境へとインポートすることができます。

YAML スニペット (パック)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.pack-solution.PowerPlatformPackSolution@2
  displayName: 'Power Platform Pack Solution '
  inputs:
    SolutionSourceFolder: 'C:\Public'
    SolutionOutputFile: 'Contoso_sample_1_0_0_1_managed.zip'
    SolutionType: Managed

パラメーター (パック)

パラメーター 内容
SolutionOutputFile
ソリューション出力ファイル
(必須) solution.zip ファイルのパスとファイル名称を指定してソリューションの圧縮を行います。
SolutionSourceFolder
圧縮をするソリューションの対象フォルダ
(必須) 圧縮をするソリューションのパスとソース フォルダー。
SolutionType
ソリューションの種類
(必須) 圧縮するソリューションの種類。 オプションは次のとおりです: マネージド (推奨)、アンマネージド、および 両方

Power Platform 削除ソリューション

対象の環境でソリューションを削除します。

YAML スニペット (削除)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.delete-solution.PowerPlatformDeleteSolution@2
  displayName: 'Power Platform Delete Solution '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'Dataverse service connection '
    SolutionName: 'Contoso_sample'

パラメーター (削除)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
ソリューションを削除するサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
PowerPlatformSPN
Power Platform サービス プリンシパル
ソリューションを削除するサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
SolutionName
ソリューション名
(必須) 削除するソリューションの名前。 表示名 ではなく、ソリューションの 名前 を常に使用します。

Power Platform カスタマイズの公開

環境内のすべてのカスタマイズを公開します。

YAML スニペット (公開)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.publish-customizations.PowerPlatformPublishCustomizations@2
  displayName: 'Power Platform Publish Customizations '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'Dataverse service connection '

パラメーター (公開)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
カスタマイズを公開するサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
PowerPlatformSPN
Power Platform サービス プリンシパル
カスタマイズを公開するサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照

Power Platform セット ソリューション バージョン

ソリューションのバージョンを更新します。

YAML スニペット (バージョン)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.set-solution-version.PowerPlatformSetSolutionVersion@2
  displayName: 'Power Platform Set Solution Version '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'Dataverse service connection '
    SolutionName: 'Contoso_sample'
    SolutionVersionNumber: 1.0.0.0

パラメーター (バージョン)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
ソリューション バージョンを設定するサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
PowerPlatformSPN
Power Platform サービス プリンシパル
ソリューション バージョンを設定するサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
SolutionName
ソリューション名
(必須) バージョンを設定するソリューションの名前。 表示名 ではなく、ソリューションの 名前 を常に使用します。
SolutionVersionNumber
ソリューションのバージョン番号
(必須) 設定するバージョン番号。

パイプラインでバージョン番号をハードコーディングできますが、BuildId のような Azure DevOps パイプライン変数を使用することが推奨されます。 これにより、[オプション] タブでバージョン番号の正確な形状を定義するオプションが提供されます 例: $(Year:yyyy)-$(Month:MM)-$(Day:dd)-$(rev:rr)-3

この定義は、バージョン番号プロパティをハードコーディング 20200824.0.0.2 の代わりに $(Build.BuildId) で設定することにより、[ソリューション バージョンの設定] タスクで使用できます。

または、SolutionVersion という名前の空の変数が Write-Host ("##vso[task.setvariable variable=SolutionVersion;]$version") に、「ソリューション バージョンの設定」が $(SolutionVersion) に設定された PowerShell インライン タスク スクリプト $(Get-Date -Format yyyy.MM.dd.HHmm) 出力。

Power Platform による接続変数の設定

BuildTools.* 変数を設定して、サービス接続を信頼できる唯一の情報源として使用するためのカスタム スクリプト タスクへのアクセスを提供します。

YAML スニペット (SetConnectionVariables)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.set-connection-variables.PowerPlatformSetConnectionVariables@2
  displayName: 'Power Platform Set Connection Variables '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'Dataverse service connection '
  timeoutInMinutes: 2
  retryCountOnTaskFailure: 5

パラメータ (SetConnectionVariables)

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformSPN
Power Platform サービス プリンシパル
接続変数を設定するサービス エンドポイント。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
timeoutInMinutes
Timeout
サーバーによってキャンセルされるまでにタスクが実行できる最大時間を分単位で指定します。 値がゼロの場合は、無限のタイムアウトを示します。
retryCountOnTaskFailure
タスクが失敗した場合の再試行回数
タスクが失敗した場合にこのタスクが再試行される回数を指定します。 エージェントレスのタスクではサポートされません。
ApplicationId
ログインに使用するアプリケーション ID
(ユーザー名/パスワードに必須) ログインに使用するアプリケーションID (以下の追加の注記を参照)。
RedirectUri
特定のアプリのリダイレクト URI
(ユーザー名/パスワードに必須) 指定したアプリのリダイレクト URI です。 アプリ ID を指定する場合に必要です。(以下の追加メモを参照してください)。

メモ

ユーザー名/パスワード認証タイプを使用する場合、アプリケーション ID とリダイレクト URI が必要になります。 この oauth を認証する ドキュメントには、Dataverse で認証するためにアプリ登録を作成する必要がある理由についての説明があります。 ユーザー名/パスワード認証を使用して接続する場合、接続は、ユーザーの代わりに Dataverse に接続するアプリケーションとして動作します。

Power Platform 展開パッケージ

パッケージを環境に展開します。 単一のソリューション ファイルではなくパッケージを展開することで、複数のソリューション、データ、およびコードを環境に展開することができます。

YAML スニペット (デプロイ)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.deploy-package.PowerPlatformDeployPackage@2
  displayName: 'Power Platform Deploy Package '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'Dataverse service connection '
    PackageFile: 'C:\Users\Public\package.dll'
    MaxAsyncWaitTime: 120

パラメーター (デプロイ)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
パッケージをデプロイするサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
PowerPlatformSPN
Power Platform サービス プリンシパル
パッケージをデプロイするサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。 詳細: Power Platform が環境を作成するBuildTools.EnvironmentUrl を参照
PackageFile
パッケージ ファイル
(必須) パッケージ ファイル アセンブリ (.dll) のパスとファイル名。
MaxAsyncWaitTime
最大待機時間
非同期操作の最大待機時間 (分単位)。既定は 60 分 (1 時間) で、タスクの Azure DevOps 既定値と同じです。

環境管理のタスク

一般的な Environment Lifecycle Management (ELM) タスクを自動化します。

Power Platform 環境の作成

新しい環境を作成します。 新しい環境を作成すると、BuildTools.EnvironmentUrl が自動的に作成されます。

重要

設定すると、BuildTools.EnvironmentUrl が、パイプラインの後続のタスク用の既定のサービス接続として使用されます。 BuildTools.EnvironmentUrl が設定されていない場合、この記事で説明する各タスクは、サービス接続からのエンドポイントのみを使用します。

新しい環境は、追加の環境作成に対するライセンスが付与されている、または処理可能な容量が存在する場合にのみ、プロビジョニングすることができます。 キャパシティを表示する方法の詳細については、キャパシティページの詳細を参照してください。

YAML スニペット (Create-env)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.create-environment.PowerPlatformCreateEnvironment@2
  displayName: 'Power Platform Create Environment '
  inputs:
    PowerPlatformEnvironment: 'My service connection'
    DisplayName: 'First Coffee test'
    DomainName: firstcoffee
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.create-environment.PowerPlatformCreateEnvironment@2
  displayName: 'Power Platform Create Environment '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'Dataverse service connection '
    DisplayName: 'First Coffee prod'
    EnvironmentSku: Production
    AppsTemplate: 'D365_CustomerService,D365_FieldService'
    LocationName: canada
    LanguageName: 1036
    CurrencyName: ALL
    DomainName: firstcoffee

パラメーター (Create-env)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
環境を作成するサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
PowerPlatformSPN
Power Platform サービス プリンシパル
環境を作成するサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
DisplayName
表示名です
(必須) 作成された環境の表示名称です。
LocationName
展開リージョン
(必須) 環境が作成される領域です。
EnvironmentSku
環境の種類
(必須) デプロイするインスタンスの種類です。 オプションは、SandboxProductionTrial、および SubscriptionBasedTrial です。
AppsTemplate
アプリ
非試用環境タイプの場合、サポートされるアプリは D365_CustomerService、D365_FieldService、D365_ProjectServiceAutomation、および D365_Sales です。
CurrencyName
通貨
(必須) 作成された環境で使用する基本通貨です。 環境の作成後に通貨を更新することはできません。
LanguageName
Language
(必須) 環境で使用する基本言語です。
DomainName
ドメイン名
(必須) これは、URL の一部を構成する環境固有の文字列です。 たとえば、ある環境が URL: https://powerappsbuildtasks.crm.dynamics.com/ を使用している場合、ドメイン名は「powerappsbuildtasks」です。

注: 既に使用されているドメインを入力した場合、タスクは 0 から始まる数値をドメイン名に追加します。 上記例では、URL は https://powerappsbuildtasks0.crm.dynamics.com/ になります。

Power Platform 環境の削除

環境を削除します。

YAML スニペット (Delete-env)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.delete-environment.PowerPlatformDeleteEnvironment@2
  displayName: 'Power Platform Delete Environment '
  inputs:
    PowerPlatformEnvironment: 'My service connection'

パラメーター (Delete-env)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
環境を削除するサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
PowerPlatformSPN
Power Platform サービス プリンシパル
環境を削除するサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。

Power Platform 割り当てユーザー

指定したセキュリティ ロールを持つターゲット環境にユーザーを割り当てます。

YAML スニペット (AssignUser-env)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.assign-user.PowerPlatformAssignUser@2
  displayName: 'Power Platform Assign User '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    User: EnvironmentUsername
    Role: 'Environment Maker'
    ApplicationUser: true

パラメーター (AssignUser-env)

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformSPN
Power Platform サービス プリンシパル
ユーザーを割り当てる対象の環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
User
Power Platform ユーザー名
ターゲット環境に割り当てる Microsoft Entra オブジェクト ID またはユーザーのプリンシパル名。
Role
セキュリティ ロール名または ID
ユーザーに割り当てるセキュリティ ロール名または ID
ApplicationUser
Power Platform アプリケーションのユーザー名
入力ユーザーがアプリケーション ユーザーかどうかを指定します (true|false)。

Power Platform 環境のリセット

環境のリセット。

YAML スニペット (Reset-env)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.reset-environment.PowerPlatformResetEnvironment@2
  displayName: 'Power Platform Reset Environment '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    CurrencyName: ALL
    Purpose: 'Reset to PointInTime'
    AppsTemplate: 'D365_CustomerService,D365_FieldService'

パラメーター (Reset-env)

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
環境をリセットするサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
PowerPlatformSPN
Power Platform サービス プリンシパル
環境をリセットするサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。

Power Platform 環境のバックアップ

環境をバックアップします。

YAML スニペット (Backup-env)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.backup-environment.PowerPlatformBackupEnvironment@2
  displayName: 'Power Platform Backup Environment '
  inputs:
    PowerPlatformEnvironment: 'My service connection'
    BackupLabel: 'Full backup - $(Build.BuildNumber)'

パラメーター (Backup-env)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
環境をバックアップするサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
PowerPlatformSPN
Power Platform サービス プリンシパル
環境をバックアップするサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
BackupLabel
バックアップ ラベル
(必須) バックアップに割り当てるラベル。

Power Platform 環境のコピー

環境を対象の環境にコピーします。 次の2つの種類のコピーを利用できます : 完全コピー、最小コピー。 完全 コピーではデータとソリューションのメタデータ (カスタマイズ) の両方がコピーされますが、最小 コピーではソリューションのメタデータのみがコピーされ、実際のデータはコピーされません。

YAML スニペット (Copy-env)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.copy-environment.PowerPlatformCopyEnvironment@2
  displayName: 'Power Platform Copy Environment '
  inputs:
    PowerPlatformEnvironment: 'My service connection'
    TargetEnvironmentUrl: 'https://contoso-test.crm.dynamics.com'
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.copy-environment.PowerPlatformCopyEnvironment@2
  displayName: 'Power Platform Copy Environment '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: 'Dataverse service connection '
    TargetEnvironmentUrl: 'https://contoso-test.crm.dynamics.com'
    CopyType: MinimalCopy
    OverrideFriendlyName: true
    FriendlyName: 'Contoso Test'
    SkipAuditData: true

パラメーター (Copy-env)

パラメーター 内容
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
コピーする元のソース環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
PowerPlatformSPN
Power Platform サービス プリンシパル
コピーする元のソース環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
TargetEnvironmentUrl
ターゲット環境 URL
(必須) コピー先の対象環境の URL。
CopyType
コピーの種類
実行するコピーの種類: FullCopy または MinimalCopy
OverrideFriendlyName
フレンドり名をオーバーライドする
ターゲット環境のフレンドリ名を別の名前に変更します (true|false)。
FriendlyName
フレンドリ名
ターゲット環境のフレンドリ名です。
SkipAuditData
SkipAuditData (監査データのスキップ)
コピー操作中に監査データをスキップするかどうか。 (true|false)。

Power Platform 環境の復元

指定されたバックアップに環境を復元します。

YAML スニペット (Restore-env)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.restore-environment.PowerPlatformRestoreEnvironment@2
  displayName: 'Power Platform Restore Environment '
  inputs:
    PowerPlatformEnvironment: 'My service connection'
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    TargetEnvironmentUrl: 'https://contoso-test.crm.dynamics.com'
    RestoreLatestBackup: false
    RestoreTimeStamp: '12/01/2022 09:00'
    FriendlyName: 'Contoso Test'

パラメーター (Restore-env)

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformEnvironment
Power Platform 環境 URL
復元する元のソース環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
PowerPlatformSPN
Power Platform サービス プリンシパル
復元する元のソース環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
RestoreLatestBackup
復元する最新のバックアップ
最新のバックアップを復元するか、RestoreTimeStamp (true|false) を提供します。
RestoreTimeStamp
バックアップの日時
バックアップの日時を 'mm/dd/yyyy hh:mm' または文字列 'latest' で指定します。
TargetEnvironmentUrl
ターゲット環境 URL
(必須) 復元するターゲット環境の URL。
FriendlyName
復元された環境の名前です
復元された環境の名前 (省略可能) です。
DisableAdminMode
管理モードの無効化
管理モードを無効にするかどうか (true|false)。

Dataverse データのエクスポート

指定されたスキーマを使用して環境からデータをエクスポートします。

YAML スニペット (exportdata-env)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.export-data.PowerPlatformExportData@2
  displayName: 'Power Platform Export Data '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    SchemaFile: 'C:\tempschema.xml'
    DataFile: exportdata.zip
    Overwrite: true

パラメーター (exportdata-env)

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformSPN
Power Platform サービス プリンシパル
データのエクスポートを行う対象の環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
SchemaFile
スキーマ XML ファイル名
スキーマ XML ファイル名。 構成移行ツールを使用して作成できます。
DataFile
データ ファイル名
エクスポートするデータのファイル名 (zip ファイル)。
Overwrite
コンテンツの上書き
上書きする Power Pages Web サイト コンテンツ (true|false)。

Dataverse データのインポート

データを環境にインポートします。

YAML スニペット (importdata-env)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.import-data.PowerPlatformImportData@2
  displayName: 'Power Platform Import Data '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    DataFile: 'C:\Data\Import.zip'

パラメーター (importdata-env)

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformSPN
Power Platform サービス プリンシパル
データのインポートを行う対象の環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
DataFile
データ ファイル名
圧縮 zip のファイル名) インポートするデータ ファイル、またはインポートする data-schema.xml および data.xml を含むフォルダー。

Power Pages 管理タスク

Power Pages Web サイトを使用するためのタスク。

Power Platform ダウンロード PAPortal

現在の Dataverse 環境から Power Pages Web サイト コンテンツをダウンロードします。

YAML スニペット (download-paportal)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.download-paportal.PowerPlatformDownloadPaportal@2
  displayName: 'Power Platform Download PAPortal '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    DownloadPath: 'C:\portals'
    WebsiteId: 'f88b70cc-580b-4f1a-87c3-41debefeb902'
    Overwrite: true

パラメーター (download-paportal)

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformSPN
Power Platform サービス プリンシパル
コンテンツをダウンロードする元のソース環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
WebsiteId
ポータル Web サイトの ID
ダウンロードする Power Pages Web サイト ID。
Overwrite
コンテンツの上書き
上書きする Power Pages Web サイト コンテンツ (true|false)。
ModelVersion
サイト データ モデル
アップロードするサイト データが標準 (1) を使用するか、拡張データ モデル (2) を使用するかを示します。 既定値は「1」です。

Power Platform アップロード PAPortal

現在の Dataverse 環境に Power Pages Web サイトのコンテンツをアップロードします。

YAML スニペット (upload-paportal)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.upload-paportal.PowerPlatformUploadPaportal@2
  displayName: 'Power Platform Upload PAPortal '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    UploadPath: 'C:\portals\starter-portal'

パラメーター (upload-paportal)

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformSPN
Power Platform サービス プリンシパル
コンテンツのアップロードを行う対象の環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
UploadPath
アップロード コンテンツ パス
Power Pages Web サイトのコンテンツをアップロードするパス。
ModelVersion
サイト データ モデル
アップロードするサイト データが標準 (1) を使用するか、拡張データ モデル (2) を使用するかを示します。 既定値は「1」です。

Power Platform タスクのカタログ (プレビュー)

これらのタスクでは、Power Platform のカタログに対してアクションを実行し、以下のタスクが含まれます。

注意

現在、Power Platform のカタログ タスクが プレビュー リリースされています。

カタログ アイテムのインストール

ターゲット環境に Catalog の項目をインストールします。

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformSPN
Power Platform サービス プリンシパル
コンテンツのアップロードを行う対象の環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
Environment
ターゲット環境 URL
(必須) このタスクが対象とする環境の URL。
CatalogItemId
インストールするカタログのアイテム ID
(必須) ターゲット環境にインストールされるカタログ アイテム。
TargetEnvironmentUrl
ターゲット環境 URL
(必須) カタログ アイテムをインストールするターゲット環境の URL (例: "https://YourOrg.crm.dynamics.com")。
PollStatus
ポーリングの状態の確認
(オプション) ポーリングしてリクエストのステータスを確認します (true|false)。

パラメーター (カタログ インストール)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools-DEV.install-catalog.PowerPlatformInstallCatalog@2
  displayName: 'Power Platform Install Catalog '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    Environment: '$(BuildTools.EnvironmentUrl)'
    CatalogItemId: '00000000-0000-0000-0000-000000000001'
    TargetEnvironmentUrl: 'https://test.crm.dynamics.com/'
    PollStatus: true

カタログ承認の送信

Catalog 承認要求を送信します。

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformSPN
Power Platform サービス プリンシパル
コンテンツのアップロードを行う対象の環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
Environment
ターゲット環境 URL
(必須) このタスクが対象とする環境の URL。
CatalogSubmissionFile
カタログ提出ファイル
(必須) カタログ投稿ファイルのパスとファイル名を指定します。
UsePackageSolutionZipFile
ファイルの種類
ファイルの種類: パッケージまたはソリューションの zip ファイル。
SolutionZipFile
ソリューションの ZIP ファイルの名称
展開をする solution.zip ファイルのパスと名称を指定します。
PollStatus
ポーリングの状態の確認
(オプション) ポーリングしてリクエストのステータスを確認します (true|false)。

パラメーター (カタログ送信)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools-DEV.submit-catalog.PowerPlatformSubmitCatalog@2
  displayName: 'Power Platform Submit Catalog '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    Environment: '$(BuildTools.EnvironmentUrl)'
    CatalogSubmissionFile: submission.json
    UsePackageSolutionZipFile: true
    FileType: SolutionZipFile
    SolutionZipFile: solution.zip
    PollStatus: true

カタログ要求の状態

カタログのインストール/送信リクエストの状態を取得します。

Parameters Description
authenticationType
認証の種類
(SPN には必須) ユーザー名/パスワード接続の場合は PowerPlatformEnvironment を、サービス プリンシパル/クライアント シークレット接続の場合は PowerPlatformSPN を指定します。
PowerPlatformSPN
Power Platform サービス プリンシパル
コンテンツのアップロードを行う対象の環境のサービス エンドポイント (例: https://powerappsbuildtools.crm.dynamics.com)。 Power Platform 接続タイプを使って、プロジェクト設定サービスの接続で定義されています。
Environment
ターゲット環境 URL
(必須) このタスクが対象とする環境の URL。
TrackingId
要求追跡 ID
(必須) 要求追跡 ID
RequestType
要求の種類
(必須) 要求のタイプ。 (値: インストール | 送信)。

パラメーター (カタログの状態)

steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools-DEV.catalog-status.PowerPlatforCatalogStatus@2
  displayName: 'Power Platform Catalog Status '
  inputs:
    authenticationType: PowerPlatformSPN
    PowerPlatformSPN: Build
    Environment: '$(BuildTools.EnvironmentUrl)'
    TrackingId: '00000000-0000-0000-0000-000000000002'
    RequestType: Submit

パイプラインを構築してリリースする

構築ツールを使用して何ができるかがわかったところで、これらのツールを構築およびリリース パイプラインに適用する方法を見てみましょう。 概念的な概要を以下に示します。 次のサブセクションで、ツール構成タスクを使用したパイプライン実装の詳細を案内します。

これらのパイプライン作成の詳細を身につけ、Microsoft Power Platform ビルド ツールを使ってパイプラインのオーサリングを行うには、GitHub からダウンロードできるビルド ツール ラボを完成させる必要があります。

Azure Pipelines パイプラインの詳細については、Azure Pipelines を使用する を参照してください

パイプラインの構築: 開発環境 (DEV) からソリューションをエクスポートする

次の図は、開発環境からソリューションをエクスポートするパイプラインに追加できる構築ツール タスクを示しています。

開発環境 (DEV) からソリューションをエクスポートします。

パイプラインの構築: マネージド ソリューションを構築する

次の図は、マネージド ソリューションを構築するパイプラインに追加できる構築ツール タスクを示しています。

マネージド ソリューションを構築します。

リリース パイプライン: 運用環境 (PROD) に展開する

次の図は、運用環境に展開するパイプラインに追加できる構築ツール タスクを示しています。

運用環境 (PROD) に展開します。

関連情報

Microsoft Power Platform Build Tools for Azure DevOps