Sto personalizzando la creazione di linux users
all'interno del mio ruolo. Devo personalizzare gli utenti del mio ruolo home_directory
, group_name
, name
, password
.Ansible - Usa predefinito se una variabile non è definita
Mi chiedevo se c'è un modo più flessibile per far fronte ai valori predefiniti.
So che il codice di cui sopra è possibile:
- name: Create default
user:
name: "default_name"
when: my_variable is not defined
- name: Create custom
user:
name: "{{my_variable}}"
when: my_variable is defined
Ma, come ho già detto, ci sono un sacco di variabili facoltative e questo crea un sacco di possibilità.
C'è qualcosa come il codice sopra?
user:
name: "default_name", "{{my_variable}}"
Il codice deve impostare name="default_name"
quando my_variable
non è definito.
ho potuto impostare tutte le variabili su defaults/main.yml
e creare l'utente in quel modo:
- name: Create user
user:
name: "{{my_variable}}"
Ma queste variabili sono all'interno di una molto grande hash e ci sono alcune hash all'interno di tale hash che non può essere un difetto.
correlati: https://stackoverflow.com/questions/19614027/jinja2-template-variable-if-none-object-set-a -default-value/19616065 –