saltstack:仅当目录不存在时才创建目录

saltstack: creating directory only if does not exists

目前我有以下创建目录的规则

/init/dir:
  file.recurse:
    - source:  salt://init_dir/init
    - user:  name
    - group:  group
    - name:  /path/init
    - dir_mode: 2775
    - file_mode: 777

现在我只想在目录不存在的情况下在新的 minions 上创建一个目录。

事实证明这很简单,并且在 salt-stack 文档中有详细记录 以下是我想出的。

{% if not salt['file.directory_exists' ]('/home/init_dir') %}
/home/init_dir:
  file.directory:
    - user:  user
    - name:  /home/init_dir
    - group:  group
    - mode:  755
{% else %}
  cmd.run:
    - name: echo "Directory exists"
{% endif %}

虽然您的示例确实有效,但没有必要。 file.directory 只会在目录不存在时尝试创建目录。