我在下面有 puppet 脚本来创建一个用户和一个授权的 SSH 密钥,该密钥有 50% 的时间会失败。似乎 /home/$username 是在后台创建的,并且在尝试创建 .ssh 和授权密钥时并不总是在那里。Puppet 失败,因为 /home/$username 不存在。但是当我稍后再看时,它实际上已经被创建了。
在主目录实际完全创建之前,如何让 puppet 不继续?
user { $username:
name => $username,
managehome => true,
shell => "/bin/bash",
groups => [ 'dip', 'admin' ];
}
file { "/home/${username}/.ssh":
ensure => 'directory';
}
file { "/home/${username}/.ssh/authorized_keys":
owner => "${username}",
group => "${username}",
mode => '0664',
content => "${ssh_public_key}"
}
木偶 3.3.1 和 Ubuntu 12.04.3 LTS。