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

SaltStack: Как обойти «file.recurse не сохраняет разрешения»?

Как обойти Рекурсивное управление каталогами не сохраняет разрешения?

Я хочу скопировать все файлы в (локальный) /monitoring/files/etc к /etc на миньоне.

copy_files_in_etc:
  file.recurse:
    - source:
      - salt://monitoring/files/etc
    - name: /etc
    - template: jinja

Вышеупомянутые фрагменты работают, но мне не хватает исполняемого бита для некоторых файлов.

Например, скрипты в /etc/cron.daily должны быть исполняемыми.

Какой самый простой способ обойти это?

Я ищу способ сделать все файлы, соответствующие этому выражению, исполняемыми:

/etc/cron.(daily|hourly|monthly|weekly/)

Похоже, это было исправлено.

copy_files_in_etc:
  file.recurse:
    - source:
    - salt://monitoring/files/etc
    - name: /etc
    - template: jinja
    - file_mode: keep

Ищи file_mode по следующей ссылке: https://docs.saltstack.com/en/latest/ref/states/all/salt.states.file.html#salt.states.file.recurse

Это приведет к тому, что файлы будут иметь тот же режим, что и на мастере соли.

Ты можешь использовать file_mode и dir_mode. В твоем случае, file_mode должно хватить.

copy_files_in_etc:
  file.recurse:
    - source:
      - salt://monitoring/files/etc
    - name: /etc
    - template: jinja
    - file_mode: '0755'