0Pricing
DevOps Bootcamp · Lezione

Variabili extra dalla riga di comando

Sovrascriva i valori a runtime con -e.

Variabili extra dalla riga di comando è una lezione DevOps Bootcamp gratuita su CoddyKit. Questa è la lezione 3 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 DevOps Bootcamp, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso DevOps Bootcamp include 4 lezioni in totale.

Valori durante l'esecuzione

A volte desidera scegliere un valore quando avvia un play, invece di inserirlo direttamente in un file. È proprio questo lo scopo delle variabili extra. 🌟

Il flag -e

Passi le variabili extra con il flag -e (o --extra-vars) di ansible-playbook. Ognuna diventa una variabile disponibile per l'intera esecuzione.

ansible-playbook site.yml -e "env=prod"

Più coppie key=value

Separi più valori con degli spazi all'interno di un'unica stringa racchiusa tra virgolette. Ansible analizza ogni coppia key=value e la trasforma in una variabile.

ansible-playbook site.yml -e "env=prod port=443"

Ripetere -e

Può anche passare -e più volte. Ogni occorrenza aggiunge la propria variabile, mantenendo leggibili i comandi lunghi.

ansible-playbook site.yml -e env=prod -e port=443

JSON per tipi complessi

key=value trasforma tutto in stringhe. Per passare numeri, liste o dizionari, usi invece JSON nelle extra vars.

ansible-playbook site.yml -e '{"port": 443}'

Caricare le extra vars da un file

Anteponendo @ al valore, è possibile leggere le variabili da un file YAML o JSON. È ideale per un lungo elenco di override.

ansible-playbook site.yml -e @overrides.yml

Le extra vars prevalgono

Un'extra var prevale su quasi tutte le altre fonti. Se env è impostato nelle vars e anche sulla CLI, viene usato il valore della riga di comando.

Un valore predefinito sicuro per l'override

Abbini le extra vars al filtro default, così il play continua a funzionare anche quando non viene fornito alcun override.

name: "{{ env | default('dev') }}"

Ideale per gli ambienti

Lo stesso playbook può essere eseguito in dev, staging o prod semplicemente cambiando una extra var all'avvio. Un solo file, molte destinazioni.

ansible-playbook deploy.yml -e env=staging

Controllare il comportamento con i flag

Le extra vars funzionano bene come interruttori on/off. Ne combini una con una condizione when per abilitare o saltare un task.

when: run_migrations | default(false)

Gestire con attenzione gli spazi tra virgolette

Se un valore contiene spazi, racchiuda l'intera coppia tra virgolette, così la shell non la divide. Presti attenzione al quoting della shell.

ansible-playbook s.yml -e "motd=Hello there"

Controllo rapido

Imposta port nelle vars e passa anche -e port=443. Quale valore prevale?

Riepilogo

Ora può sovrascrivere i valori all'avvio con -e, passare JSON o file preceduti da @ e contare sul fatto che le extra vars prevalgano sulle altre fonti. ✨

Domande Frequenti

La lezione «Variabili extra dalla riga di comando» è gratuita?

Sì — il testo completo di «Variabili extra dalla riga di comando» è 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 DevOps Bootcamp, passa a CoddyKit PRO. Il corso DevOps Bootcamp include 4 lezioni in totale.

Cosa imparerò in «Variabili extra dalla riga di comando»?

Sovrascriva i valori a runtime con -e. Eserciti DevOps Bootcamp 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 DevOps Bootcamp?

Non è richiesta alcuna esperienza precedente. DevOps Bootcamp su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «Variabili extra dalla riga di comando»?

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 DevOps Bootcamp?

Sì. Ogni lezione DevOps Bootcamp 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

  1. Definire e usare vars in un play
  2. La sintassi di sostituzione {{ }}
  3. Variabili extra dalla riga di comando
  4. Origine e precedenza delle variabili
← Torna a DevOps Bootcamp