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