Учитывая следующий манифест марионетки, как я могу объединить / объединить два массива, чтобы команда выполнялась с обоими a=b
и b=c
?
Cron{
environment => ["a=b"]
}
class a{
cron{'test':
command => "/usr/bin/true",
user => "francois",
environment => ["b=c"],
}
}
include a
Моя запись в crontab выглядит так:
# Puppet Name: test
b=c
* * * * * /usr/bin/true
Насколько я помню, вы не можете сделать это напрямую. Что-то вроде этого может сработать:
$default_env = ["a=b"]
Cron {
environment => $default_env
}
class a {
$additional_env = split(inline_template("<%= (default_env).join(',') %>"),',')
cron {"test":
command => "true",
user => "me",
environment => $additional_env
}
}
include a
(шаблон split / inline_template основан на чем-то из http://www.crobak.org/2011/02/two-puppet-tricks-combining-arrays-and-local-tests/ )