我如何用 Puppet 执行手指?

我如何用 Puppet 执行手指?

我的木偶文件如下所示:

# Test finger harry harry.pp
exec {'harryd':                                                                                                                   
   command => "/usr/bin/finger $title",                                                                                            
   logoutput => true                                                                                                               
 }

当我运行时puppet apply harry.pp我得到这个输出:

notice: /Stage[main]//Exec[harryd]/returns: finger: main: no such user.
notice: /Stage[main]//Exec[harryd]/returns: executed successfully
notice: Finished catalog run in 0.14 seconds

运行后finger harryd我得到了预期的输出。看起来 puppet 正在运行finger main,但我不明白为什么。

答案1

$title只是专门设置为定义类型范围内的资源的标题,但事实exec并非如此。

所以如果你有..

define finger {
  exec { 'finger-$title':                                                                                                             
    command   => "/usr/bin/finger $title",                                                                                            
    logoutput => true                                                                                                               
  }
}

finger { "harryd": }

..那么它将按预期工作,因为在定义类型的范围内,$title被设置为定义类型的标题。

你能解释一下你想要达到什么目的吗?

相关内容