Кукольный только если указанные узлы

Я пытаюсь написать шаблон марионетки. У меня есть кукловод и несколько кукловодов, и все они должны быть разделены. Я думаю, что это хорошо делать по имени узла. Но когда я попытался сделать это, я столкнулся с ошибкой

"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,
             }
}

Синтаксис кода может быть не идеальным, так как это было просто не в моей голове, не проверяя синтаксис и не проверяя его каким-либо образом. Но ты получил идею.

Ожидается, что будет выполнена команда оболочки, а не условие, подобное тому, которое у вас есть, а должно быть именно так.

Другие вопросы по тегам