有没有人知道为厨师客户运行更改宝石来源的方法?
我关注的节点位于防火墙后面,因此我想用内部 Nexus 存储库 ( https://github.com/sonatype/nexus-ruby-support )替换 rubygems.org 。我尝试更新“chef Embedded gem”的源列表,但有问题的 chef_gem 调用似乎使用了另一个源列表,该列表仍然引用 rubygems.org。
有没有人知道为厨师客户运行更改宝石来源的方法?
我关注的节点位于防火墙后面,因此我想用内部 Nexus 存储库 ( https://github.com/sonatype/nexus-ruby-support )替换 rubygems.org 。我尝试更新“chef Embedded gem”的源列表,但有问题的 chef_gem 调用似乎使用了另一个源列表,该列表仍然引用 rubygems.org。
您可以覆盖 /root/.gemrc 中的源 URL
格式如下:
:sources:
- http://your.mirror.com/
该文档非常简陋,但是如果您查找“gem source”命令,您最终可以找到它。请记住,Chef 嵌入了自己的 gem 解释器,因此 chef 使用的 gem 命令不在系统路径中。
/opt/chef/embedded/bin/gem 来源 -r ...
/opt/chef/embedded/bin/gem 来源 -a “ http://mygems.example.com/ ”
我最初的想法是正确的;只需将 gem 源更改为 root,而不是“sudo 用户”,chef-client 就会选择它们。