LINUX.ORG.RU
решено ФорумAdmin

Puppet: подставить параметр в имя факта

 ,


1

2

Вот custom fact:

require 'etc'

Etc.passwd do |user|
    Facter.add("homedir_#{user.name}".intern) do
        setcode { user.dir }
    end
end

Взят с ask.puppetlabs.com. Теперь делаем defined type:

define ssh_keys::key ($user) {

$home = $::homedir_#{user}
#$home = $::homedir_root

if $home != undef {

file { "$home/.ssh/":
    ensure => directory,
}

file { "$home/.ssh/authorized_keys":
    ensure => file,
    source => "puppet:///modules/ssh_keys/$user",
    }
}

В виде $::homedir_#{user} не работает. Если задать в явном виде $::homedir_root, то всё ОК. Где я не прав? Куда копать?

★★★

Последнее исправление: selivan (всего исправлений: 2)

Ответ на: комментарий от Shtsh

Спасибо!

Для тех, кому лениво ходить по ссылке:

$mule = "ipaddress_${name}"
$donkey = inline_template("<%= scope.lookupvar(mule) %>")[br]

selivan ★★★
() автор топика
Последнее исправление: selivan (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.