Viji
@Viji
DevOps Engineer

Можно ли переопределять переменную во время запуска playbook?

Привет всем,

если в подкаталоге vars, от каталога где хранятся playbooks в файле main.yml я задаю перемменую phpversion: "7.0"

могу ли я переопределить ее во время запуска playbook? Например ansible-playbook -e "phpversion=7.1" или все равно будет использоваться версия заданная в main.yml?
  • Вопрос задан
  • 799 просмотров
Решения вопроса 2
orlov0562
@orlov0562
I'm cool!
Вот порядок приоритета от наименьшего к наибольшему (последние перечисленные переменные выигрывают по приоритетам):
  1. command line values (eg “-u user”)
  2. role defaults [1]
  3. inventory file or script group vars [2]
  4. inventory group_vars/all [3]
  5. playbook group_vars/all [3]
  6. inventory group_vars/* [3]
  7. playbook group_vars/* [3]
  8. inventory file or script host vars [2]
  9. inventory host_vars/* [3]
  10. playbook host_vars/* [3]
  11. host facts / cached set_facts [4]
  12. play vars
  13. play vars_prompt
  14. play vars_files
  15. role vars (defined in role/vars/main.yml)
  16. block vars (only for tasks in block)
  17. task vars (only for the task)
  18. include_vars
  19. set_facts / registered vars
  20. role (and include_role) params
  21. include params
  22. extra vars (always win precedence)

Variable precedence: Where should I put a variable?
Ответ написан
Комментировать
Viji
@Viji Автор вопроса
DevOps Engineer
да, можно... еще можно как ansible-playbook --extra-vars "phpversion=7.1"

То что, переданно в command line будет иметь приоретет
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы