Я использую puppet 3.8.4 в debian. Я хочу рекурсивно установить владельца и группу в заданном каталоге, но установить разрешения только для самого каталога, т.е. Я не хочу изменять что-либо в каталоге chmod, только chown / chgrp it.
Я пробовал следующее ...
file {[
"/foo/bar" ,
] :
ensure => directory,
owner => root,
group => bar,
recurse => true,
require => [
User[root],
Group[bar],
],
}
file {[
"/foo/bar" ,
] :
ensure => directory,
mode => 0640, # +x automatically added to directories
recurse => false,
}
Но, конечно, puppet затем жалуется на повторяющееся объявление: File [/ foo / bar] if вы делаете это.
Есть ли способ в puppet сделать это без необходимости явно делать каталог верхнего уровня, а затем все файлы и папки в нем?
Просто для ответа: вы не можете.
Параметр namevar - это путь, поэтому у вас не может быть двух файловых ресурсов с одинаковым путем.
Проверьте документацию о файловом ресурсе: https://docs.puppetlabs.com/references/latest/type.html#file