Puppet exec中的Hammer命令失败(foreman 1.20.1)

时间:2019-02-06 07:39:48

标签: puppet foreman hammer

我正在尝试在Centos 7.6上的Foreman 1.20.1中使用Hammer刷新Puppet执行程序中的代理功能(或除--version以外的任何其他命令)。我正在使用的命令在shell上工作正常。在Puppet exec中失败:

  

错误:未定义的局部变量或方法'dotfile'    注意:/ Stage [main] / Profiles :: Test / Exec [test] / returns:您的意思是?   @@ dotfile注意:/ Stage [main] / Profiles :: Test / Exec [test] /返回:   错误:没有这样的子命令'proxy'。

我使用的代码是:

class profiles::test{
  exec {'test':
    command => '/usr/bin/hammer proxy refresh-features --name $(hostname)',
  }
}
include profiles::test

我不关心幂等性,因为它仅具有刷新功能,我只想使命令起作用。

我尝试添加其他选项,例如路径,用户,环境等,但无济于事。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

从我在https://github.com/awesome-print/awesome_print/issues/316https://grokbase.com/t/gg/puppet-users/141mrjg2bw/problems-with-onlyif-in-exec中找到的线索中

可以看出,必须设置HOME环境。因此,工作代码为:

PendingIntent.getService

红宝石!