Referência rápida

Folha de dicas de estrutura e design de papéis do Ansible

Guia de referência rápida para layout de diretórios de papéis do Ansible, tarefas, manipuladores, variáveis, modelos e dependências meta.

· Publicado

Os papéis (roles) do Ansible oferecem uma forma padronizada de modularizar tarefas, manipuladores, variáveis e modelos para reutilização consistente.

🔗 Related: Folha de dicas básica do Ansible · Guia de início rápido do Ansible · Exemplos de Ansible Playbooks

Estrutura padrão de diretórios de papéis

Gere o esqueleto de um papel com ansible-galaxy init role_name:

roles/
  common/
    tasks/
      main.yml          # Ponto de entrada principal para tarefas executadas pelo papel
    handlers/
      main.yml          # Manipuladores acionados via notify
    templates/          # Modelos Jinja2 (.j2) usados pelo módulo template
    files/              # Arquivos estáticos e scripts transferidos pelo módulo copy
    vars/
      main.yml          # Variáveis de alta precedência específicas deste papel
    defaults/
      main.yml          # Variáveis padrão de baixa precedencia (substituíveis)
    meta/
      main.yml          # Dependências de papéis e metadados de autoria

Uso de papéis em Playbooks

---
- name: Apply common and webserver roles
  hosts: webservers
  become: true
  roles:
    - role: common
    - role: nginx
      vars:
        nginx_port: 8080

Precedência de variáveis em papéis

Variáveis em defaults/main.yml têm a menor precedência no Ansible, servindo como padrões seguros facilmente substituíveis.

Variáveis em vars/main.yml possuem alta precedência e são reservadas para lógica interna constante do papel.


Referências

Temas relacionados