Exec的除非命令阻止我的目录编译

时间:2013-03-25 22:04:07

标签: exec puppet

我正面临着Puppet 2.6.7的一些奇怪问题。我有一个使用shell脚本作为命令的exec。另外,我想使用相同的脚本来执行exec的'unless'属性,只是传递一个标志来测试一些东西:

exec { "myexec":
  path        => '/bin:/usr/bin',
  command     => "/opt/myapp/script.sh -o ${name}",
  unless      => "/opt/myapp/script.sh -o ${name} -t",
}

我正在和傀儡一起使用木偶。如果我离开上面显示的代码,我收到一个错误:“无法评估:找不到命令'/opt/myapp/script.sh'”并且进程在编译时抛出错误。但是,如果我删除除非所有内容编译正确。奇怪的是,两个命令都是相同的,但只是除非抱怨没有找到它。

有没有人知道如何修复此问题或任何解决方法?这是Puppet 2.6.14中的错误吗?

感谢您的帮助!

赫。

1 个答案:

答案 0 :(得分:0)

unlesscommand之前运行,这就是为什么你没有收到command的错误。问题出在path,这是正确的声明:

path => [ '/bin/', '/usr/bin/' ]