Кукольный только если указанные узлы
Я пытаюсь написать шаблон марионетки. У меня есть кукловод и несколько кукловодов, и все они должны быть разделены. Я думаю, что это хорошо делать по имени узла. Но когда я попытался сделать это, я столкнулся с ошибкой
"puppet-agent[169037]: (/Stage[main]//Exec[adduser]) Could not evaluate: Could not find command 'ru1'"
см код ниже
exec { 'adduser':
command => 'sudo adduser -m -p pawSfQewWrUAA test -G wheel',
path => [ '/bin','/usr/bin' ],
onlyif => "$hostname == ru1"
}
Мне нужно указать эту задачу только для одного узла с именем хоста ru1. Так я могу это сделать? Благодарю.
2 ответа
Разве это не было бы намного проще и разумнее?
case $hostname {
ru1: user {
ensure => 'present',
name => 'test',
gid => 'wheel',
password => 'pawSfQewWrUAA',
otherparametersgohere,
}
}
Синтаксис кода может быть не идеальным, так как это было просто не в моей голове, не проверяя синтаксис и не проверяя его каким-либо образом. Но ты получил идею.
Ожидается, что будет выполнена команда оболочки, а не условие, подобное тому, которое у вас есть, а должно быть именно так.