您能否分享一份示例厨师食谱来执行.sh文件?该文件被压缩在一个文件夹中,所以我需要在执行之前先提取它(再次使用配方)。我在尝试静默安装.sh文件时遇到问题。 " -q"没有得到食谱的认可。我试图执行的命令是" sh .sh -q -varfile response.file" 我能够在linux上成功安装它,但不能使用配方。请帮忙
答案 0 :(得分:1)
我假设您正在使用类似remote_file
和两个execute
资源的链接(假设压缩文件包含文件位于其根目录并且格式为gzipped tar,相应地更新命令):< / p>
execute "silent_install" do
command "/path/to/package/script.sh -q -varfile /path/to/package/response.file"
action :nothing
end
execute "unzip_package" do
command "/bin/tar -xzf /path/to/package.tgz -C /path/to/package"
action :nothing
notifies :run,'execute[silent_install]', :immediately
end
remote_file "/path/to/package.tgz" do
source "http://host/package-source.tgz"
notifies :run,'execute[unzip_package]', :immediately
end
然而这是ark
资源更适合做的一种行为,而且非常容易出错和易碎。
使用相同类型的假设的示例(保持静默安装程序的执行,应该更好地包含在Makefile中,但这超出了我认为这个答案的范围):
execute "silent_install" do
command "/path/to/package/script.sh -q -varfile /path/to/package/response.file"
action :nothing
end
ark 'mypackage' do
url 'http://remote.host/package.tar.gz'
path "/path/to"
action :put
notifies :run,'execute[silent_install]', :immediately
end