共用方式為


用於驗證的 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 管線,以驗證開發品質。 管線會執行下列動作:

顯示 DevOps 管線工作流程的圖表。

  1. 使用者 1 使用 Power BI Desktop 開發。

    1. 使用 VS Code 從主分支建立分支 (feature/datasetchange)
    2. 使用 Power BI Desktop 對語意模型進行變更
    3. 使用 VS Code 提交遠端存放庫分支的變更
    4. 使用 Azure DevOps 對主分支建立提取要求
  2. 同時,使用者 2 使用另一個 Fabric 工作區開發。

    1. 使用 Fabric Git 從主分支建立分支 (feature/reportchange)
    2. 在 Fabric 工作區中變更報表
    3. 使用 Fabric Git 提交遠端存放庫分支的變更
    4. 使用 Azure DevOps 對主分支建立提取要求
  3. 團隊負責人會檢閱提取要求,並使用 Fabric Git 同步處理團隊工作區的變更。

  4. 提取要求會觸發 Azure DevOps 管線來檢查語意模型和報表開發品質。

注意

在此範例中,管線使用兩個開放原始碼社群工具,使開發人員將 (可自訂) 最佳做法規則,套用至 Power BI Project 資料夾中語意模型和報表的中繼資料:

與本文範例類似的方法會套用至其他社群工具。 本文不會深入探討先前所述的社群工具細節,也不會探討規則建立和編輯。 如需這些主題的深入資訊,請參閱提供的連結。 本文的重點是在原始檔控制與 Fabric 工作區之間建立品質門檻的流程。 請務必注意,提到的社群工具是由第三方參與者所開發,Microsoft 不提供支援或使用者文件。

步驟 1 - 將 Fabric 工作區連線至 Azure DevOps

將您的 Fabric 工作區連線至 Azure DevOps

顯示 Git 與 DevOps 連線的螢幕擷取畫面。

當 Fabric Git 整合完成匯出工作區項目時,您的 Azure DevOps 分支會包含工作區每個項目各一個資料夾:

顯示含有不同工作區項目資料夾的 Azure DevOps 分支螢幕擷取畫面。

步驟 2 - 建立和執行 Azure DevOps 管線

建立新管線:

  1. 從左側導覽功能表的 [管線] 索引標籤中,選取 [建立管線]

    顯示如何將建立管線的螢幕擷取畫面。

  2. 選取 [Azure Repos Git],然後選取第一個存放庫 (與 Fabric 工作區連線的相同存放庫):

    顯示將 Azure 存放庫 Git 選取為管線程式碼來源的螢幕擷取畫面。

    顯示選取 Demo-ADObuild 存放庫的螢幕擷取畫面。

  3. 選取 [入門管線]。

    顯示選取起始管線圖示的螢幕擷取畫面。

    下列 YAML 程式碼會出現在編輯器中:

    顯示預設 YAML 程式碼的螢幕擷取畫面。

  4. 從 Power BI 開發人員模式管線複製 YAML 程式碼,並於您建立的管線中貼上:

    顯示欲新增之 YAML 程式碼的螢幕擷取畫面。

    顯示 YAML 程式碼第二部分的螢幕擷取畫面。

  5. 選取 [儲存並執行],將您的新管線提交至存放庫。

    檢閱 YAML 程式碼的螢幕擷取畫面。

    顯示 [儲存並執行] 選取項目的螢幕擷取畫面。

Azure DevOps 會執行管線,並平行啟動兩個組建作業:

顯示 Azure DevOps 執行管線的螢幕擷取畫面。

  • Build_Datasets
    • 下載表格式編輯器二進位檔。
    • 下載最佳做法分析器預設規則。 若要自訂規則,請將 Rules-Dataset.json 新增至存放庫的根目錄。
    • 循環所有語意模型項目資料夾,並執行表格式編輯器 BPA 規則。
  • Build_Reports
    • 下載 PBI 偵測器二進位檔。
    • 下載 PBI 檢測器預設規則。 若要自訂規則,請將 Rules-Report.json 新增至存放庫的根目錄。
    • 循環所有報表項目資料夾,並執行 Power BI 檢視器規則。

完成時,Azure DevOps 會建立報告,列出遇到的所有警告和錯誤:

顯示錯誤報告的螢幕擷取畫面。

選取連結可開啟這兩個作業的詳細檢視:

顯示 [檢視記錄] 按鈕的螢幕擷取畫面。

顯示展開之錯誤記錄的螢幕擷取畫面。

如果您的報表或語意模型未通過較高嚴重性層級的規則,則組建失敗,並醒目提示錯誤:

顯示醒目提示錯誤的螢幕擷取畫面。

步驟 3 - 定義分支原則

管線啟動並執行之後,請在主分支上啟用分支原則。 此步驟可確保無法直接向主分支提交任何內容。 一律需要「提取要求」,才能將變更合併回主分支,而且您可以將管線設定為在每次有提取要求時執行。

  1. 選取 [分支]>[主分支]>[分支原則]

    顯示分支原則的螢幕擷取畫面。

  2. 將建立的管線設定為分支的建置原則

    顯示建置原則 UI 的螢幕擷取畫面。

    顯示建置原則 UI 第二部分的螢幕擷取畫面。

步驟 4 - 建立提取要求

如果返回 Fabric 工作區,修改其中一個報表或語意模型,並嘗試提交變更,您會收到下列錯誤:

顯示無法提交變更錯誤的螢幕擷取畫面。

您只能透過提取要求對主分支進行變更。 若要建立提取要求,請簽出新的分支,以進行變更:

直接從 Fabric 工作區建立分支:

  1. 在 [原始檔控制] 窗格中,選取 [簽出新分支] 並提供分支的名稱。

    顯示在原始檔控制畫面簽出新分支的螢幕擷取畫面。

    顯示如何簽出新分支的螢幕擷取畫面。

    或者,您可以選擇在個別的獨立工作區或 Power BI Desktop 中進行開發。 如需詳細資訊,請參閱使用另一個工作區進行開發

  2. 提交您對這個新分支所做的變更。

    顯示提交分支變更的螢幕擷取畫面。

  3. 提交之後,請從 Azure DevOps 入口網站,建立主分支的提取要求。

    顯示建立新提取要求的螢幕擷取畫面。

    顯示建立提取要求的螢幕擷取畫面。

提取要求的工作流程不僅可讓您驗證和檢閱變更,還會自動觸發管線。

顯示 [報表變更] 的螢幕擷取畫面。

如果任一個規則中有高嚴重性錯誤,您就無法完成提取要求,以及將變更合併回主分支。

完成提取要求的螢幕擷取畫面。

若要深入了解 PBIP 和 Fabric Git 整合,請瀏覽部落格文章