Я пытаюсь развернуть несколько экземпляров службы на одном хосте. У службы есть файл конфигурации, и в этот файл я хотел бы включить индекс экземпляра, которому он принадлежит. Например:
# main.yml
- name: Configure each Instance
template: src=config dest=/usr/service/etc/config@{{item}}-{{count}}
with_items:
- "A"
- "B"
- "C"
# templates/config
id={{count}}
В идеале я получу:
config@A-1
config@B-2
config@C-3
Но я застрял в том, как мне добавить туда переменную "count". Я смотрел на with_indexed_items
, но я не уверен, что это правильный путь. Я также рассмотрел использование списка таких списков:
with_items:
- ["A", "1"]
- ["B", "2"]
- ["C", "3"]
Но это не похоже на самый "Ansible" способ сделать это.
Я решил это с помощью with_sequence
цикл и абстрагирование значения A, B, C в файл vars:
- name: Configure each Instance
template: src=config dest=/usr/service/etc/config@{{value}}-{{item}}
with_sequence: count={{num_instances}}
Тогда мой шаблон выглядит так:
# templates/config
id={{item}}