0Pricing
Ansible Academy · Aula

Retorne JSON e respeite changed

Siga o protocolo de resultados do módulo.

Retorne JSON e respeite changed é uma aula grátis de Ansible Academy no CoddyKit. Esta é a aula 3 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 Ansible Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Ansible Academy inclui 4 aulas no total.

Os módulos se comunicam em JSON

Quando o módulo termina, ele precisa entregar um resultado em JSON ao Ansible. É assim que o controlador descobre o que aconteceu no host.

Saia com exit_json

Chame module.exit_json quando houver sucesso. Isso imprime o resultado como JSON e encerra o módulo corretamente com o código de saída adequado.

module.exit_json(changed=True, name='web')

A chave changed é importante

Sempre informe changed com precisão. Isso indica ao Ansible se você alterou o sistema e determina a linha ok ou changed na saída.

module.exit_json(changed=False)

Verifique o estado antes de alterar

Para informar changed corretamente, primeiro leia o estado atual. Se ele já corresponder ao objetivo, defina changed=False e não faça nada.

if current == desired:
    module.exit_json(changed=False)

Retorne dados adicionais

Adicione as chaves que quiser a exit_json, e elas aparecerão no resultado da tarefa. Os usuários poderão registrá-las e reutilizar esses dados mais tarde.

module.exit_json(changed=True, user_id=42)

Falhe com fail_json

Quando algo der errado, chame module.fail_json com uma mensagem clara. O Ansible marcará a tarefa como com falha e exibirá seu texto.

module.fail_json(msg='API request timed out')

Nunca apenas imprima

Não use print nem a saída bruta padrão. O Ansible espera apenas esse objeto JSON final, portanto uma impressão perdida corrompe o resultado e faz a tarefa falhar.

Apenas uma chamada de saída

Cada módulo termina exatamente com um exit_json ou fail_json. Ambos lançam SystemExit, portanto nada depois deles é executado.

Uma mensagem útil ajuda

Inclua uma msg amigável nos resultados para descrever o que você fez. Boas mensagens transformam execuções confusas em resultados fáceis de entender.

module.exit_json(changed=True, msg='Created user web')

Imite o comportamento integrado

Faça sua saída parecer com a dos módulos principais: informe changed, retorne campos significativos e falhe claramente com um motivo. A consistência gera confiança.

O resultado determina tudo

Manipuladores, condicionais e variáveis registradas leem seu JSON. Informar changed corretamente é o que faz do seu módulo um bom cidadão do Ansible.

Verificação rápida

Pense no que seu módulo deve informar quando nada tiver sido modificado.

Recapitulação

Termine com exit_json em caso de sucesso ou fail_json em caso de erro, informe changed com honestidade e nunca imprima a saída bruta. Esse é o protocolo de resultados do módulo. 📦

Perguntas Frequentes

A aula “Retorne JSON e respeite changed” é grátis?

Sim — o texto completo de “Retorne JSON e respeite changed” é 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 Ansible Academy, atualize para CoddyKit PRO. O curso de Ansible Academy inclui 4 aulas no total.

O que vou aprender em “Retorne JSON e respeite changed”?

Siga o protocolo de resultados do módulo. Você pratica Ansible Academy 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 Ansible Academy?

Nenhuma experiência prévia é necessária. Ansible Academy 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 3 de 4.

Quanto tempo leva a aula “Retorne JSON e respeite changed”?

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 Ansible Academy?

Sim. Cada aula de Ansible Academy 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. Quando criar um módulo personalizado
  2. AnsibleModule e especificação de argumentos
  3. Retorne JSON e respeite changed
  4. Adicione o modo de verificação ao seu módulo
← Voltar para Ansible Academy