0Pricing
Helm Academy · Aula

Files, Template e o contexto raiz

Acesse arquivos incluídos e o escopo do ponto.

Files, Template e o contexto raiz é uma aula grátis de Helm Academy 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 Helm Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Helm Academy inclui 4 aulas no total.

O contexto raiz: o ponto

No início de um modelo, o ponto . é o contexto raiz que contém todos os objetos integrados: .Values, .Release, .Chart e outros.

O ponto pode mudar de escopo

Blocos como with e range vinculam novamente o ponto a um valor mais específico. Portanto, . nem sempre significa a raiz dentro de cada bloco.

Acessando a raiz com o cifrão

A variável $ sempre aponta para o contexto raiz original. Dentro de um range ou with, use $ para voltar a .Values ou .Release.

{{ range .Values.ports }}
release: {{ $.Release.Name }}
{{ end }}

O objeto Files

.Files permite que os modelos leiam arquivos que não são modelos e que estejam incluídos no pacote, como um arquivo de configuração que você queira enviar dentro de um ConfigMap. 📄

Lendo um arquivo como texto

.Files.Get retorna o conteúdo de um arquivo como uma string. Passe o caminho relativo à raiz do pacote para incluí-lo no manifesto.

data:
  app.conf: |
{{ .Files.Get "config/app.conf" | indent 4 }}

Files tem limitações

.Files não pode ler tudo: templates/ e Chart.yaml são excluídos, e os padrões de .helmignore são ignorados durante o empacotamento.

Usando padrões para vários arquivos

.Files.Glob encontra vários arquivos por padrão, retornando um mapa que você pode percorrer com range para criar várias entradas de ConfigMap de uma só vez.

{{ range $path, $bytes := .Files.Glob "config/*" }}...{{ end }}

Codificando o conteúdo dos arquivos

Dados binários ou secretos devem ser codificados em base64. Encadeie .Files.Get com b64enc para incorporá-los com segurança em um recurso Secret.

ca.crt: {{ .Files.Get "certs/ca.crt" | b64enc }}

O objeto Template

O objeto .Template descreve o arquivo que está sendo renderizado. .Template.Name é seu caminho, útil em comentários e mensagens de erro.

# rendered from {{ .Template.Name }}

BasePath aponta para os modelos

.Template.BasePath fornece o caminho do diretório de modelos do pacote que está sendo renderizado. Ele funciona em conjunto com .Template.Name para localizar o próprio arquivo.

Passando a raiz para auxiliares

Modelos nomeados só veem o contexto que você fornece a eles. Passar $ ou o ponto raiz garante que um auxiliar ainda possa acessar .Values e .Release.

{{ include "mychart.labels" $ }}

Verificação rápida

Você está dentro de um laço de intervalo em que o ponto foi redefinido para um item da lista.

Recapitulação: arquivos e contexto raiz

Você aprendeu que o ponto é o contexto raiz, $ sempre o alcança, e .Files mais .Template permitem incorporar arquivos empacotados e localizar o modelo atual.

Perguntas Frequentes

A aula “Files, Template e o contexto raiz” é grátis?

Sim — o texto completo de “Files, Template e o contexto raiz” é 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 Helm Academy, atualize para CoddyKit PRO. O curso de Helm Academy inclui 4 aulas no total.

O que vou aprender em “Files, Template e o contexto raiz”?

Acesse arquivos incluídos e o escopo do ponto. Você pratica Helm Academy 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 Helm Academy?

Nenhuma experiência prévia é necessária. Helm Academy 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 “Files, Template e o contexto raiz”?

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 Helm Academy?

Sim. Cada aula de Helm Academy 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

  1. O objeto Values e o acesso aninhado
  2. Metadados da release por meio de .Release
  3. Objetos Chart e Capabilities
  4. Files, Template e o contexto raiz
← Voltar para Helm Academy