Come utilizzare Ansible Assert per eseguire compiti condizionali

Come utilizzare Ansible Assert per eseguire compiti condizionali
Ansible è un framework sviluppato e lanciato nel 2012. È uno strumento di automazione IT che utilizza diversi playbook, plug-in e moduli per eseguire attività eseguite in un ambiente di gestione del software.

In questo articolo, esamineremo il modulo Assert, come funziona, perché è necessario e i diversi modi in cui può essere integrato nelle tue attività di routine.

Come funzionano le dichiarazioni condizionali?

Durante la codifica in un linguaggio di programmazione regolare, incontriamo situazioni in cui abbiamo bisogno di dichiarazioni condizionali per risolvere il problema. Il programma deve prendere alcune decisioni per andare alla parte successiva del problema.

Un esempio di un'affermazione condizionale è l'istruzione IF e altro. Il funzionamento dell'istruzione IF e altro è che se l'espressione dopo il "if" è vera, il flusso e il controllo logici andrebbero all'espressione inclusi con "if". Tuttavia, se la condizione del "if" è falsa, il controllo va all'espressione inclusa con "altro".

Ad esempio, guarda il seguente pseudo-codice.

Se a = 10
Stampa "A Is 10"
altro
Stampa "A non è 10"

Il compilatore controllerà prima se "a" è 10 o no. Se lo è, verrà stampato "a è 10", altrimenti "a non è 10" verrà stampato.

È possibile utilizzare le dichiarazioni condizionali per indirizzare la CPU per eseguire attività logiche. Ci sono molti casi in cui potresti trovare dichiarazioni If-Else come cruciali per i calcoli desiderati. Il modulo Assert in Ansible fa qualcosa di simile.

Qual è il modulo Ansible Assert?

Se una determinata condizione è vera, puoi "affermare" che l'espressione data è vera e stampare un messaggio insieme ad essa. Assert non istruisce il sistema a prendere una decisione, quindi non è un'affermazione condizionale. Dice semplicemente al sistema che l'affermazione che sta scrivendo è vera.

Il modulo Assert può essere utilizzato in combinazione con qualsiasi altro modulo. Puoi integrarlo con altri moduli in modo da ricevere un messaggio di successo non appena la condizione si rivela vera. Non ci sono errori logici o aritmetici da commettere o problemi che potrebbero essere causati quando si utilizza l'asserzione in Ansible Playbooks.

Parametri

Esistono diversi parametri disponibili con l'affermazione per renderlo più funzionale e intraprendente. Di seguito sono riportati alcuni parametri che userete più frequentemente.

Fail_msg: Puoi usarlo con Assert per stampare un'istruzione affermando che la condizione menzionata con assert non era vera.

Success_MSG: Questo può essere usato per stampare un messaggio che afferma che la condizione menzionata con assert si è rivelata vera.

Quello: Questo è l'operatore che devi utilizzare con assert per specificare la condizione o l'istruzione.

Tranquillo: La tranquillità può essere usata al posto di successo_msg per menzionare che la condizione è vera.

Questa è stata l'introduzione di base del modulo Assert disponibile in Ansible. Successivamente, diamo un'occhiata ad alcuni esempi di come si usano Assert e i suoi diversi parametri.

Esempi

- assert: That: "a = 10 '"

Questo è un semplice esempio in cui stiamo usando assert in combinazione con "quello" per affermare che la variabile A è 10.

- affermare:

Quello:

- a = 3

Questo è un altro modo di utilizzare Affert con "quello" per specificare il valore della variabile a.

- affermare:

Quello:

- esempio <= 10
- Esempio> = 0

fail_msg: "" esempio "deve essere tra 0 e 10"

Success_MSG: "'Esempio' è compreso tra 0 e 10"

A parte questo, puoi eseguire un playbook usando il seguente comando sulla shell di Linux:

libro di prova Ansible-Playbook.YML

In questo esempio, stiamo usando Assert, "That", "Fail_msg" e "Success_MSG" nello stesso codice. Come è evidente, stiamo specificando che il valore della variabile "Esempio" è compreso tra 0 e 10. Fail_MSG stampa il messaggio dicendo che il valore può essere solo tra 0 e 10 e il success_msg stampa il messaggio dicendo che "esempio" si trova nell'intervallo di 0 e 10.

- affermare:

Quello:

- esempio <= 10
- Esempio> = 0

MSG: "'Esempio' deve essere tra 0 e 10"

Ansible 2.7 e le versioni precedenti non avevano le funzionalità "Success_msg" o "fail_msg". C'era il semplice operatore "MSG" che poteva essere utilizzato per stampare un determinato messaggio. Abbiamo usato "msg" nell'esempio sopra.

- affermare:

Quello:

- my_param <= 100
- my_param> = 0

Quiet: vero

Infine, in questo esempio abbiamo usato l'operatore "tranquillo" per specificare che la condizione scritta è vera.

Questi erano alcuni esempi di come il modulo Assert e i suoi parametri vengono utilizzati in combinazione. Assert è un ottimo modulo da utilizzare nei playbook. Vediamo come funzionerebbe.

Ansible Assert in Playbooks

I playbook sono una delle caratteristiche principali di Ansible. Sono scritti nel formato YAML che significa "ancora un'altra lingua di markup". La sintassi per la creazione di playbook è molto semplice e la cosa migliore di loro è che i playbook sono flessibili, rendendo sempre più intraprendente.

Con i playbook con il modulo Assert in essi, gli utenti possono creare funzioni di test e strategie per se stessi e i loro sistemi. Ad esempio, è possibile creare un playbook che controlla automaticamente gli aggiornamenti di sistema. Puoi usare Assert e fare in modo che il tuo playbook ti fornisca un messaggio di "aggiornamento" o un messaggio "aggiornamenti disponibili", ogni volta che controlla gli aggiornamenti.

Playbook come questi sono il motivo per cui Ansible è potente. Porta automazione ai nostri ambienti di gestione che consente agli utenti di essere più efficienti.

Conclusione

In questo articolo, abbiamo esaminato il modulo Assert. Come precedentemente stabilito, il modulo Assert è simile all'uso di istruzioni condizionali nei normali linguaggi di programmazione. Abbiamo esaminato la funzione eseguita da assert e il modo in cui possiamo usare diversi parametri disponibili con essa.

Speriamo che tu sia stato in grado di cogliere l'intero concetto di utilizzo di Assert e come puoi usarlo per generare messaggi. Per ulteriori domande, faccelo sapere nei commenti.