При создании новой роли Ansible шаблон создает каталог a vars
и defaults
каталог с пустым main.yml
файлом. При определении моей роли я могу поместить определения переменных в любое из них, и они будут доступны в моих задачах.
Какая разница между введением определений в defaults
и vars
? Во что следует вникнуть defaults
, а во что vars
? Имеет ли смысл использовать оба для одних и тех же данных?
Я знаю, что есть различие в приоритете / приоритете между ними, но я хотел бы понять, что и куда должно идти.
Допустим, моя роль создаст список каталогов в целевой системе. Я хотел бы предоставить список каталогов по умолчанию для создания, но хотел бы позволить пользователю переопределить их при использовании роли.
Вот как это будет выглядеть:
---
- directories:
- foo
- bar
- baz
Я мог бы поместить это или в defaults/main.yml
или в vars/main.yml
, с точки зрения выполнения, это не будет иметь никакого значения - но куда это должно пойти?
defaults
а чтоvars
дальше.