Назад | Перейти на главную страницу

Приоритет Ansible переменных

Я пытаюсь понять приоритет переменных в Ansible - точнее, о host_vars и group_vars в инвентаре или playbook. Мой макет выглядит так:

production/
├── inventory (alfa, beta and gamma hosts)
├── group_vars/
│   └── all (foo=1)
└── host_vars/
    └── alfa (foo=2)
playbooks/
├── site.yml (debuging variable foo)
├── group_vars/
│   └── all (foo=10)
└── host_vars/
    └── beta (foo=20)

Итак, у меня есть три узла (alfa, beta и gamma) и переменная foo. Когда я начинаю игру, я получаю такой результат:

alfa's foo=2
beta's foo=20
gamma's foo=10

В соответствии с документация приоритет должен быть следующим:

  1. инвентарь group_vars
  2. инвентарь host_vars
  3. playbook group_vars
  4. playbook host_vars

Но мой результат выглядит следующим образом:

  1. инвентарь group_vars
  2. playbook group_vars
  3. инвентарь host_vars
  4. playbook host_vars

Я что-то неправильно понял? Или это ошибка в документации? Я использую Ansible 2.0.1.