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

Как настроить Puppet так, чтобы он не управлял файлами, не входящими в исходный код?

Я хочу перезаписать некоторые файлы в каталоге:

file {
  ensure  => directory,
  source  => 'puppet:///modules/my_module/my_directory',
  mode    => '0600',
  recurse => true,
}

Однако это меняет режим каждый файл в каталоге. Поскольку большая часть файлов (тысячи, меняющиеся каждый день) должны обрабатываться другим приложением, как я могу сказать Puppet, что оставить все файлы не в source в одиночестве? Я не могу использовать ignore потому что для этого мне необходимо заранее знать имена (или хотя бы глобусы) файлов, которыми я не хочу управлять.

Вы можете искать recurse => remote [ref], который указывает марионетке управлять только файлами в месте назначения, которые поступают из источника.

Попробуйте source_permissions параметр. Конечно, это предполагает, что вы можете установить соответствующие разрешения в исходном репозитории.