如果您使用過 Helm 圖表,您可能熟悉驗證 value.yaml 的挑戰。雖然 Helm 的內建 JSON 模式驗證有效,但它可能很麻煩且有限制。今天,我想向您介紹 Helm CEL,這是一個插件,它將 Google 通用表達語言 (CEL) 的強大功能引入 Helm 圖表驗證中。
在深入了解之前,讓我們先快速了解一下 CEL 是什麼。通用表達式語言 (CEL) 是 Google 創建的簡單表達式語言,可讓您編寫簡潔、強大的驗證規則。它用於 Kubernetes CRD 驗證、Istio 配置以及雲端原生生態系統中的許多其他專案。
首先,安裝外掛:
您將在圖表目錄中建立values.cel.yaml 文件,而不是建立values.schema.json。這是一個簡單的例子:
驗證您的圖表:
讓我們看看一些常見的驗證模式以及它們如何在 JSON Schema 和 CEL 中表達。
JSON 架構:
CEL:
JSON 架構:
CEL:
對於複雜的驗證,JSON 模式可能會變得非常冗長。這是一個 CEL 範例,在 JSON 模式中會複雜得多:
Helm CEL 的最佳功能之一是其清晰的錯誤訊息。當驗證失敗時,您會得到以下有用的輸出:
CEL 表達式可以有效率地編譯和計算。該插件為您的 Helm 工作流程增加了最小的開銷,使其適合開發和 CI/CD 管道。
Helm CEL 帶來了一種更具表現力和可維護性的方式來驗證您的 Helm 圖表。如果您發現自己在與 JSON Schema 作鬥爭或想要更靈活的驗證規則,請嘗試一下。熟悉的語法、強大的表達式和清晰的錯誤訊息的組合使其成為任何 Helm 使用者工具包的寶貴補充。
您希望看到什麼驗證模式?請在下面的評論中告訴我!
以上是Helm CEL 簡介:一種更具表現力的方式來驗證 Helm 圖表的詳細內容。更多資訊請關注PHP中文網其他相關文章!