厨师gem_package没有使用正确的二进制文件

时间:2014-02-03 19:02:42

标签: ruby chef chef-recipe

我正在尝试在Windows服务器2008r2上从配方安装宝石“sensu_plugin”和“mixlib-shellout”。在最后一个中,我有以下代码:

%w{ sensu-plugin mixlib-shellout }.each do |gem_plugin|
  gem_package gem_plugin do
    gem_binary("C:/opt/sensu/embedded/bin/gem")
    options("--no-rdoc --no-ri")
    action :install
  end
end

然而,当我在我的机器上运行配方时,我收到错误“ERROR:执行gem时...(Errno :: ENOENT)没有这样的文件或目录 - U:/”。我发现每当我尝试使用位于chef-client目录(C:\ opscode \ chef \ embedded \ bin \ gem)中的gem二进制文件安装gem包时,它就会引发最后一个错误。

问题是我希望用来安装gem包的gem实际上位于C:/ opt / sensu / embedded / bin / gem中,我已经在gem_binary选项中声明了。

最后,看起来厨师忽略了gem_binary选项,并尝试从自己的gem二进制文件中安装它。

我看不出这个配置有什么问题。 gem_binary真的指出了要使用的二进制文件吗?

0 个答案:

没有答案