Conceito e mecanismo
Check mode ajuda a antecipar alterações, mas depende do suporte do módulo e dos dados disponíveis. Algumas tarefas são ignoradas e resultados registados podem não representar uma execução real. Uma tarefa com check_mode=false executa normalmente mesmo quando o playbook recebe --check. Por isso, revê o conteúdo antes de tratar simulação como garantia de ausência de escrita. Diff mostra diferenças e pode revelar segredos. Num template de configuração, validate permite verificar o ficheiro temporário antes de o copiar para o destino final. O placeholder %s indica o ficheiro a validar; a opção não interpreta pipes ou expansão de shell.
Aplicação guiada
Handlers ligam alterações a ações posteriores, como recarregar um serviço. São notificados quando uma tarefa apresenta changed e executados pela ordem das definições, não pela ordem da lista notify. Várias notificações antes do mesmo flush não exigem vários reinícios. Existem pontos automáticos de execução entre secções do play; meta:flush_handlers pode antecipar handlers pendentes quando uma verificação seguinte precisa da configuração ativa. Num cenário fictício, o template mudou mas o teste funcional ainda lê o processo antigo. Valida o template, ativa a configuração no ponto previsto e só depois verifica o serviço. Um handler pode voltar a executar se for novamente notificado depois de um flush.
Ficheiro validado, handler pendente, processo antigo: a validação funcional precisa de ocorrer depois da ativação prevista.
Armadilhas comuns
Check como garantia universal; diff com segredos; notify como ordem; handler uma única vez em qualquer circunstância.
Tópicos relacionados: Inventário e contexto de execução · Tarefas e estado pretendido · Orquestração por lotes
Distingue previsão, validação do ficheiro, ativação e funcionamento.
Referência: Validating tasks: check mode and diff mode · Ansible community 14 / ansible-core 2.21 documentation consulted 2026-09-30; executor, collection and plugin compatibility requires confirmation