TimoniKubernetes 包管理器

联合创作 · 2023-09-27 16:10

Timoni 是 Kubernetes 的软件包管理器,由 CUE 提供支持,灵感来自 Helm。

Timoni 项目致力于改善编写 Kubernetes 配置的用户体验。Timoni 没有像 Helm 那样将 Go 模板与 YAML 混合在一起,也没有像 Kustomize 那样将 YAML 分层,而是依靠cuelang 的类型安全、代码生成和数据验证功能来提供创建、打包和向 Kubernetes 交付应用程序的更好体验。

Timoni 正在积极开发中,仍处于起步阶段。API 和命令行界面可能会以向后不兼容的方式进行更改。

Timoni 模块包含一组 CUE 定义和约束,这些定义和约束被组织成具有固定结构的 CUE 模块。模块接受用户以values.cue文件形式提供的一组值,并输出 Timoni 在 Kubernetes 上部署的一组 Kubernetes 对象。

模块结构:

├── 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 中找到。

浏览 6
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报