В Helm можно указать имя релиза, используя
helm install my-release-name chart-path
Это означает, что я могу указать имя выпуска и его компоненты (используя полное имя) с помощью CLI.
В kustomize (я новичок в kustomize) есть аналогичная концепция, namePrefix и nameSuffix, которые можно определить в kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namePrefix: overlook-
resources:
- deployment.yaml
Однако для этого подхода требуется пользовательский файл, и использование «динамического» namePrefix будет означать, что kustomization.yaml
должен быть сгенерирован с использованием шаблона, а kustomize — это, в общем, отказ от шаблонов.
Есть ли способ указать это значение динамически?
Вы можете использовать настраиваемое редактирование для редактирования значений nameprefix
и namesuffix
.
Например:
Deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: the-deployment
spec:
replicas: 5
template:
containers:
- name: the-container
image: registry/conatiner:latest
Kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- deployment.yaml
Затем вы можете запустить kustomize edit set nameprefix dev-
и kustomize build .
вернет следующее:
apiVersion: apps/v1
kind: Deployment
metadata:
name: dev-the-deployment
spec:
replicas: 5
template:
containers:
- image: registry/conatiner:latest
name: the-container
лучше, чем шаблон, однако для CI это было бы, если бы не нужно было вносить изменения в файл, а принимать его, так как я думаю, что такой опции нет