AnsibleModule en argumentspecification
Definieer module-invoer en valideer deze.
AnsibleModule en argumentspecification is een gratis DevOps-bootcamp-les op CoddyKit. Dit is les 2 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject DevOps-bootcamp. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus DevOps-bootcamp bevat in totaal 4 lessen.
Maak kennis met AnsibleModule
De klasse AnsibleModule is je gereedschapskist. De klasse parseert de argumenten die Ansible verstuurt, valideert ze en biedt helpers om resultaten terug te geven.
from ansible.module_utils.basic import AnsibleModuleDe argument_spec-toewijzing
Je beschrijft elke invoer die je module accepteert in een woordenboek argument_spec. Ansible leest dit om te valideren wat gebruikers doorgeven.
argument_spec=dict(
name=dict(type='str', required=True)
)Geef elk argument een type
Stel een type in, zoals str, int, bool, list of dict. Ansible zet invoer om en weigert ongeldige invoer voordat je code zelfs maar wordt uitgevoerd.
count=dict(type='int', default=1)Markeer wat vereist is
Voeg required=True toe en Ansible mislukt met een duidelijke fout als de gebruiker dat argument vergeet. Handmatige controle is niet nodig.
path=dict(type='str', required=True)Geef zinvolle standaardwaarden op
Gebruik default, zodat optionele argumenten automatisch een waarde krijgen. Gebruikers stellen alleen in wat ze willen veranderen.
state=dict(type='str', default='present')Beperk tot geldige opties
De lijst choices beperkt een argument tot toegestane waarden. Alles wat daarbuiten valt, wordt vooraf met een duidelijke melding geweigerd.
state=dict(choices=['present', 'absent'])Bouw het moduleobject
Geef je spec door aan AnsibleModule om het object te maken. Vanaf dat moment staan al je invoergegevens veilig in module.params.
module = AnsibleModule(argument_spec=argument_spec)Lees gevalideerde invoer
Gebruik module.params, een gewoon woordenboek, om je argumenten te benaderen. De waarden zijn al getypeerd en gevalideerd, dus je kunt ze direct gebruiken.
name = module.params['name']Regels voor combinaties van argumenten
Moeten twee argumenten samen worden gebruikt, of juist nooit allebei? Geef regels zoals required_together of mutually_exclusive door aan AnsibleModule en die dwingt ze af.
mutually_exclusive=[['src', 'content']]Geheimen verbergen met no_log
Markeer gevoelige invoer met no_log=True, zodat wachtwoorden nooit in Ansible-logboeken of uitgebreide uitvoer verschijnen.
password=dict(type='str', no_log=True)Laat de spec het werk doen
Een goede argument_spec vervangt stapels handmatige validatie. Beschrijf invoer één keer en Ansible handelt typen, fouten en documentatie automatisch af.
Korte controle
Denk na over hoe invoer van gebruikers je modulecode bereikt.
Samenvatting
Definieer invoer in argument_spec met typen, standaardwaarden, required en keuzes, bouw AnsibleModule en lees daarna schone waarden uit module.params. ✅
Leer DevOps-bootcamp met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 142
- Lessen
- 568
Veelgestelde vragen
Is de les “AnsibleModule en argumentspecification” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad DevOps-bootcamp, waaronder “AnsibleModule en argumentspecification”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus DevOps-bootcamp bevat in totaal 4 lessen.
Wat leer ik in “AnsibleModule en argumentspecification”?
Definieer module-invoer en valideer deze. Je oefent met DevOps-bootcamp door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met DevOps-bootcamp te beginnen?
Ervaring vooraf is niet nodig. DevOps-bootcamp op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “AnsibleModule en argumentspecification”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over DevOps-bootcamp?
Ja. Elke les over DevOps-bootcamp bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Wanneer u een aangepaste module bouwt
- AnsibleModule en argumentspecification
- JSON retourneren en changed respecteren
- Check mode ondersteunen in uw module