Ho la seguente variabile dict struttura in un playbook ansible:Come attraversare una struttura dict annidata con Ansible?
apache_vhosts:
- name: foo
server_name: foo.com
server_aliases:
- a.foo.com
- b.foo.com
- c.foo.com
- name: bar
server_name: bar.com
server_aliases:
- d.bar.com
- e.bar.com
- f.bar.com
Ho bisogno di creare un collegamento simbolico per ciascuno dei domini server_name
e server_aliases
, ad esempio:
/tmp/foo.com -> /var/www/foo
/tmp/a.foo.com -> /var/www/foo
/tmp/b.foo.com -> /var/www/foo
/tmp/c.foo.com -> /var/www/foo
/tmp/bar.com -> /var/www/bar
/tmp/d.bar.com -> /var/www/bar
/tmp/e.bar.com -> /var/www/bar
/tmp/f.bar.com -> /var/www/bar
Ho il seguente compito che lavora per la server_name
:
- name: Add a domain symlinks /tmp for server_name.
file:
src: "/var/www/{{ item.name }}"
dest: "/tmp/{{ item.server_name }}"
state: link
with_items: apache_vhosts
ma non sono sicuro di come posso fare lo stesso per l'array di server_aliases
.
Sono felice di utilizzare due attività distinte, se necessario, ma desidero evitare di dover aggiungere una variabile separata domains
che duplica l'elenco di domini in una struttura piatta.
Questo Google Groups post è vicino, ma non riesco a capire come farlo funzionare per più host virtuali.
È possibile? O questo è fondamentalmente l'approccio sbagliato?
Che ha funzionato. Grazie per il tuo aiuto. – tommarshall