Rolümün içinde users
linux yaratmayı özelleştiriyorum. Rolümün kullanıcılarının home_directory
, group_name
, name
, password
'u özelleştirmelerine izin vermeliyim.Ansible - Bir değişken tanımlanmamışsa varsayılanı kullan
Varsayılan değerlerle başa çıkmanın daha esnek bir yolu olup olmadığını merak ediyordum.
- 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
Ama belirtildiği gibi, orada isteğe bağlı değişkenlerin bir sürü ve bu bir çok olasılık yaratır:
ben Yukarıdaki kod mümkün olduğunu biliyoruz.
Yukarıdaki kod gibi bir şey var mı? my_variable
tanımlanmamıştır zaman
user:
name: "default_name", "{{my_variable}}"
kod name="default_name"
belirlemelidir.
Ben defaults/main.yml
tüm değişkenleri ayarlamak ve bunun gibi kullanıcı oluşturmak olabilir:
- name: Create user
user:
name: "{{my_variable}}"
Ama bu değişkenlerin gerçekten büyük karma içindeyken ve varsayılan olamayacağı karma içindeki bazı karmaları vardır.
: https://stackoverflow.com/questions/19614027/jinja2-template-variable-if-none-object-set-a -default-value/19616065 –