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 powerpagespaportal 仍會繼續運作,但建議未來改使用 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 (only download)

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 中的 paportal 命令。

入口網站的 Microsoft Power Platform CLI 命令

入口網站的 Microsoft Power Platform CLI 命令為 "paportal"

以下章節提供有關 "paportal" 命令之不同屬性的更多詳細資料。

參數

屬性名稱 名描述 範例
清單 列出目前 Dataverse 環境中的所有入口網站。

預覽
您可以新增 -v 參數以表示該網站是使用標準資料模型或增強型資料模型
pac paportal list
下載 從目前的 Dataverse 環境中下載入口網站內容。 其中有下列參數︰
- path:要將網站內容下載到的路徑 (別名:-p)
- webSiteId:要下載的入口網站識別碼 (別名:-id)
- overwrite:(選用) true - 覆寫現有內容;false - 如果資料夾已有網站內容則失敗 (別名:-o)

預覽
- modelVersion 12 表示要下載的網站資料將使用標準資料模型 (1) 還是增強型資料模型 (2)。
pac paportal download --path "C:\portals" --webSiteId f88b70cc-580b-4f1a-87c3-41debefeb902
上傳 上傳入口網站內容到目前的 Dataverse 環境中。 其中有下列參數︰
- path:儲存網站內容所在的路徑 (別名: -p)
-deploymentProfile:上傳入口網站資料以及環境詳細資料,此詳細資料是透過 deployment-profiles/[profile-name].deployment.yaml 檔案中的設定檔變數所定義

預覽
- modelVersion 12 表示要上傳的網站資料將使用標準資料模型 (1) 還是增強型資料模型 (2)。
pac paportal upload --path "C:\portals\starter-portal" --deploymentProfile "profile-name"

使用部署設定檔

deploymentProfile 切換可讓您以 YAML 格式為環境定義一組變數。 例如,您可以擁有不同的部署設定檔 (例如 dev、test、prod),其在設定檔中定義了不同的結構描述詳細資料。

如果您正在建立測試設定檔,則可以在 deployment-profiles 下建立名為 "test.deployment.yml" 的檔案 (即 <profileTag>.deployment.yml)。 您可以執行使用標籤 (<profileTag>) 的命令來使用此設定檔:

pac paportal upload --path "C:\portals\starter-portal" --deploymentProfile test

在此檔案中,您可以擁有資料表 (實體) 名稱和資料表識別碼、屬性清單以及在使用 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 命令上傳網站內容時,會將檔案從環境中刪除 (即使是不同的環境)。 不會將此檔案刪除,無論您連接到哪個環境,都會用到該檔案。 將變更推送至 source 控制項時必須考慮此檔案,才能考慮刪除目標環境中的項目。

注意

為使用 PAC CLI 刪除一個環境中的網站內容記錄並同時刪除另一個環境中的相同內容記錄,您需要在刪除網站記錄內容之前之後執行 pac paportal download 命令。 manifest.yml 將追蹤這些變更,並在執行 pac paportal upload 命令時移除目標環境中的相應記錄。

將 Visual Studio Code 延伸模組

您也可以使用 VS Code 延伸模組 Power Platform VS Code 延伸模組,使內建 Liquid 語言從 IntelliSense、程式碼完成協助、提示等方面獲得增益,並透過 VS Code 整合終端來與 Microsoft Power Platform CLI 互動。 更多資訊:Visual Studio Code 延伸模組 (預覽版)

其他考量事項

  • 如果您的檔案路徑超過最大路徑長度限制,就會出現錯誤報告。 其他資訊:Windows 中的最大路徑長度限制
  • 對於重複的記錄 (例如重複的網頁名稱),Microsoft Power Platform CLI 會建立兩個不同資料夾:一個有網頁名稱,而另一個則有在該名稱開頭加上雜湊碼的名稱。 例如,"My-page" 和 "My-page-雜湊碼"。

後續步驟

教學課程:在入口網站使用 Microsoft Power Platform CLI

另請參閱