Sobre o projeto
kustomize fornece uma maneira declarativa de customizar objetos da API do Kubernetes. Ao contrário de motores de templating, ele trabalha com arquivos YAML brutos, deixando os recursos originais intocados. Ele funciona de forma semelhante ao 'make', utilizando um arquivo de declaração, e ao 'sed', emitindo texto editado.
As principais capacidades incluem:
- Arquivos de Kustomization: Definem recursos e aplicam customizações comuns, como adicionar labels ou usar um gerador de ConfigMap.
- Overlays: Gerenciam variantes específicas de ambiente (ex: desenvolvimento, staging, produção) aplicando patches a uma configuração base comum.
- Integração com Kubectl: kustomize está incorporado em versões recentes do kubectl, permitindo que os usuários construam e apliquem configurações diretamente.
- Edição não destrutiva: Permite a facilidade de fazer rebasing a partir de material de origem upstream, já que os arquivos originais não são modificados diretamente.