0Pricing
DevOps Bootcamp · Aula

Aplique roles e passe variáveis para roles

Inclua uma role e parametrize-a.

Aplique roles e passe variáveis para roles é 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.

Aplique uma função com roles:

A maneira mais simples de usar uma função é por meio da chave roles em uma execução. Liste os nomes das funções, e o Ansible executará cada uma em ordem.

- hosts: web
  roles:
    - nginx
    - firewall

As funções são executadas antes das tarefas

As funções listadas em roles são executadas antes de qualquer tarefa da mesma execução. Lembre-se dessa ordem ao combinar funções e tarefas.

Passe variáveis diretamente

Para personalizar uma função, passe as variáveis no próprio local em que você a aplica. O Ansible as fornece à função, substituindo os valores padrão.

roles:
  - role: nginx
    nginx_port: 8080

A chave role: deixa isso explícito

Ao passar variáveis, use a chave role para indicar o nome da função e adicione as variáveis como chaves no mesmo nível abaixo dela.

- role: postgres
  db_name: shop
  db_user: admin

Os valores padrão são a alternativa

Se você não passar nenhuma variável, a função usará o valor de defaults/main.yml. É por isso que toda função funciona imediatamente.

Substitua a mesma função duas vezes

Você pode aplicar uma função várias vezes com variáveis diferentes, por exemplo, configurando duas instâncias de banco de dados a partir de uma única função.

As variáveis de grupo também chegam às funções

As variáveis em group_vars e host_vars são encaminhadas automaticamente às funções aplicadas a esses hosts, sem necessidade de passá-las diretamente.

vars_files mantêm as execuções organizadas

Retire as configurações da função da execução e coloque-as em um arquivo separado com vars_files, para que seu playbook permaneça curto e legível.

vars_files:
  - web_settings.yml

include_role é executado no meio da execução

Precisa de uma função no meio das suas tarefas? Use include_role como uma tarefa para aplicá-la dinamicamente exatamente naquele ponto.

- name: Set up nginx
  ansible.builtin.include_role:
    name: nginx

Documente as variáveis aceitas

Uma boa função lista no README as variáveis que espera receber. Entradas claras tornam a função fácil e segura de reutilizar por qualquer pessoa.

Uma função, muitos servidores

Aplique a mesma função parametrizada a muitos hosts, ajustando cada um com variáveis diferentes. Isso é reutilização sem reescrever uma única tarefa.

Verificação rápida

Pense em como substituir o valor padrão de uma função ao aplicá-la.

Recapitulação

Aplique funções com a chave roles, passe variáveis diretamente para substituir os valores padrão e reutilize uma única função parametrizada em muitos hosts. 🚀

Perguntas Frequentes

A aula “Aplique roles e passe variáveis para roles” é grátis?

Sim — o texto completo de “Aplique roles e passe variáveis para roles” é 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 “Aplique roles e passe variáveis para roles”?

Inclua uma role e parametrize-a. 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 “Aplique roles e passe variáveis para roles”?

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