本文提供有关可用于管理 Microsoft Power Platform 的 GitHub Actions 的信息。
配置要在 GitHub 工作流内使用的凭据
许多操作都要求您连接到 Microsoft Dataverse 环境。 您可以将服务主体或用户凭据添加为 GitHub 存储库中的密钥,然后在工作流中使用它们。
有关如何在 GitHub 中设置密码的详细信息,请转到在工作流中使用加密密码。
要了解如何为 Microsoft Power Platform 设置服务主体身份验证的详细信息,请转到使用服务主体配置服务连接。 正确配置后,可以从操作脚本内调用服务主体。
在您的 GitHub Actions 脚本中将以下参数定义为环境变量:
- 应用程序 ID:
WF_APPLICATION_ID:<your application id> - 租户 ID:
WF_TENANT_ID:<your tenant id>
如加密密码中所述,客户端密码将作为 GitHub 密码存储,并使用 client secret: ${{secrets.CLIENT_SECRET_GITHUB_ACTIONS}} 这样的参数从操作脚本内引用。
管理任务
下面将说明可执行的管理任务。
创建环境
| 参数 | 描述 |
|---|---|
| user-name | 您用于连接的帐户的用户名。 |
| password-secret | user-name 的密码。 GitHub 密码在设置中密码下定义。 密码在定义并保存后不可检索。 |
| app-id | 用于进行身份验证的应用程序 ID。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| client-secret | 用于对 GitHub 管道进行身份验证的客户端密码。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| tenant-id | 使用 app-id 和 client-secret 进行身份验证时的租户 ID。 |
| 姓名 | 要创建的环境的名称。 |
| 区域 | 将在其中创建环境的区域的名称。 默认值为 unitedstates。 |
| 类型 | 环境的类型(试用、沙盒、生产、SubscriptionBasedTrial)。 详细信息:试用环境 |
| 货币 | 用于环境的货币。 默认值为 USD。 |
| 语言 | 用于环境的语言。 默认值为 English。 |
| 模板 | 需要部署到环境的模板。 作为逗号分隔值传输。 |
| 域 | 环境 URL 的域名。 例如, https://{contoso}0.crm.dynamics.com |
输出将是新环境的 URL。
复制环境
| 参数 | 描述 |
|---|---|
| source-url | 要复制的环境的源 URL。 例如, https://source-env.crm.dynamics.com |
| target-url | 要复制的环境的目标 URL。 例如, https://target-copy-env.crm.dynamics.com |
| user-name | 您用于连接的帐户的用户名。 |
| password-secret | user-name 的密码。 GitHub 密码在设置中密码下定义。 密码在定义并保存后不可检索。 |
| app-id | 用于进行身份验证的应用程序 ID。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| client-secret | 用于对 GitHub 管道进行身份验证的客户端密码。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| tenant-id | 使用 app-id 和 client-secret 进行身份验证时的租户 ID。 |
备份环境
| 参数 | 描述 |
|---|---|
| environment-url | 需要备份的环境的 URL。 例如, https://env-to-backup.crm.dynamics.com |
| backup-label | 一个有意义的名称,用作环境备份的标签。 |
| user-name | 您用于连接的帐户的用户名。 |
| password-secret | user-name 的密码。 GitHub 密码在设置中密码下定义。 密码在定义并保存后不可检索。 |
| app-id | 用于进行身份验证的应用程序 ID。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| client-secret | 用于对 GitHub 管道进行身份验证的客户端密码。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| tenant-id | 使用 app-id 和 client-secret 进行身份验证时的租户 ID。 |
从备份还原环境
| 参数 | 描述 |
|---|---|
| source-url | 要还原的环境的源 URL。 例如, https://env-backup-source.crm.dynamics.com |
| target-url | 要还原到的环境的目标 URL。 例如, https://env-target-restore.crm.dynamics.com |
| user-name | 您用于连接的帐户的用户名。 |
| password-secret | user-name 的密码。 GitHub 密码在设置中密码下定义。 密码在定义并保存后不可检索。 |
| app-id | 用于进行身份验证的应用程序 ID。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| client-secret | 用于对 GitHub 管道进行身份验证的客户端密码。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| tenant-id | 使用 app-id 和 client-secret 进行身份验证时的租户 ID。 |
重置环境
| 参数 | 描述 |
|---|---|
| environment-url | 需要重置的环境的 URL。 例如, https://env-to-reset.crm.dynamics.com |
| user-name | 您用于连接的帐户的用户名。 |
| password-secret | user-name 的密码。 GitHub 密码在设置中密码下定义。 密码在定义并保存后不可检索。 |
| app-id | 用于进行身份验证的应用程序 ID。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| client-secret | 用于对 GitHub 管道进行身份验证的客户端密码。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| tenant-id | 使用 app-id 和 client-secret 进行身份验证时的租户 ID。 |
删除环境
| 参数 | 描述 |
|---|---|
| environment-url | 需要删除的环境的 URL。 例如, https://env-to-delete.crm.dynamics.com |
| user-name | 您用于连接的帐户的用户名。 |
| password-secret | user-name 的密码。 GitHub 密码在设置中密码下定义。 密码在定义并保存后不可检索。 |
| app-id | 用于进行身份验证的应用程序 ID。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| client-secret | 用于对 GitHub 管道进行身份验证的客户端密码。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| tenant-id | 使用 app-id 和 client-secret 进行身份验证时的租户 ID。 |
帮助程序任务
下面介绍了可用的帮助程序任务。
WhoAmI
通过连接到服务并发送 WhoAmI [SDK/Web API] 请求来验证服务连接。 在您的 DevOps 管道中要提前包含,以便在处理开始之前验证连接时,此任务可能非常有用。
| 参数 | 描述 |
|---|---|
| environment-url | 您连接到的环境的 URL。 |
| user-name | 您用于连接的帐户的用户名。 |
| password-secret | user-name 的密码。 GitHub 密码在设置中密码下定义。 密码在定义并保存后不可检索。 |
| app-id | 用于进行身份验证的应用程序 ID。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| client-secret | 用于对 GitHub 管道进行身份验证的客户端密码。 在使用服务主体凭据进行身份验证时,需要此参数。 |
| tenant-id | 使用 app-id 和 client-secret 进行身份验证时的租户 ID。 |
生成和发布管道创作
要了解使用适用于 Microsoft Power Platform 的 GitHub Actions 通过动手创作来创建多操作工作流和管道的信息,请完成适用于 Microsoft Power Platform 的 GitHub Actions 实验。
详细信息:关于 GitHub Actions