Я пытаюсь создать пьесу со скользящим обновлением (вариант последовательного выполнения) с элементом serial
. Поскольку я должен использовать последовательное значение в нескольких местах в книге воспроизведения, я хотел использовать его в качестве переменной, которую можно использовать для определения где-то как групповой переменной.
Инвентарный файл
[all]
webserver1 ansible_host=10.1.1.1 ansible_user=root
webserver2 ansible_host=10.1.1.2 ansible_user=root
webserver3 ansible_host=10.1.1.3 ansible_user=root
dbserver1 ansible_host=10.1.2.1 ansible_user=root
[webserver]
webserver1
webserver2
webserver3
[dbserver]
dbserver1
[app-stack:children]
webservers
dbservers
[app-stack:vars]
app_stack_serial_value=1
Playbook
- hosts: app-stack
serial: "{{ app_stack_serial_value }}"
tasks:
- name: debug
debug:
msg: "Ansible Host - {{ ansible_host }}"
Error
ОШИБКА! Поле 'serial' имеет недопустимое значение, которое включает неопределенную переменную. Ошибка была: «app_stack_serial_value» не определено
Это будет работать, если я укажу значение в последовательном поле, например serial: 1
. Но я хотел использовать это значение в качестве переменной. Любая идея ??
Ansible Версия: ansible 2.7.10
версия Python = 3.7.2 (по умолчанию, 13 января 2019 г., 12:50:01) [Clang 10.0.0 (clang-1000.11.45.5)]