Как пройти через вложенную структуру dict с помощью Ansible?

У меня есть следующая переменная структуры dict в ANSIBLE playbook:

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

Мне нужно создать символическую ссылку для каждого изserver_name а такжеserver_aliases домены, например:

/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

У меня есть следующая задача, которая работает для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

Но я не уверен, как я могу сделать то же самое для массиваserver_aliases.

Я рад использовать две отдельные задачи, если это необходимо, но я стараюсь не добавлять отдельныеdomains переменная, которая дублирует список доменов в плоской структуре.

этоСообщение групп Google близко, но я не могу понять, как заставить его работать для нескольких виртуальных хостов.

Это возможно? Или это принципиально неправильный подход?

Ответы на вопрос(1)

Ваш ответ на вопрос