Как применить плагин трансформатора после обновления Ingress serviceName?

У меня есть плагин kustomize transformer, который считывает значение serviceName в Ingress spec / rules / * / http / paths / 0 / backend / serviceName. Плагин предназначен для обновления записей хоста в Ingress окончательным именем serviceName после применения nameSuffix/namePrefix.

Плагины читают из stdin, но состояние yaml не то, что я ожидал. К именам Сервиса и Ingress применено nameSuffix/namePrefix, но значение serviceName в Ingress по-прежнему является необработанным именем сервиса. Я проверил это, сбросив yaml Ingress при запуске плагина. После запуска плагина в окончательном выводе будет обновленное имя службы (с префиксом / суффиксом). Итак, что-то работает после плагина, который выполняет обновление.

Как мне настроить плагин так, чтобы он запускался после обновления serviceName в Ingress?

1 ответ

Согласно этому примеру: Конфигурации трансформатора

namePrefix а также nameSuffix иметь только ссылку:

 namePrefix:
- path: metadata/name

Если вы хотите включить serviceName к nameReference, вы можете создать, например, 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

Другие вопросы по тегам