用於驗證的 Power BI 專案 (PBIP) 和 Azure DevOps 組建管線
將 Fabric Git 整合與 Azure DevOps 相結合後,您可將工作區連線到 Azure DevOps 存放庫中的分支,並在兩者之間自動同步處理。
將 PBIP 格式與 Azure DevOps 整合後,您可以使用 Azure Pipelines 自動化持續整合/持續部署 (CI/CD) 管線。 這些管線會處理 PBIP 中繼資料檔案,並在您的開發部署至生產系統前,對其套用一系列品質檢查。
在本文中,我們將著重於持續整合,並說明如何建立 Azure DevOps 管線,以確保 Fabric 工作區內的所有語意模型和報表都採用最佳做法。 透過實施自動化品質測試,您可以防止常見的錯誤,並提高團隊效率。 例如,此方法可確保新的團隊成員遵守已建立的語意模型和報表開發標準。
若要深入了解 PBIP 和 Fabric Git 整合,請瀏覽專案概觀和 Fabric Git 整合概觀。
下圖展示了完整案例,當中有兩個開發工作流程觸發 Azure DevOps 管線,以驗證開發品質。 管線會執行下列動作:
使用者 1 使用 Power BI Desktop 開發。
- 使用 VS Code 從主分支建立分支 (feature/datasetchange)
- 使用 Power BI Desktop 對語意模型進行變更
- 使用 VS Code 提交遠端存放庫分支的變更
- 使用 Azure DevOps 對主分支建立提取要求
同時,使用者 2 使用另一個 Fabric 工作區開發。
- 使用 Fabric Git 從主分支建立分支 (feature/reportchange)
- 在 Fabric 工作區中變更報表
- 使用 Fabric Git 提交遠端存放庫分支的變更
- 使用 Azure DevOps 對主分支建立提取要求
團隊負責人會檢閱提取要求,並使用 Fabric Git 同步處理團隊工作區的變更。
提取要求會觸發 Azure DevOps 管線來檢查語意模型和報表開發品質。
注意
在此範例中,管線使用兩個開放原始碼社群工具,使開發人員將 (可自訂) 最佳做法規則,套用至 Power BI Project 資料夾中語意模型和報表的中繼資料:
與本文範例類似的方法會套用至其他社群工具。 本文不會深入探討先前所述的社群工具細節,也不會探討規則建立和編輯。 如需這些主題的深入資訊,請參閱提供的連結。 本文的重點是在原始檔控制與 Fabric 工作區之間建立品質門檻的流程。 請務必注意,提到的社群工具是由第三方參與者所開發,Microsoft 不提供支援或使用者文件。
步驟 1 - 將 Fabric 工作區連線至 Azure DevOps
將您的 Fabric 工作區連線至 Azure DevOps:
當 Fabric Git 整合完成匯出工作區項目時,您的 Azure DevOps 分支會包含工作區每個項目各一個資料夾:
步驟 2 - 建立和執行 Azure DevOps 管線
建立新管線:
從左側導覽功能表的 [管線] 索引標籤中,選取 [建立管線]:
選取 [Azure Repos Git],然後選取第一個存放庫 (與 Fabric 工作區連線的相同存放庫):
選取 [入門管線]。
下列 YAML 程式碼會出現在編輯器中:
從 Power BI 開發人員模式管線複製 YAML 程式碼,並於您建立的管線中貼上:
選取 [儲存並執行],將您的新管線提交至存放庫。
Azure DevOps 會執行管線,並平行啟動兩個組建作業:
- Build_Datasets
- 下載表格式編輯器二進位檔。
- 下載最佳做法分析器預設規則。 若要自訂規則,請將 Rules-Dataset.json 新增至存放庫的根目錄。
- 循環所有語意模型項目資料夾,並執行表格式編輯器 BPA 規則。
- Build_Reports
- 下載 PBI 偵測器二進位檔。
- 下載 PBI 檢測器預設規則。 若要自訂規則,請將 Rules-Report.json 新增至存放庫的根目錄。
- 循環所有報表項目資料夾,並執行 Power BI 檢視器規則。
完成時,Azure DevOps 會建立報告,列出遇到的所有警告和錯誤:
選取連結可開啟這兩個作業的詳細檢視:
如果您的報表或語意模型未通過較高嚴重性層級的規則,則組建失敗,並醒目提示錯誤:
步驟 3 - 定義分支原則
管線啟動並執行之後,請在主分支上啟用分支原則。 此步驟可確保無法直接向主分支提交任何內容。 一律需要「提取要求」,才能將變更合併回主分支,而且您可以將管線設定為在每次有提取要求時執行。
選取 [分支]>[主分支]>[分支原則]:
將建立的管線設定為分支的建置原則:
步驟 4 - 建立提取要求
如果返回 Fabric 工作區,修改其中一個報表或語意模型,並嘗試提交變更,您會收到下列錯誤:
您只能透過提取要求對主分支進行變更。 若要建立提取要求,請簽出新的分支,以進行變更:
直接從 Fabric 工作區建立分支:
在 [原始檔控制] 窗格中,選取 [簽出新分支] 並提供分支的名稱。
或者,您可以選擇在個別的獨立工作區或 Power BI Desktop 中進行開發。 如需詳細資訊,請參閱使用另一個工作區進行開發
提交您對這個新分支所做的變更。
提交之後,請從 Azure DevOps 入口網站,建立主分支的提取要求。
提取要求的工作流程不僅可讓您驗證和檢閱變更,還會自動觸發管線。
如果任一個規則中有高嚴重性錯誤,您就無法完成提取要求,以及將變更合併回主分支。
若要深入了解 PBIP 和 Fabric Git 整合,請瀏覽部落格文章。