TimoniKubernetes 包管理器
Timoni 是 Kubernetes 的軟件包管理器,由 CUE 提供支持,靈感來(lái)自 Helm。
Timoni 項(xiàng)目致力于改善編寫(xiě) Kubernetes 配置的用戶(hù)體驗(yàn)。Timoni 沒(méi)有像 Helm 那樣將 Go 模板與 YAML 混合在一起,也沒(méi)有像 Kustomize 那樣將 YAML 分層,而是依靠cuelang 的類(lèi)型安全、代碼生成和數(shù)據(jù)驗(yàn)證功能來(lái)提供創(chuàng)建、打包和向 Kubernetes 交付應(yīng)用程序的更好體驗(yàn)。
Timoni 正在積極開(kāi)發(fā)中,仍處于起步階段。API 和命令行界面可能會(huì)以向后不兼容的方式進(jìn)行更改。
Timoni 模塊包含一組 CUE 定義和約束,這些定義和約束被組織成具有固定結(jié)構(gòu)的 CUE 模塊。模塊接受用戶(hù)以values.cue文件形式提供的一組值,并輸出 Timoni 在 Kubernetes 上部署的一組 Kubernetes 對(duì)象。
模塊結(jié)構(gòu):
├── cue.mod
│ ├── gen # Kubernetes types
│ └── module.cue # Module metadata
├── templates
│ ├── config.cue # Config schema and default values
│ ├── deployment.cue # Kubernetes Deployment template
│ └── service.cue # Kubernetes Service template
├── timoni.cue # Timoni entry point
└── values.cue # Timoni values placeholder
模塊示例可以在 example/podinfo 和 Examples/redis 中找到。
評(píng)論
圖片
表情
