AnsibleModule e specifica degli argomenti
Definisca e convalidi gli input del modulo
AnsibleModule e specifica degli argomenti è una lezione Ansible Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Ansible Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Ansible Academy include 4 lezioni in totale.
Ecco AnsibleModule
La classe AnsibleModule è il suo strumento principale. Analizza gli argomenti inviati da Ansible, li convalida e fornisce funzioni di supporto per restituire i risultati.
from ansible.module_utils.basic import AnsibleModuleLa mappa argument_spec
Descriva ogni input accettato dal modulo in un dizionario argument_spec. Ansible lo legge per convalidare i valori passati dagli utenti.
argument_spec=dict(
name=dict(type='str', required=True)
)Assegni un tipo a ogni argomento
Imposti un type come str, int, bool, list o dict. Ansible converte i valori e rifiuta gli input non validi prima ancora di eseguire il codice.
count=dict(type='int', default=1)Indichi quali argomenti sono obbligatori
Aggiunga required=True e Ansible segnalerà un errore chiaro se l'utente dimentica quell'argomento. Non servono controlli difensivi.
path=dict(type='str', required=True)Fornisca valori predefiniti adeguati
Usi default affinché gli argomenti facoltativi ricevano automaticamente un valore. Gli utenti dovranno impostare solo ciò che desiderano modificare.
state=dict(type='str', default='present')Limiti i valori alle scelte valide
L'elenco choices limita un argomento ai valori consentiti. Qualsiasi altro valore viene rifiutato subito con un messaggio utile.
state=dict(choices=['present', 'absent'])Crei l'oggetto del modulo
Passi la propria specifica ad AnsibleModule per creare l'oggetto. Da questo momento, tutti gli input sono disponibili in modo sicuro in module.params.
module = AnsibleModule(argument_spec=argument_spec)Legga gli input convalidati
Acceda agli argomenti tramite module.params, un normale dizionario. I valori sono già tipizzati e convalidati, quindi deve solo utilizzarli.
name = module.params['name']Regole tra gli argomenti
Ha bisogno che due argomenti siano presenti insieme o che non lo siano mai entrambi? Passi regole come required_together o mutually_exclusive ad AnsibleModule, che le farà rispettare.
mutually_exclusive=[['src', 'content']]Nasconda i segreti con no_log
Contrassegni gli input sensibili con no_log=True affinché le password non compaiano nei log di Ansible o nell'output dettagliato.
password=dict(type='str', no_log=True)Lasci che sia la specifica a fare il lavoro
Verifica rapida
Riflettete su come gli input dell'utente arrivano al codice del vostro modulo.
Riepilogo
Definite gli input in argument_spec specificando tipi, valori predefiniti, parametri obbligatori e scelte disponibili, create AnsibleModule, quindi leggete i valori già verificati da module.params. ✅
Domande Frequenti
La lezione «AnsibleModule e specifica degli argomenti» è gratuita?
Sì — il testo completo di «AnsibleModule e specifica degli argomenti» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Ansible Academy, passa a CoddyKit PRO. Il corso Ansible Academy include 4 lezioni in totale.
Cosa imparerò in «AnsibleModule e specifica degli argomenti»?
Definisca e convalidi gli input del modulo Eserciti Ansible Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Ansible Academy?
Non è richiesta alcuna esperienza precedente. Ansible Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «AnsibleModule e specifica degli argomenti»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Ansible Academy?
Sì. Ogni lezione Ansible Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Quando creare un modulo personalizzato
- AnsibleModule e specifica degli argomenti
- Restituire JSON e rispettare changed
- Supportare la modalità check nel proprio modulo