Substituindo localmente os padrões da biblioteca
Personalizando modelos compartilhados para cada consumidor
Substituindo localmente os padrões da biblioteca é uma aula grátis de DevOps Bootcamp no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de DevOps Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de DevOps Bootcamp inclui 4 aulas no total.
Compartilhado, mas não rígido
Uma boa biblioteca define padrões sensatos, mas permite que cada consumidor os ajuste. A principal alavanca são os values que o fragmento lê durante a renderização.
Controle o comportamento por meio de values
Como os fragmentos leem .Values, o seu pacote personaliza facilmente a saída compartilhada ao definir essas chaves no próprio values.yaml.
# your values.yaml
image:
repository: nginx
tag: "1.27"As bibliotecas contam com o padrão
Parciais bem escritos envolvem as leituras na função default, para que um valor não definido use uma alternativa de forma adequada, em vez de ser renderizado vazio.
replicas: {{ .Values.replicaCount | default 1 }}Substitua apenas essa chave
Para alterar um padrão, defina apenas essa chave nos seus valores. A biblioteca mantém todas as outras alternativas, para que substitua apenas o mínimo necessário.
# your values.yaml
replicaCount: 3Substitua um parcial inteiro
Precisa de mudanças maiores? Redefina o template nomeado no seu próprio pacote. A última definição para um nome prevalece, portanto a sua versão substitui a da biblioteca.
{{- define "common.labels" -}}
team: payments
{{- end -}}A última definição prevalece
Quando dois pacotes definem o mesmo nome de template, o Helm usa aquele que foi carregado por último. O pacote da sua aplicação pode ocultar deliberadamente um parcial da biblioteca.
Envolva em vez de substituir
Muitas vezes, é mais limpo definir um novo parcial que inclui o da biblioteca e depois acrescenta os seus campos extras. Assim, você estende a lógica sem perder a lógica original.
{{- define "app.labels" -}}
{{ include "common.labels" . }}
tier: backend
{{- end -}}Passe um escopo personalizado
Em vez do ponto raiz, passe a um parcial um contexto restrito, para que ele leia uma subárvore dos seus valores e reformule a saída a cada chamada.
{{ include "common.resources" .Values.web }}Crie um contexto mesclado
Para obter um controle mais preciso, construa um dict que misture a raiz e as substituições e depois passe-o adiante. O parcial verá exatamente os valores que você reuniu.
{{ include "common.tpl" (dict "top" . "name" "web") }}Confirme se a substituição funcionou
Sempre execute helm template depois de fazer uma substituição, para verificar se os seus valores ou o parcial redefinido produziram o manifesto pretendido.
helm template my-release . | grep replicasMantenha as substituições mínimas
Priorize os valores e só redefina parciais quando necessário. Substituições pequenas e locais mantêm o seu pacote alinhado às atualizações da biblioteca.
Verificação rápida
O seu pacote e a biblioteca dele definem ambos common.labels. Qual definição o Helm realmente usa?
Recapitulação: substituições locais
Personalize uma biblioteca primeiro por meio dos valores, redefina ou envolva parciais quando necessário, passe um escopo personalizado e depois verifique com helm template. ✅
Perguntas Frequentes
A aula “Substituindo localmente os padrões da biblioteca” é grátis?
Sim — o texto completo de “Substituindo localmente os padrões da biblioteca” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de DevOps Bootcamp, atualize para CoddyKit PRO. O curso de DevOps Bootcamp inclui 4 aulas no total.
O que vou aprender em “Substituindo localmente os padrões da biblioteca”?
Personalizando modelos compartilhados para cada consumidor Você pratica DevOps Bootcamp com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar DevOps Bootcamp?
Nenhuma experiência prévia é necessária. DevOps Bootcamp no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Substituindo localmente os padrões da biblioteca”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de DevOps Bootcamp?
Sim. Cada aula de DevOps Bootcamp inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Declarando um tipo de gráfico de biblioteca
- Exportando modelos nomeados reutilizáveis
- Consumindo uma biblioteca como dependência
- Substituindo localmente os padrões da biblioteca