持續整合內容驗證工具

持續整合 (CI) 內容驗證工具會找出有錯誤的資訊主頁和 Look。這些錯誤通常是因為缺少 LookML 欄位的參照所致。

CI 內容驗證器執行的驗證與標準 Looker 內容驗證器類似,但有以下差異:

  • CI 內容驗證器支援下列項目:

    • 您可以設定 CI 內容驗證器,在 Looker 開發人員將提取要求提交至 LookML 存放區時自動執行,也可以在手動執行 CI 套件時手動執行。
    • 您可以將 CI 內容驗證器結果的範圍,限定在特定 Looker 內容資料夾,或 LookML 專案中的特定模型和探索。根據預設,系統會自動將 CI 內容驗證器的結果範圍限定在 LookML 專案中。CI 內容驗證器範圍是後續處理:驗證器會在整個 Looker 執行個體上執行,然後將結果篩選至您建立 CI 套件時指定的範圍。
  • 標準 Looker 內容驗證工具支援下列項目:

    • 您只能手動執行 Looker 內容驗證工具。
    • 您可以將 Looker 內容驗證工具的範圍限定在特定 Looker 內容資料夾,或特定 LookML 專案。Looker 內容驗證器會在驗證前進行範圍設定:驗證器只會對您啟動內容驗證時指定的資料夾和專案執行驗證。
    • 您可以使用 Looker 內容驗證工具取代欄位、檢視區塊、探索和模型的名稱移除欄位,以及刪除 Looker

如要瞭解在建立或編輯 CI 套件時可設定的選項,請參閱本頁的「內容驗證器選項」一節。如要瞭解如何執行內容驗證器,請參閱「執行持續整合套件」說明文件頁面。

執行結果頁面上,內容驗證器會提供每個發生錯誤的 Look 或資訊主頁的錯誤訊息,以及內容的連結:

持續整合結果頁面,顯示內容驗證器發現的問題

內容驗證器選項

建立持續整合套件時,您可以指定多個選項,設定內容驗證器執行方式。本頁面以下各節將說明這些選項:

要查詢的探索

根據預設,Content Validator 會對 LookML 專案中的所有模型和探索執行內容驗證。

您可以使用「要查詢的探索」欄位,指定要納入內容驗證的探索和模型。

您可以指定下列格式的探索:model_name/explore_name

舉例來說,如要在 thelook.model.lkml 檔案中指定名為 usersorders 的探索,請輸入以下內容:thelook/users, thelook/orders

如要進一步瞭解如何在這個欄位中指定探索和模型,請參閱 SQL 驗證器說明文件頁面。

要排除的探索

根據預設,Content Validator 會對 LookML 專案中的所有模型和探索執行內容驗證。

您可以使用「要排除的探索」欄位,指定要從內容驗證中排除的探索和模型。

您可以指定下列格式的探索:model_name/explore_name

如要進一步瞭解如何在這個欄位中指定探索和模型,請參閱 SQL 驗證器說明文件頁面。

要驗證的資料夾

您可以指定資料夾 ID 或以半形逗號分隔的資料夾 ID 清單,將內容驗證範圍限定在 Looker 執行個體上的特定內容資料夾。

如要取得資料夾 ID,請使用 Looker 主導覽選單開啟資料夾,然後從瀏覽器網址取得資料夾 ID。資料夾 ID 是網址的最後一個元素。舉例來說,在下列網址中,資料夾 ID 為 45

https://myinstance.looker.com/folders/45

要排除的資料夾

如要從內容驗證中排除特定內容資料夾,請在「要排除的資料夾」欄位中指定資料夾 ID,或以半形逗號分隔的資料夾 ID 清單。

排除個人資料夾中的內容

如要讓 Content Validator 只驗證共用資料夾中的內容,請啟用「排除個人資料夾中的內容」欄位。啟用「排除個人資料夾中的內容」欄位後,Content Validator 會忽略 Looker 執行個體中個人資料夾的內容。

增量驗證

您可以透過「增量驗證」方法,找出專屬於特定開發分支版本和不存在於正式環境的錯誤。漸進式驗證可協助開發人員找出並修正自己負責的錯誤,不會受到專案中現有錯誤的干擾,而且驗證速度也會更快,特別是包含多項探索的 LookML 專案。

在驗證器結果中,內容驗證器會指出每個遭略過的 Explore,因為在驗證的分支或提交中,這些 Explore 的已編譯 SQL 沒有任何變更。如需逐步驗證結果的範例,請參閱「查看逐步驗證結果」。

建立或編輯持續整合套件時,在「內容驗證器」部分選取「僅限增量錯誤」核取方塊,即可為內容驗證器啟用增量驗證。

請注意下列增量驗證事項:

  • Content Validator 驗證正式環境分支版本時 (例如在正式環境分支版本手動執行),不適用增量驗證設定。驗證正式環境分支版本時,Content Validator 會顯示完整的驗證結果。

內容驗證的限制

如果您刪除模型或變更模型名稱,Content Validator 就不會傳回這些「懸而未決」的內容錯誤,因為模型無法再與測試中的專案建立關聯。