0Pricing
Ansible Academy · Leçon

AnsibleModule et spécification des arguments

Définissez et validez les entrées du module.

AnsibleModule et spécification des arguments est une leçon Ansible Academy gratuite sur CoddyKit. Ceci est la leçon 2 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.

Découvrez AnsibleModule

La classe AnsibleModule est votre boîte à outils. Elle analyse les arguments envoyés par Ansible, les valide et vous fournit des fonctions d’assistance pour renvoyer des résultats.

from ansible.module_utils.basic import AnsibleModule

La structure argument_spec

Vous décrivez chaque entrée acceptée par votre module dans un dictionnaire argument_spec. Ansible le lit pour valider ce que les utilisateurs transmettent.

argument_spec=dict(
  name=dict(type='str', required=True)
)

Attribuez un type à chaque argument

Définissez un type comme str, int, bool, list ou dict. Ansible convertit les valeurs et rejette les entrées incorrectes avant même l’exécution de votre code.

count=dict(type='int', default=1)

Indiquez ce qui est obligatoire

Ajoutez required=True et Ansible échoue avec une erreur claire si l’utilisateur oublie cet argument. Aucune vérification défensive n’est nécessaire.

path=dict(type='str', required=True)

Fournissez des valeurs par défaut raisonnables

Utilisez default afin que les arguments facultatifs reçoivent automatiquement une valeur. Les utilisateurs ne définissent que ce qu’ils souhaitent modifier.

state=dict(type='str', default='present')

Limitez les choix aux valeurs valides

La liste choices limite un argument aux valeurs autorisées. Toute autre valeur est rejetée immédiatement avec un message utile.

state=dict(choices=['present', 'absent'])

Construisez l’objet du module

Transmettez votre spécification à AnsibleModule pour créer l’objet. À partir de là, toutes vos entrées résident en toute sécurité dans module.params.

module = AnsibleModule(argument_spec=argument_spec)

Lisez les entrées validées

Accédez à vos arguments via module.params, un simple dictionnaire. Les valeurs sont déjà typées et validées : il vous suffit de les utiliser.

name = module.params['name']

Règles entre arguments

Deux arguments doivent-ils être utilisés ensemble ou ne doivent-ils jamais l’être simultanément ? Transmettez à AnsibleModule des règles comme required_together ou mutually_exclusive, et il les fera respecter.

mutually_exclusive=[['src', 'content']]

Masquez les secrets avec no_log

Marquez les entrées sensibles avec no_log=True afin que les mots de passe n’apparaissent jamais dans les journaux Ansible ni dans la sortie détaillée.

password=dict(type='str', no_log=True)

Laissez la spécification faire le travail

Une bonne argument_spec remplace des piles de validations manuelles. Décrivez les entrées une seule fois et Ansible gère gratuitement les types, les erreurs et la documentation.

Vérification rapide

Réfléchissez à la manière dont les entrées utilisateur parviennent au code de votre module.

Récapitulatif

Définissez les entrées dans argument_spec avec des types, des valeurs par défaut, les paramètres obligatoires et des choix, construisez AnsibleModule, puis lisez des valeurs propres depuis module.params. ✅

Questions Fréquemment Posées

La leçon « AnsibleModule et spécification des arguments » est-elle gratuite ?

Oui — le texte complet de « AnsibleModule et spécification des arguments » 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 « AnsibleModule et spécification des arguments » ?

Définissez et validez les entrées 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 2 sur 4.

Combien de temps prend la leçon « AnsibleModule et spécification des arguments » ?

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

  1. Quand créer un module personnalisé
  2. AnsibleModule et spécification des arguments
  3. Renvoyer du JSON et respecter changed
  4. Prendre en charge le mode de vérification dans votre module
← Retour à Ansible Academy