最佳答案
在创建新的 Anble 角色时,模板将创建一个 vars
和一个 defaults
目录,其中包含一个空的 main.yml
文件。在定义我的角色时,我可以将变量定义放在其中的任何一个中,它们将在我的任务中可用。
将定义放入 defaults
和 vars
有什么区别?什么应该进入 defaults
,什么应该进入 vars
?对同一数据同时使用这两种方法有意义吗?
我知道这两者之间的优先级/优先级有所不同,但我想知道应该把什么放在哪里。
假设我的角色将在目标系统上创建一个目录列表。我想提供要创建的默认目录的列表,但希望允许用户在使用角色时重写它们。
这看起来是这样的:
---
- directories:
- foo
- bar
- baz
我可以把它放在 defaults/main.yml
或者 vars/main.yml
中,从执行的角度来看,这没有什么不同——但是它应该放在哪里呢?