Renvoyer du JSON et respecter changed
Respectez le protocole de résultat du module.
Renvoyer du JSON et respecter changed est une leçon Ansible Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Ansible Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Ansible Academy comprend 4 leçons au total.
Les modules parlent JSON
Lorsque votre module se termine, il doit remettre à Ansible un résultat JSON. C'est ainsi que le contrôleur apprend ce qui s'est passé sur l'hôte.
Quitter avec exit_json
Appelez module.exit_json en cas de réussite. Cette fonction affiche le résultat au format JSON et termine proprement le module avec le bon code de sortie.
module.exit_json(changed=True, name='web')La clé changed est importante
Indiquez toujours changed avec exactitude. Cette valeur indique à Ansible si vous avez modifié le système et détermine la ligne « ok » ou « changed » dans la sortie.
module.exit_json(changed=False)Vérifier l'état avant de modifier
Pour respecter changed, lisez d'abord l'état actuel. S'il correspond déjà à l'objectif, définissez changed=False et ne faites rien.
if current == desired:
module.exit_json(changed=False)Renvoyer des données supplémentaires
Ajoutez les clés de votre choix à exit_json : elles apparaîtront dans le résultat de la tâche. Les utilisateurs pourront ensuite enregistrer ces données et les réutiliser.
module.exit_json(changed=True, user_id=42)Échouer avec fail_json
En cas de problème, appelez module.fail_json avec un message clair. Ansible marque la tâche comme échouée et affiche votre texte.
module.fail_json(msg='API request timed out')Ne faites jamais qu'afficher du texte
N'utilisez pas print ni la sortie standard brute. Ansible attend uniquement cet objet JSON final : une instruction print isolée corrompt le résultat et fait échouer la tâche.
Un seul appel de sortie
Chaque module se termine exactement par un appel à exit_json ou à fail_json. Tous deux lèvent SystemExit, donc rien de ce qui les suit ne s'exécute.
Un message utile est précieux
Incluez un msg convivial dans vos résultats pour décrire ce que vous avez fait. De bons messages transforment les exécutions déroutantes en résultats faciles à lire.
module.exit_json(changed=True, msg='Created user web')Imiter le comportement intégré
Donnez à votre sortie l'apparence de celle des modules principaux : indiquez changed, renvoyez des champs pertinents et signalez clairement les échecs avec leur cause. La cohérence inspire confiance.
Le résultat commande tout
Les gestionnaires, les conditionnelles et les variables enregistrées lisent tous votre JSON. Indiquer correctement changed est ce qui fait de votre module un bon élément de l'écosystème Ansible.
Vérification rapide
Réfléchissez à ce que votre module doit signaler lorsqu'aucune modification n'a été effectuée.
Récapitulatif
Terminez par exit_json en cas de réussite ou par fail_json en cas d'erreur, indiquez honnêtement changed et n'affichez jamais de sortie brute. C'est le protocole de résultat des modules. 📦
Questions Fréquemment Posées
La leçon « Renvoyer du JSON et respecter changed » est-elle gratuite ?
Oui — le texte complet de « Renvoyer du JSON et respecter changed » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Ansible Academy, passe à CoddyKit PRO. Le cours Ansible Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Renvoyer du JSON et respecter changed » ?
Respectez le protocole de résultat du module. Tu pratiques Ansible Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Ansible Academy ?
Aucune expérience préalable n'est requise. Ansible Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « Renvoyer du JSON et respecter changed » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Ansible Academy ?
Oui. Chaque leçon Ansible Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Quand créer un module personnalisé
- AnsibleModule et spécification des arguments
- Renvoyer du JSON et respecter changed
- Prendre en charge le mode de vérification dans votre module