0Pricing
DevOps Bootcamp · Aula

Anatomia do diretório de uma role

tasks, handlers, templates, defaults, vars.

Anatomia do diretório de uma role é uma aula grátis de DevOps Bootcamp no CoddyKit. Esta é a aula 2 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.

Uma função é uma árvore de pastas

Uma função é apenas um diretório com um conjunto fixo de subpastas. O Ansible conhece cada pasta pelo nome e carrega seu conteúdo automaticamente.

roles/
  nginx/
    tasks/
    handlers/
    templates/

tasks/main.yml é o ponto de entrada

O arquivo tasks/main.yml contém a lista principal de tarefas da função. É a primeira coisa que o Ansible executa quando a função é aplicada.

tasks/main.yml:
- name: Install nginx
  ansible.builtin.package:
    name: nginx

handlers/ contém a lógica de reinicialização

A pasta handlers define ações como reiniciar um serviço. As tarefas notificam esses manipuladores, para que as reinicializações ocorram somente quando houver alguma alteração.

templates/ para arquivos Jinja2

Coloque seus arquivos de modelo .j2 em templates/. O módulo de modelos os encontra ali pelo nome, sem que seja necessário informar o caminho completo.

templates/
  nginx.conf.j2

files/ para arquivos estáticos

A pasta files armazena arquivos simples que você copia sem alterações. O módulo de cópia os localiza automaticamente, assim como os modelos.

defaults/ define variáveis de baixa prioridade

O arquivo defaults/main.yml contém variáveis com a menor precedência, para que os usuários possam substituí-las facilmente de fora da função.

defaults/main.yml:
nginx_port: 80

vars/ define variáveis de alta prioridade

O arquivo vars/main.yml contém variáveis com precedência mais alta. Use-o para valores dos quais a função depende e que raramente devem mudar.

meta/main.yml descreve a função

O arquivo meta/main.yml lista o autor da função, a licença, as plataformas compatíveis e quaisquer dependências da função.

main.yml é o nome especial

Dentro de tasks, handlers, vars e defaults, o Ansible carrega automaticamente o arquivo chamado main.yml. Essa convenção de nomenclatura é o que conecta tudo.

Você só precisa do que usar

Uma função não precisa ter todas as pastas. Se não houver modelos, basta não criar o diretório templates. O Ansible ignora pastas opcionais ausentes.

tests/ e README para um acabamento melhor

Funções maduras incluem um README e uma pasta tests, para que outras pessoas entendam e verifiquem sua automação antes de usá-la.

Verificação rápida

Lembre-se de onde fica a lista principal de tarefas de uma função.

Recapitulação

Uma função é uma árvore de pastas na qual tasks, manipuladores, modelos, arquivos, defaults, vars e meta têm, cada um, seu local fixo, todos vinculados a main.yml. 📁

Perguntas Frequentes

A aula “Anatomia do diretório de uma role” é grátis?

Sim — o texto completo de “Anatomia do diretório de uma role” é 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 “Anatomia do diretório de uma role”?

tasks, handlers, templates, defaults, vars. 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 2 de 4.

Quanto tempo leva a aula “Anatomia do diretório de uma role”?

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

  1. Por que usar roles: do monólito aos módulos
  2. Anatomia do diretório de uma role
  3. Crie a estrutura de uma role com ansible-galaxy init
  4. Aplique roles e passe variáveis para roles
← Voltar para DevOps Bootcamp