SaltStack状态定义后的空括号的目的是什么?
例如,在 SaltStack 文档中的某个地方,您将看到以下内容:
vim:
pkg.installed: []
然而,例如,强制vim
安装也可以这样表示:
vim:
pkg.installed
事实上,在SaltStack文档中的其他地方,这是流行的格式。那么空括号意味着什么?明确声明该语句没有其他参数?
对你的问题的简短回答是:是的。他们只是明确指出没有其他参数要pkg.installed
.
长答案:Salt .sls 格式基本上是一个 YAML,上面有 Jinja 模板。这意味着配置中的每个项目要么是一个序列,要么是一个集合。在您的示例中,pkg.installed
有许多可选参数,这些参数可以作为集合序列提供(可以将其视为其他编程语言中的字典数组(。例如,您可以像这样修复vim
版本:
vim:
pkg.installed:
- version: 1.0
YAML 允许使用两种语法来写下序列和集合。上面描述的也可以写成:
vim:
pkg.installed: [{version: 1.0}]
在您的示例中,pkg.installed
没有提供任何其他参数,并且用空方括号显式显示。