`

saltstack sls - sls格式和YAML

阅读更多
【基本介绍】
这里介绍saltstack的sls配置格式和YAML语法规范

【YAML】
1. YAML使用spaces(空格),
因此不能再你的sls文件里面使用Tab,如果你遇到“rendering sls files errors”等错误,请检查你的sls文件,确保没有Tab等非法符合。

2. 缩进
YAML文件的语法建议使用两个空格进行缩进。
YAML实际上是将定义的数据进行序列化成为一个字典。Key下面的缩进内容会被序列化成对应的value.

3. 嵌套
基本遵循2个空格的缩进,只有定义context,defaults选项的时候才使用四个空格作为缩进。用大括号的除外。
/etc/http/conf/http.conf:
  file:
    - managed
    - source: salt://apache/http.conf
    - user: root
    - group: root
    - mode: 644
    - template: jinja
    - context:
        custom_var: "override"
    - defaults:
        custom_var: "default value"
        other_var: 123


4. YAML不喜欢两个连续的缩进形式
下面两个state是不能写入到同一个state的sls文件中,因为他们两个的ID冲突了。
httpd:
  pkg.installed

httpd:
  user.present

我们只能这些。但是这样的话要敲很多空格
httpd:
  pkg:
    - installed
  user:
    - present

那我们是否可以这样呢? 不行,这样就违背了不能用两个连续的缩进形式。
httpd:
  pkg.installed
  user.present

解决方案可以这样,或者上面分行敲多个空格方式。
httpd:
  pkg.installed: []
  user.present: []
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics