Kubectl kustomize: Difference between revisions
Jump to navigation
Jump to search
Line 18: | Line 18: | ||
A <tt>kustomization.yaml</tt> example follows: | A <tt>kustomization.yaml</tt> example follows: | ||
# add the specified labels to all resources | <font color=Burlywood># add the specified labels to all resources</font> | ||
commonLabels: | commonLabels: | ||
app: hello | app: hello |
Revision as of 17:30, 23 August 2019
External
- https://kubernetes.io/blog/2018/05/29/introducing-kustomize-template-free-configuration-customization-for-kubernetes/
- https://github.com/kubernetes-sigs/kustomize
Internal
Overview
The "kustomize" logic reads a series of source API resource manifests, instructions from a kustomization.yaml file and generates syntactically valid and complete API resource manifests at stdout. The generated content may contain multiple resource representations, separated by ---. The output can be further processed by other tools or streamed directly into kubectl for deployment to a cluster.
kubectl kustomize <dirname> > output.yaml
The directory specified as argument must contain kustomization.yaml.
A kustomization.yaml example follows:
# add the specified labels to all resources commonLabels: app: hello # add the specified annotations to all resources commonAnnotations: ... # add the specified common prefix to all resource names namePrefix: resources: - deployment.yaml - configMap.yaml - service.yaml
kustomization.yaml Example
namePrefix:
images:
- name: something
newTag: ...
namespace: ...
resources:
- manifest-1.yaml
- manifest-2.yaml
patchesStrategicMerge:
- file1.yaml
TODO
It seems to add prefixes to names, update image tags, adds namespace metadata, "yaml-cleans" according to rules that have yet to be elucidated.