← Ansible: automatizar alterações e recuperar serviços
03 / 12 · 40 MIN

Validação e handlers

Valida antes de ativar configuração e conhece os limites de simulação.

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.

NA PRÁTICA

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

Leva esta ideia contigo

Distingue previsão, validação do ficheiro, ativação e funcionamento.

Criar conta

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

Ansible é uma marca comercial de Red Hat, Inc. A dr.pt é uma plataforma de preparação independente e não está afiliada, associada, patrocinada, autorizada nem aprovada por Red Hat. Os conteúdos e as perguntas são originais, não são perguntas oficiais de exame, e concluir os nossos testes não atribui nem garante qualquer certificação. Os nomes são usados apenas para identificar o tema. Todas as outras marcas pertencem aos respetivos titulares.