Power Pages 的 Microsoft Power Platform CLI 支持
Microsoft Power Platform CLI(命令行界面)是一个简单的一站式开发人员命令行界面,它让开发人员和应用制作者能够创建代码组件。
Microsoft Power Platform CLI 工具是走向综合应用程序生命周期管理 (ALM) 故事的第一步,让企业开发人员和 ISV 可以快速、高效地创建、构建、调试和发布他们的扩展和自定义。 有关更多信息,请访问什么是 Microsoft Power Platform CLI?
借助此功能,Microsoft Power Platform CLI 可以对 Power Pages 站点配置实现 CI/CD(持续集成/持续部署)。 现在,您可以使用 Microsoft Power Platform CLI 将网站配置签入源控件并将网站配置移动到任何环境。
备注
- 从 Power Platform CLI 版本 1.9.8 开始,此功能正式发布。 要了解如何安装最新版本,请转到安装 Microsoft Power Platform CLI。
- 从 Power Platform CLI 版本 1.27 开始,
pac paportal
命令更改为pac powerpages
。paportal
仍然有效,但是我们建议继续使用powerpages
。 这篇文章将很快更新为使用powerpages
而不是paportal
。
为什么要使用 Microsoft Power Platform CLI 进行网站开发?
借助 Microsoft Power Platform CLI,您现在可以通过更改网站内容来使用类似于脱机的功能进行网站自定义。 保存所有自定义或更改后,可以将网站配置上传回 Microsoft Dataverse。 当您使用 Microsoft Power Platform CLI 下载网站内容时,内容采用 YAML 和 HTML 格式进行结构化,以便于自定义,从而实现专业开发体验。
以下是门户通过 Microsoft Power Platform CLI 支持从中受益的功能列表:
易于使用
支持在本地文件系统中下载/上传网站配置数据
基于现有 Microsoft Power Platform CLI 工具构建。
应用程序生命周期管理 (ALM)
跟踪对组织内的网站配置所做的更改
跨组织或租户移动配置文件
专业开发和企业支持
帮助与任何源代码管理工具无缝集成,如“git”
轻松设置 CI/CD 管道
安装 Microsoft Power Platform CLI
有关分步说明,请参阅安装 Microsoft Power Platform CLI。
支持的表
门户对 Microsoft Power Platform CLI 的支持仅限于下表。
adx_ad
adx_adplacement
adx_blog
adx_blogpost
adx_botconsumer
adx_communityforum
adx_communityforumaccesspermission
adx_contentsnippet
adx_entityform
adx_entityformmetadata
adx_entitylist
adx_entitypermission
adx_forumthreadtype
adx_pagetemplate
adx_poll
adx_polloption
adx_pollplacement
adx_portallanguage
adx_publishingstate
adx_redirect
adx_shortcut
adx_sitemarker
adx_sitesetting
adx_tag
adx_urlhistory
adx_webfile
adx_webform
adx_webformmetadata
adx_webformstep
adx_weblink
adx_weblinkset
adx_webpage
adx_webpageaccesscontrolrule
adx_webrole
adx_website
adx_websiteaccess
adx_websitebinding(仅下载)
adx_websitelanguage
adx_webtemplate
annotation
重要提示
- 使用 Microsoft Power Platform CLI 进行自定义不支持自定义表和门户模板特定表(如博客、社区或观点门户)。
- 未使用 Power Platform CLI 下载广告 (adx_ad) 记录的图像文件附件。 作为一种解决方法,请使用图像 URL 字段,或者将复制字段中的 HTML 引用添加到包含图像文件的 Web 文件记录中。
为门户安装和验证 Microsoft Power Platform CLI
要了解如何安装 Microsoft Power Platform CLI,请转到安装 Microsoft Power Platform CLI。
安装 Microsoft Power Platform CLI 后,打开命令提示符,运行 pac 来验证输出是否包含“paportal”- Power Apps 门户的命令。
门户的 Microsoft Power Platform CLI 命令
门户的 Microsoft Power Platform CLI 命令是“paportal”。
以下各节提供了有关“paportal”命令的不同属性的更多详细信息。
参数设置
属性名称 | 说明 | 示例 |
---|---|---|
列表 | 列出当前 Dataverse 环境中的所有门户网站。 您可以添加 -v 参数,来指示站点是否使用标准或增强数据模型 |
pac paportal list |
下载 | 从当前 Dataverse 环境下载门户网站内容。 它具有以下参数: - path:下载网站内容的路径(别名:-p) - webSiteId:要下载的门户网站 ID(别名:-id) - overwrite(可选)true - 覆盖现有内容;false - 如果文件夹已经有网站内容则失败(别名:-o) - modelVersion: 1 或 2 表示要下载的站点数据是使用标准 (1) 还是增强型数据模型 (2)。 |
pac paportal download --path "C:\portals" --webSiteId f88b70cc-580b-4f1a-87c3-41debefeb902 --modelVersion 2 |
上传 | 将门户网站内容上载到当前的 Dataverse 环境。 它具有以下参数: - path:存储网站内容的路径(别名:-p) - deploymentProfile上传包含通过 deployment-profiles/[profile-name].deployment.yaml 文件中的 profile variables 定义的环境详细信息的门户数据 - modelVersion: 1 或 2 表示要上传的站点数据是使用标准 (1) 还是增强型数据模型 (2)。 |
pac paportal upload --path "C:\portals\starter-portal" --deploymentProfile "profile-name" --modelVersion 2 |
使用部署配置文件
deploymentProfile 切换允许您以 YAML 格式为环境定义一组变量。 例如,您可以有不同的部署配置文件(如开发、测试、生产),这些配置文件在配置文件中定义了不同的架构详细信息。
如果您在创建测试配置文件,您可以在 deployment-profiles 下创建名为“test.deployment.yml”的文件(即 <profileTag>.deployment.yml)。 然后,您可以使用标记 (<profileTag>) 运行命令来使用此配置文件:
pac paportal upload --path "C:\portals\starter-portal" --deploymentProfile test --modelVersion 2
在此文件中,您可以有表(实体)名称和表 ID、属性列表以及在使用 deploymentProfile
参数上载门户配置时要替代的值。
此外,您可以使用 OS
变量来访问操作系统的环境变量。
以下是具有唯一架构详细信息的“test.deployment.yml”配置文件 YAML 文件的示例:
adx_sitesetting:
- adx_sitesettingid: 4ad86900-b5d7-43ac-1234-482529724970
adx_value: ${OS.FacebookAppId}
adx_name: Authentication/OpenAuth/Facebook/AppId
- adx_sitesettingid: 5ad86900-b5d7-43ac-8359-482529724979
adx_value: contoso_sample
adx_name: Authentication/OpenAuth/Facebook/Secret
adx_contentsnippet:
- adx_contentsnippetid: b0a1bc03-0df1-4688-86e8-c67b34476510
adx_name: PowerBI/contoso/sales
adx_value: https://powerbi.com/group/contoso/sales
备注
要了解除门户之外在 CLI 中使用的所有命令,请转到 Microsoft Power Platform CLI 中的常见命令。
清单文件
当您使用 pac paportal download CLI 命令下载网站内容时,在下载网站内容的同时,还会生成两个清单文件;
- 环境清单文件 (org-url-manifest.yml)
- 删除跟踪清单文件 (manifest.yml)
环境清单文件 (org-url-manifest.yml)
每次运行 pac paportal download 命令时,都会生成环境清单文件。
每次下载后,PAC CLI 工具都会读取现有的环境清单文件并更新环境中删除的条目,如果环境清单文件不存在,则创建文件。
在运行 pac paportal upload 命令上传门户网站内容时。 它会读取环境清单文件并识别自上次下载以来所做的更改,并仅上载更新的内容。 这将帮助优化上载过程,因为仅上载更新的网站内容,而不是通过每个上载命令上载所有内容。
当环境清单文件连接到同一个环境(环境 URL 与文件名匹配)时,它是只读的,以避免意外更改。
备注
- 环境清单文件并非旨在将网站部署到不同环境时跟踪变化。
- 环境清单文件旨在供开发人员在其开发人员环境中进行本地部署,应被添加到 git 忽略列表中。
删除跟踪清单文件 (manifest.yml)
此文件用于跟踪从环境中删除的记录。
使用 pac paportal download 命令下载网站内容时,会将环境清单文件 (org-url-manifest.yml) 中删除的记录添加到 manifest.yml 文件中。 因此,当您使用 pac paportal upload 命令上传网站内容时,它会将文件从环境中删除(甚至移动到不同的环境中)。 此文件不会被删除,无论您连接到哪个环境,它都会被使用。 将更改推送到源代码管理时需要考虑此文件,以便考虑删除目标环境中的项目。
备注
为了在一个环境中删除站点内容记录,同时使用 PAC CLI 删除另一个环境中的相同内容记录,在删除网站记录内容之前和之后,您将需要运行 pac paportal download 命令。 manifest.yml 将跟踪这些更改,并在运行 pac paportal upload 命令时删除目标环境中的相应记录。
使用 Visual Studio Code 扩展
您还可以使用 VS Code 扩展 Power Platform VS Code 扩展支持 IntelliSense 中的内置 Liquid 语言、代码完成协助、提示,以及使用 VS Code 集成终端与 Microsoft Power Platform CLI 交互。 详细信息:使用 Visual Studio Code 扩展(预览)
更多注意事项
- 如果您的文件路径超过最大路径长度限制,将报告错误。 详细信息:Windows 中的最大路径长度限制
- 对于重复的记录,如重复的网页名称,Microsoft Power Platform CLI 会创建两个不同的文件夹 - 一个使用网页名称,另一个使用带有哈希代码前缀的相同名称。 例如,My-page 和 My-page-hash-code。
后续步骤
教程:将 Microsoft Power Platform CLI 与门户结合使用