将自定义厨师推送作业添加到Windows白名单

我正在尝试将推送作业添加到pushy-client的Windows白名单中。 当我使用刀进行search时,它会在Windows节点的白名单中显示自定义作业。 当我尝试运行它时,作业立即失败,在Windows端,它说该命令不在白名单中。

我在GitHub中发现这个问题: Windows推送服务无法加载白名单

我想知道是否有人有解决方法,如何解决这个问题的build议,或者知道我的代码在哪里,我可以猴子补丁。

Solutions Collecting From Web of "将自定义厨师推送作业添加到Windows白名单"

只要确认我在完全测试你的场景后得到同样的问题,我在属性/ default.rb文件中添加了一个测试命令到push-jobs cookbook本身的白名单:

default['push_jobs']['whitelist'] = { 'chef-client' => 'chef-client', 'new-command' => 'chef-client' } 

并验证白名单包含这些命令,当它被写入节点上的C:\ chef \ push-jobs.client.rb我尝试运行命令后,用push-jobs cookbook引导它:

但是,当我尝试执行该命令时:

 knife job start --timeout 600 'new-command' server.fqdn 

我也立即失败:

 Started. Job ID: db3a99728dbded7abd35ed40d4ec3d5f Quorum_failed. command: new-command created_at: Thu, 19 Nov 2015 23:31:57 GMT id: db3a99728dbded7abd35ed40d4ec3d5f nodes: nacked: server.fqdn run_timeout: 600 status: quorum_failed updated_at: Thu, 19 Nov 2015 23:31:57 GMT 

我什至重新启动了Pushy客户端服务的 Windows服务,以验证它没有重新加载服务重新启动配置。

我已经能够让Windows服务器运行我希望它运行的作业的唯一方法是在每次运行标准chef-client “command”之前修改运行列表:

 knife node run_list set server.fqdn 'recipe[cookbook::recipe1]' knife job start --timeout 600 'chef-client' node.fqdn knife node run_list set server.fqdn 'recipe[cookbook::recipe2]' knife job start --timeout 600 'chef-client' node.fqdn 

该错误似乎是在Pushy客户端服务窗口服务本身,似乎没有任何移动你提交的错误。