我已经找到了一些可以检查变量是否具有特定值的示例
if $var == 'somevalue' {
...
}
Run Code Online (Sandbox Code Playgroud)
如果定义了某些东西
if defined(Package['somepackage']) {
...
}
Run Code Online (Sandbox Code Playgroud)
但是如何检查用户是否存在,如果不存在则失败。知道如何使用脚本或 shell 测试的结果就足够了,因为这/usr/bin/id -u ${name} >/dev/null 2>&1
就是我所需要的,即使检查用户目录是否存在也可以。
file
并且exec
不接受onlyif
参数,否则这根本不是问题
为什么不添加一个事实事实并检查它呢?
使用我在 puppet 3 上的设置,我会将以下内容放入 modules/facts/lib/facter/user_exists_blah.rb
require 'facter'
Facter.add(:user_exists_blah) do
setcode do
name = "blah"
Facter::Util::Resolution.exec("/usr/bin/id -u #{name} 2>/dev/null")
end
end
Run Code Online (Sandbox Code Playgroud)
然后将其用作
if $::user_exists_blah {
}
Run Code Online (Sandbox Code Playgroud)
空字符串的计算结果为 false,因此您可以将其用作布尔值
归档时间: |
|
查看次数: |
7882 次 |
最近记录: |