Назад | Перейти на главную страницу

Файл солевого стека. Recurse Recurse Failed

Я создал файл состояния в соли, чтобы скопировать список сценариев check_mk Nagios на удаленный сервер. Ниже приведен фрагмент файла состояния.

check_mk_defined_checks:
  file.recurse:
    - name: /usr/lib/check_mk_agent/local
    - source: salt://{{ slspath }}/files/cmk_checks
    - user: nagios
    - group: users
    - file_mode: 754
    - dir_mode: 755
    - require:
      - check_mk_agent_installed

Самое смешное, когда я запускаю состояние sls напрямую, все работает. Увидеть ниже.

    salt-call state.sls dev.roles.srvr.system_conf.check_mk    
----------
                  ID: check_mk_defined_checks
            Function: file.recurse
                Name: /usr/lib/check_mk_agent/local
              Result: True
             Comment: The directory /usr/lib/check_mk_agent/local is in the correct state
             Started: 20:54:29.105625
            Duration: 1475.026 ms
             Changes:

Однако, когда я запускаю его отдельно от highstate, я получаю следующую ошибку.

----------
          ID: check_mk_defined_checks
    Function: file.recurse
        Name: /usr/lib/check_mk_agent/local
      Result: False
     Comment: Recurse failed: none of the specified sources were found
     Started: 20:45:19.369238
    Duration: 917.113 ms
     Changes:

Я потратил много времени, работая над этим. Я не могу использовать рекурсивную функцию ни в каком состоянии, иначе я получу те же результаты. Это работает, когда вы вызываете состояние напрямую, но не отдельно от высокого состояния.

Любая помощь, которую может предоставить кто угодно, была бы замечательной.

Спасибо,

Источник files/cmk_checks должен присутствовать во всех средах, и пути на главном сервере будут зависеть от среды.

Скорее всего ваш salt-call run выполняет состояние в среде, отличной от вашей highstate. Ты должен бежать salt-call state.sls с участием saltenv=… аргумент.