SLS 文件专用变量 (sls-only)
这些变量主要用于在 .sls 状态文件中获取当前文件或引用路径的信息。
| 变量名 | 主要用途和含义 |
|---|---|
| {{ sls }} | SLS 引用值。即你在 top.sls 或 include 语句中用来引用它的名字 |
| {{ slspath }} | 当前 SLS 文件所在目录的路径。对于通过 include 等引入的文件,其值取决于引用方式 |
| {{ sls_path }} | 非常关键。在 Salt 3005 及以上版本中,它被推荐为替代 slspath 的更可靠选择,能更准确地返回"正在渲染的文件所在的目录 |
| {{ slsdotpath }} | 将 sls_path 或 slspath 中的路径分隔符 / 替换为点 . |
| {{ slscolonpath }} | 将 sls_path 或 slspath 中的路径分隔符 / 替换为冒号 : |
模板文件专用变量 (Template-specific)
这些变量在渲染 .sls 文件和引用的文件(如 file.managed 的 source 参数)时都可用
| 变量名 | 主要用途和含义 |
|---|---|
| {{ tpldir }} | 当前正在处理的模板文件所在的目录。通常与 slspath 相同,但在根目录下有细微差别 |
| {{ tplfile }} | 当前正在处理的模板文件相对于 file_roots 的完整路径 |
| {{ tplpath }} | tplfile 的别名,提供相同的信息,主要用于向后兼容 |
| {{ tpldot }} | 将 tpldir 中的路径分隔符 / 替换为点 . |
环境专用变量
| 变量名 | 主要用途和含义 |
|---|---|
| {{ saltenv }} | 当前 SLS 文件所属的 Salt 环境(如 base, dev, prod 等),仅在 SLS 文件中可用 |
