Ho un ruolo generico webserver
che utilizza un altro ruolo nginx
per generare nuovi vserver.Come passare variabili da un ruolo a valle ad altri ruoli di dipendenza con ansible?
webserver/meta/main.yml
assomiglia:
allow_duplicates: yes dependencies: - role: nginx name: api vserver frontend_port: "{{ frontend_port }}" domain: "{{ api_domain }}" backend_host: 127.0.0.1 - role: nginx name: portal vserver domain: "{{ portal_domain }}" backend_host: 127.0.0.1
Il problema è che queste variabili dovrebbero essere definiti all'interno del webserver-role/vars/(test|staging).yml
Is sembra che Ansible cercherà di caricare le dipendenze prima di caricare le variabili.
Come posso risolvere questo problema? Non voglio inserire specifiche di configurazione all'interno dei ruoli di basso livello.
Inoltre, non voglio inserire configurazioni all'interno del playbook perché queste configurazioni sono condivise su più Playbook.
Generalmente si sarà meglio di avere i file di configurazione di scena separati in 'group_vars' piuttosto che file separati in' role'. –