Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Chef infra 将gem源更改为chef cookbook依赖项_Chef Infra_Chef Recipe - Fatal编程技术网

Chef infra 将gem源更改为chef cookbook依赖项

Chef infra 将gem源更改为chef cookbook依赖项,chef-infra,chef-recipe,Chef Infra,Chef Recipe,我的食谱 include_recipe'mysql::server' 和mysql::server调用 chef_gem'mysql' chef\u gem'mysql'使用like gem源代码 我需要使用我自己的gems本地服务器 如何更改所有chef运行的gem源代码 选项: 我首先尝试使用安装mysql gem chef_gem'mysql'do 选项”--来源http://my.own.local.server/" 版本“2.9.1” 结束 但是不要工作 有人有其他想法吗?有几件事

我的食谱

include_recipe'mysql::server'

mysql::server调用

chef_gem'mysql'
chef\u gem'mysql'使用like gem源代码

我需要使用我自己的gems本地服务器

如何更改所有chef运行的gem源代码

选项: 我首先尝试使用安装mysql gem

chef_gem'mysql'do
选项”--来源http://my.own.local.server/"
版本“2.9.1”
结束
但是不要工作


有人有其他想法吗?

有几件事你不可能想到:

  • 您应该使用resourcegem_package为系统范围安装gem,因为
    chef_gem
    用于安装专用chef使用的gem。请参阅以下引文:
使用chef_gem资源将gems安装到专用于chef客户端的Ruby实例中。使用gem_包资源安装所有其他gems(即安装gems系统范围)

  • http://rubygems.org/
例如:

gem_package "mysql" do
  options("--clear-sources --source http://my.own.local.server/")
  action :install
  version "2.9.1"
end

好的,@shawnzhu,谢谢。干得好但是,如果我的烹饪书依赖于其他拥有chef_gem'mysql'代码的人,而我没有访问权限,我该怎么办?您可以通过添加新的源代码而不是rubygems.org来更改ruby gem for chef的配置。运行
/opt/chef/embedded/bin/gem sources
来管理嵌入式gems的ruby gems源。例如:
gem sources-a http:/my.own.local.server/
我想是Michel问的@shawnzhu