Я привязываюсь к марионетке для моего окружения - и я хотел бы иметь условный file
ресурс в зависимости от того, содержит ли сам модуль файл на основе соглашения об именах.
Итак, визуально предположим, что модуль с именем mysql и его макет:
mysql/
/files
/etc/
my.cnf
my.hostname1.cnf
my.hostname2.cnf
/manifests
init.pp
...
Поэтому я хотел бы, чтобы блок проверял, существует ли ресурс для модуля или нет, и предпринимал соответствующие действия в псевдотерминах:
file { '/etc/my.cnf':
if -f 'puppet:///mysql/etc/my.$hostname.cnf' {
source => 'puppet:///mysql/etc/my.$hostname.cnf'
}
else {
source => 'puppet:///mysql/etc/my.cnf'
}
}
Таким образом, не нужно было бы управлять файлом csv или .pp
файл с конкретным оператором case - возможно ли это?
Электрический ток документация по типу файла ресурсов указывает, что вы можете сделать file{'/etc/my.cnf': source => [ "puppet:///mysql/etc/my.$hostname.cnf" , "puppet:///mysql/etc/my.cnf" ]
}