Per implementare le condizioni in Ansible, utilizziamo il Quando la parola chiave. La parola chiave prende espressioni booleane in base a un valore o una variabile da compiti o fatti precedenti raccolti dagli host remoti.
Questa guida ti insegnerà come implementare le condizioni nei playbook Ansible usando la parola chiave quando.
Ansible When Conditionals: Uso di base
La parola chiave quando prende una semplice sintassi:
Quando: (condizione booleana)Assicurarsi di passare una condizione che valuti a vero o falso.
Per esempio:
Quando: Ansible_pkg_mgr == "Yum"Se si desidera combinare più condizioni, è possibile utilizzare operatori logici come e, o non.
Quando: (condizione1) e (condizione2)Per capire come usare l'ansible quando la parola chiave, useremo esempi pratici.
Esempio 1
Il primo esempio creerà un utente se l'utente specificato non esiste sull'host remoto.
---L'esempio sopra inizia controllando se la directory home dell'utente Ubuntu è disponibile. Quindi utilizziamo la condizione quando creare un file di testo se la directory è disponibile.
Esempio 2
L'esempio successivo chiude tutti gli host remoti Ubuntu usando una condizione quando.
---Nell'esempio sopra, utilizziamo fatti raccolti per valutare se i server provengono dalla famiglia Ubuntu. Se vero, spegnere i server.
Esempio 3
Nell'esempio seguente, combiniamo due condizioni che usano un e operatore.
---L'esempio sopra controlla se gli host sono host Debian e se la versione di distribuzione è uguale a Debian 10.
Esempio 4
Installiamo il server Web Apache nel playbook qui sotto se la famiglia host è un host Debian o Ubuntu.
Il playbook utilizza un logico o un operatore.
---Esempio 5
Considera il playbook qui sotto che aggiorna il server Nginx all'ultima versione utilizzando l'operatore NOT.
---Se l'output dal server Nginx non è la versione corrente, installare la versione corrente del pacchetto.
Conclusione
In questa guida, abbiamo discusso di come lavorare con i condizionali in Ansible usando la parola chiave quando.
Grazie per aver letto!