要求一种状态或另一种状态加盐
Require one state or another state with salt
几个小时以来,我一直在寻找技术人员来编写需要 requirement1 或 requirement2.[=11= 的盐状态]
这就是我想用 cmd.run 做的,例如:
Run myscript:
cmd.run:
- name: /path/to/myscript
- require:
- pkgs: pkg1|pkg2
- cwd: /
这意味着脚本 my_script 将在安装软件包 pkg1 或安装 pkg2 的状态下执行很满意。
这真的可以用盐来做吗?如果有怎么办?
我知道我可以直接在我的脚本中进行所有检查,但我想知道 salt requisites 是否可以巧妙地做到这一点。
谢谢。
Salt 状态不支持分支 if
/else
/while
/ 等。状态文件重新生成描述静态依赖树的数据。渲染完成后,按顺序执行。
进行某种分支的唯一方法是使用 unless
/onlyif
关键字。但它们只适用于特定的状态类型,并且 不接受 状态 ID(据我所知,它们只接受可执行的 shell 命令)。参见:http://docs.saltstack.com/en/latest/ref/states/requisites.html#unless
几个小时以来,我一直在寻找技术人员来编写需要 requirement1 或 requirement2.[=11= 的盐状态]
这就是我想用 cmd.run 做的,例如:
Run myscript:
cmd.run:
- name: /path/to/myscript
- require:
- pkgs: pkg1|pkg2
- cwd: /
这意味着脚本 my_script 将在安装软件包 pkg1 或安装 pkg2 的状态下执行很满意。
这真的可以用盐来做吗?如果有怎么办?
我知道我可以直接在我的脚本中进行所有检查,但我想知道 salt requisites 是否可以巧妙地做到这一点。
谢谢。
Salt 状态不支持分支 if
/else
/while
/ 等。状态文件重新生成描述静态依赖树的数据。渲染完成后,按顺序执行。
进行某种分支的唯一方法是使用 unless
/onlyif
关键字。但它们只适用于特定的状态类型,并且 不接受 状态 ID(据我所知,它们只接受可执行的 shell 命令)。参见:http://docs.saltstack.com/en/latest/ref/states/requisites.html#unless