我正在使用带有windows_package资源的MSI删除Windows程序:
windows_package 'SomeShittyProgram' do
action :remove
source 'c:\temp\msi'
end
在我的食谱中有(小)MSI文件是否安全?我怎样才能让厨师将该文件提供给节点?
我使用remote_file将其从网络位置拉出来,但这使得在测试厨房中测试食谱变得困难。
答案 0 :(得分:1)
一般情况下,强烈建议不要这样做(将大型二进制文件存储在食谱中),但您可以这样做。将文件放在./files/whatever.msi
下,然后在配方代码中使用cookbook_file "#{Chef::Config[:file_cache_path]}/whatever.msi" do source "whatever.msi" end
,然后使用windows_package
资源进行安装。
不这样做的原因是Chef不是一个好的文件存储系统。使用诸如S3,Artifactory甚至HTTP服务器加remote_file
之类的东西可以提供更多灵活性。这往往会使你的git仓库迅速膨胀。