你如何改变厨师的资源

时间:2017-01-16 02:56:55

标签: chef chef-recipe apt

我想更新我的sources.list以使用更靠近我的服务器,以便apt_update更快。

通常情况下,我将ssh插入我的服务器并修改/etc/apt/sources.list,但由于我正在使用厨师,我想将其放入配方中。

在我的食谱/ default.rb中:

#I am trying to modify the sources.list file in apt before I run apt-get update
cookbook_file '/etc/apt/sources.list' do
  source 'sources.list'  
end

apt_update 'all platforms' do
  action :update
end

看来厨师没有使用我指定的来源。

1 个答案:

答案 0 :(得分:1)

使用notification(或订阅,您的选择):

cookbook_file '/etc/apt/sources.list' do
  source 'sources.list'  
  notifies :update, "apt_update[all platforms]"
end

apt_update 'all platforms' do
  action :nothing
end

结果,在sources.list文件更改时,将发出通知apt_update[all_platforms]。如果您想立即运行apt_update,请在通知中添加适当的关键字(阅读文档)。

旁注:我不确定为什么要修改sources.list,如果要添加其他存储库,请使用apt食谱中的apt_repository资源。