Puppet:定义自定义资源类型包装exec资源并使用可选的;除非;
下面的代码示例纯粹是学术性的,但它很好地说明了我的问题Puppet:定义自定义资源类型包装exec资源并使用可选的;除非;,puppet,Puppet,下面的代码示例纯粹是学术性的,但它很好地说明了我的问题 define touch($file=$title, $unless='/bin/false') { exec { "/bin/touch ${file}": unless => $unless } } 如果我定义了自己的资源类型来包装另一个exec资源,并且我想添加一个可选的“除非”条件,那么我-如果设置-传递到exec的可选“除非”条件-我是否必须用“/bin/false”预设字段 我的理解是,如果未设置“touch”的
define touch($file=$title, $unless='/bin/false') {
exec { "/bin/touch ${file}": unless => $unless }
}
如果我定义了自己的资源类型来包装另一个exec资源,并且我想添加一个可选的“除非”条件,那么我-如果设置-传递到exec的可选“除非”条件-我是否必须用“/bin/false”预设字段
我的理解是,如果未设置“touch”的“除非”字段,则对于每个目录运行和此自定义资源类型的所有使用,此资源的除非检查将生成一个运行“/bin/false”的bash进程
我实际上不打算做任何“除非”检查字段是否未设置-包括调用“/bin/false”
有什么想法吗?谢谢 使用undef而不是'/bin/false',除非仅当设置为:
define touch($file=$title, $unless=undef) {
exec { "/bin/touch ${file}": unless => $unless }
}
使用undef而不是“/bin/false”,除非仅当设置为以下值时才会运行:
define touch($file=$title, $unless=undef) {
exec { "/bin/touch ${file}": unless => $unless }
}