Microsoft Power Platform 生成工具任务
以下各节介绍了可用的生成任务。 之后,我们将展示一些利用这些任务的示例 Azure 管道。 有关构建工具以及如何下载的信息,请参见用于 Azure Pipelines 的 Microsoft Power Platform 构建工具。
帮助程序任务
下面介绍可用的助手任务。
Power Platform 工具安装程序
需要在生成和发布管道中在任何其他 Power Platform Build Tools 任务之前添加一次此任务。 此任务安装代理运行 Microsoft Power Platform 生成任务所需的一组 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 检查器终结点 |
当 UseDefaultPACheckerEndpoint 为 false 时需要。 您可以指定要使用的其他地区,例如,https://japan.api.advisor.powerapps.com. 。要获取可用地区的列表,请参阅使用 Power Platform 检查器 API。 |
FileLocation 要分析的文件所在的位置 |
从共享访问签名 (SAS) URL sasUriFile 引用文件时需要。注意:请务必参考导出的解决方案文件,而不是存储库中未打包的源文件。 托管和非托管解决方案文件都可以分析。 |
FilesToAnalyzeSasUri 要分析的 SAS 文件 |
当 FileLocation 设置为 sasUriFile 时需要。 输入 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 规则集 |
(必需)指定要应用的规则集。 可以使用以下两个规则集:
|
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
参数(添加)
参数设置 | 说明 |
---|---|
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 默认值相同。 |
备注
变量为您提供了一种将数据的关键位放入管道各个部分的方便方法。 有关完整列表,请参阅使用预定义的变量。 您可以在使用部署设置文件导入解决方案时预填充目标环境的连接引用和环境变量信息。
详细信息:为自动部署预填充连接引用和环境变量
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 解决方案版本号 |
(必需)您要设置的版本号。 |
虽然版本号可以在管道中硬编码,但建议使用 Azure DevOps 管道变量,如BuildId。 这将提供在“选项”选项卡下定义版本号确切形式的选项,例如:$(Year:yyyy)-$(Month:MM)-$(Day:dd)-$(rev:rr)-3
然后,可以通过将版本号属性设置为 $(Build.BuildId) 而不是硬编码 20200824.0.0.2,来在“设置解决方案版本”任务中使用此定义。
或者,powershell 内联任务脚本 $(Get-Date -Format yyyy.MM.dd.HHmm) 输出设置为作为 Write-Host ("##vso[task.setvariable variable=SolutionVersion;]$version") 的名为 SolutionVersion 的空变量,将解决方案版本设置为 $(SolutionVersion)。
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)
参数设置 | 描述 |
---|---|
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 默认值相同。 |
环境管理任务
自动执行常见环境生命周期管理 (ELM) 任务。
Power Platform 创建环境
创建新环境。 创建新环境还会自动创建 BuildTools.EnvironmentUrl
。
重要提示
设置后,BuildTools.EnvironmentUrl
将用作管道中后续任务的默认服务连接。 本文中介绍的每个任务仅在未设置 BuildTools.EnvironmentUrl
时使用来自服务连接的终结点。
只有当您的许可证或容量允许创建其他环境时,才能预置新环境。 有关如何查看产能的详细信息,请参阅产能页详细信息。
YAML 片段(创建环境)
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
参数(创建环境)
参数 | 描述 |
---|---|
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 环境类型 |
(必填)要部署的实例的类型。 选项有 Sandbox、Production、Trial 和 SubscriptionBasedTrial。 |
AppsTemplate 应用 |
对于非试用环境类型,支持的应用为 D365_CustomerService、D365_FieldService、D365_ProjectServiceAutomation 和 D365_Sales。 |
CurrencyName 货币 |
(必填)创建的环境的基础货币。 货币在创建环境后无法更新。 |
LanguageName Language |
(必填)环境中的基本语言。 |
DomainName 域名 |
(必填)这是环境特定且构成 URI 一部分的字符串。 例如,对于 URL 为 https://powerappsbuildtasks.crm.dynamics.com/ 的环境,域名为“powerappsbuildtasks”。 注意:如果您输入已在使用的域名,则任务会将一个数值附加到域名,从 0 开始。 在上面的示例中,URL 可能变为 |
Power Platform 删除环境
删除环境。
YAML 片段(删除环境)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.delete-environment.PowerPlatformDeleteEnvironment@2
displayName: 'Power Platform Delete Environment '
inputs:
PowerPlatformEnvironment: 'My service connection'
参数(删除环境)
参数 | 描述 |
---|---|
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)
参数设置 | 说明 |
---|---|
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)
参数设置 | 说明 |
---|---|
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 片段(备份环境)
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)'
参数(备份环境)
参数 | 描述 |
---|---|
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 复制环境
将环境复制到目标环境。 有两种复制类型:全部和最少。 全部复制中同时包含数据和解决方案元数据(自定义设置),而最少复制中仅包含解决方案元数据,不包含实际数据。
YAML 片段(复制环境)
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'
DisableAdminMode: false
参数(复制环境)
参数 | 描述 |
---|---|
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 易记名称 |
目标环境的易记名称。 |
DisableAdminMode 禁用管理模式 |
是否禁用管理模式 (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)
参数设置 | 说明 |
---|---|
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)
参数设置 | 说明 |
---|---|
authenticationType 身份验证的类型 |
(SPN 需要)为用户名/密码连接指定 PowerPlatformEnvironment,或为服务主体/客户端密码连接指定 PowerPlatformSPN。 |
PowerPlatformSPN Power Platform 服务主体 |
您要从中导出数据的环境的服务终结点(例如,https://powerappsbuildtools.crm.dynamics.com )。 在项目设置中的服务连接下使用 Power Platform 连接类型定义。 |
SchemaFile 架构 XML 文件名 |
架构 XML 文件名。 可以使用 Configuration Migration tool 创建。 |
DataFile 数据文件名 |
要导出的数据的文件名(zip 文件)。 |
Overwrite 内容覆盖 |
要覆盖的 Power Pages 网站内容 (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)
参数设置 | 说明 |
---|---|
authenticationType 身份验证的类型 |
(SPN 需要)为用户名/密码连接指定 PowerPlatformEnvironment,或为服务主体/客户端密码连接指定 PowerPlatformSPN。 |
PowerPlatformSPN Power Platform 服务主体 |
您要导入数据的环境的服务终结点(例如,https://powerappsbuildtools.crm.dynamics.com )。 在项目设置中的服务连接下使用 Power Platform 连接类型定义。 |
DataFile 数据文件名 |
压缩 zip 的文件名)要导入的数据文件,或包含要导入的 data-schema.xml 和 data.xml 的文件夹。 |
Power Pages management 任务
使用 Power Pages 网站的任务。
Power Platform 下载 PAPortal
从当前 Dataverse 环境下载 Power Pages 网站内容。
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)
参数设置 | 说明 |
---|---|
authenticationType 身份验证的类型 |
(SPN 需要)为用户名/密码连接指定 PowerPlatformEnvironment,或为服务主体/客户端密码连接指定 PowerPlatformSPN。 |
PowerPlatformSPN Power Platform 服务主体 |
您要从中下载内容的环境的服务终结点(例如,https://powerappsbuildtools.crm.dynamics.com )。 在项目设置中的服务连接下使用 Power Platform 连接类型定义。 |
WebsiteId 门户网站 ID |
要下载的 Power Pages 网站 ID。 |
Overwrite 内容覆盖 |
要覆盖的 Power Pages 网站内容 (true|false)。 |
ModelVersion 站点数据模型 |
指示要上传的站点数据是使用标准 (1 ) 还是增强型数据模型 (2 )。 默认值为 '1'。 |
Power Platform 上传 PAPortal
将 Power Pages 网站内容上载到当前的 Dataverse 环境。
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)
参数设置 | 说明 |
---|---|
authenticationType 身份验证的类型 |
(SPN 需要)为用户名/密码连接指定 PowerPlatformEnvironment,或为服务主体/客户端密码连接指定 PowerPlatformSPN。 |
PowerPlatformSPN Power Platform 服务主体 |
您要上传内容的环境的服务终结点(例如,https://powerappsbuildtools.crm.dynamics.com )。 在项目设置中的服务连接下使用 Power Platform 连接类型定义。 |
UploadPath 上载内容路径 |
将用于上载 Power Pages 网站内容的路径。 |
ModelVersion 站点数据模型 |
指示要上传的站点数据是使用标准 (1 ) 还是增强型数据模型 (2 )。 默认值为 '1'。 |
Power Platform 任务目录(预览版)
这些任务根据 Power Platform 中的目录执行操作,并包括以下内容。
备注
当前,Power Platform 的目录任务为预览版本。
安装目录项
将 catalog 项安装到目标环境。
参数设置 | 说明 |
---|---|
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)。 |
参数 (catalog-install)
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 审批请求。
参数设置 | 说明 |
---|---|
authenticationType 身份验证的类型 |
(SPN 需要)为用户名/密码连接指定 PowerPlatformEnvironment,或为服务主体/客户端密码连接指定 PowerPlatformSPN。 |
PowerPlatformSPN Power Platform 服务主体 |
您要上传内容的环境的服务终结点(例如,"https://powerappsbuildtools.crm.dynamics.com")。 在项目设置中的服务连接下使用 Power Platform 连接类型定义。 |
Environment 目标环境 URL |
(必需)此任务的目标环境 URL。 |
CatalogSubmissionFile 目录提交文件 |
(必需)指定目录提交文件的路径和文件名。 |
UsePackageSolutionZipFile 文件类型 |
文件类型:包或解决方案 zip 文件。 |
SolutionZipFile 解决方案 zip 文件名 |
指定解决方案 zip 文件的路径和文件名。 |
PollStatus 检查轮询状态 |
(可选)轮询以检查请求的状态 (true|false)。 |
参数 (catalog-submit)
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
目录请求状态
获取目录安装/提交请求的状态。
参数设置 | 说明 |
---|---|
authenticationType 身份验证的类型 |
(SPN 需要)为用户名/密码连接指定 PowerPlatformEnvironment,或为服务主体/客户端密码连接指定 PowerPlatformSPN。 |
PowerPlatformSPN Power Platform 服务主体 |
您要上传内容的环境的服务终结点(例如,"https://powerappsbuildtools.crm.dynamics.com")。 在项目设置中的服务连接下使用 Power Platform 连接类型定义。 |
Environment 目标环境 URL |
(必需)此任务的目标环境 URL。 |
TrackingId 请求跟踪 ID |
(必需)请求跟踪 ID。 |
RequestType 请求类型 |
(必需)请求类型。 (值:安装 | 提交)。 |
参数 (catalog-status)
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 Build Tools 实际动手创作管道,请完成 build tools 实验,您可以从 GitHub 下载。
有关 Azure Pipelines 的详细信息:使用 Azure Pipelines
生成管道:从开发环境 (DEV) 中导出解决方案
下图显示了您可以添加到从开发环境导出解决方案的管道中的生成工具任务。
生成管道:生成托管解决方案
下图显示了您可以添加到生成托管解决方案的管道中的生成工具任务。
发布管道:部署到生产环境 (PROD)
下图显示了您可以添加到部署到生产环境的管道中的生成工具任务。