Состояние соли с проверкой существования файла на мастере соли

Я пытаюсь создать следующее состояние, но не знаю, как написать предложение if? Может быть, кто-то может помочь мне с этим. Что я пытаюсь сделать, так это то, что соль принимает файл конфигурации, если файл с целевым именем хоста существует, а в противном случае принимает конфигурацию по умолчанию.

пример:

{% if ??? test -f ??? salt://ntpd/ntp.conf_{{ salt['grains.get']('host') }} %}
ntpd-config:
  file.managed:
    - name: /etc/ntp.conf
    - source: salt://ntpd/ntp.conf_{{ salt['grains.get']('host') }}
    - user: root
    - group: root
    - file_mode: 644
    - require:
      - ntpd-pkgs
{% else %}
ntpd-config:
  file.managed:
    - name: /etc/ntp.conf
    - source: salt://ntpd/ntp.conf
    - user: root
    - group: root
    - file_mode: 644
    - require:
      - ntpd-pkgs
{% endif %}

Надеюсь, кто-то может мне помочь.

Заранее спасибо!

Матиас


person matze502    schedule 16.04.2018    source источник


Ответы (1)


Я только что нашел ответ сам.

Обнаружил в документации, что могу определить несколько источников. Последний из них используется по умолчанию, если ни один из других bevore не существует.

Теперь это работает:

ntpd-config:
  file.managed:
    - name: /etc/ntp.conf
    - source:
        - salt://ntpd/ntp.conf_{{ salt['grains.get']('host') }}
        - salt://ntpd/ntp.conf
person matze502    schedule 18.04.2018