同样的痛点, 我一直觉得 kustomize 的路走错了, helm 更适合需要大量动态调整的复杂部署 (可能是我看问题的高度不够?)
为了解决这个问题, 外加需要管理多个仓库里的 yaml 配置并且实现重用以便统一结果, 我自己开发了一个工具 dukkha, 但是目前还没有实际用到生产环境中 (项目地址:
https://github.com/arhat-dev/dukkha )
对应到你的需求可以用 dukkha 这么管理:
首先给不同环境创建 host-alias.yml 文件
production 环境: inventory/production/host-alias.yml
```yaml
- hostnames:
- production-foo
ip: ...
```
dev 环境: inventory/dev/host-alias.yml
```yaml
- hostnames:
- dev-foo
ip: ...
```
```yaml
apiVersion: v1
kind: Pod
spec:
hostAliases@env|file: inventory/${ENVIRONMENT}/host-alias.yml
```
把目录结构建好, 然后在不同环境里面设置好 ENVIRONMENT 变量 (production/dev) 即可使用 `dukkha render` 进行渲染
有进一步了解需求的话, 可以看项目里的文档, 应该是够用的
另外如果想深入讨论相关内容的, 欢迎邮件到 aW5xdWlyaWVzQGFyaGF0LnNvbHV0aW9ucw== , 内容需要注明 v2 用户名以及一个可交叉验证身份的第三方平台链接 (如 github 用户链接)