Ingress serviceName更新后,如何应用变换器插件?

我有一个kustomize transformer插件,读取Ingress specrules*httppaths0backendserviceName中serviceName的值。插件的目的是在应用了nameSuffixnamePrefix之后,用最终的serviceName更新Ingress中的主机条目。

插件从stdin读取,但yaml的状态并不是我所期望的。服务和Ingress的名字都应用了nameSuffixnamePrefix,但Ingress中的serviceName的值仍然是原始服务名。我通过在插件执行时转储Ingress yaml来验证这一点。插件运行后,最终的输出确实有更新的serviceName(带prefixsuffix)。因此,在插件运行后,有东西在更新。

如何配置插件,让它在Ingress中的serviceName更新后运行?

解决方案:

根据这个例子。变形器配置

namePrefixnameSuffix 仅有参考。

 namePrefix:
- path: metadata/name

如果你想加入 serviceNamenameReference例如,你可以创建一个 kustomize-config.yml 文件的内容。

nameReference:
- kind: ServiceName
  fieldSpecs:
  - path: spec/rules/*/http/paths/0/backend/serviceName
    kind: Ingress

然后,在你的 kustomization.yml 你需要参考它。

configurations:
- kustomize-config.yml

下次你运行 kubectl kustomize .kustomize build .,你可能会看到前缀和后缀也反映到 serviceName

给TA打赏
共{{data.count}}人
人已打赏
未分类

两个指针还是一个指针+size_t?[关闭]

2022-11-13 21:16:20

未分类

如何检查一个元素是否已从地图中删除?

2022-11-13 21:16:22

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索