【发布时间】:2015-02-19 02:21:00
【问题描述】:
我编写了一个简短的 bash 脚本并将其存储在 files/default/bash.sh。
如何链接它以使其在我的主要默认配方中运行?它需要以 sudo 运行,因为我在 ubuntu 系统上。
【问题讨论】:
-
我不完全确定为什么这个问题被否决了。我有同样的问题,发现这很有用。
标签: bash file chef-infra
我编写了一个简短的 bash 脚本并将其存储在 files/default/bash.sh。
如何链接它以使其在我的主要默认配方中运行?它需要以 sudo 运行,因为我在 ubuntu 系统上。
【问题讨论】:
标签: bash file chef-infra
找了好久终于找到了答案:
cookbook_file "/tmp/lib-installer.sh" do
source "lib-installer.sh"
mode 0755
end
execute "install my lib" do
command "sh /tmp/lib-installer.sh"
end
感谢link!
【讨论】:
lib-installer.sh获取输出或echo到厨师日志?
如果脚本不太长,您也可以通过bash resource 将脚本直接包含在您的食谱中。默认情况下,由 Chef 运行的任何程序都使用与运行 Chef 相同的用户,通常已经是 root。您可以将user 参数用于execute 和bash 之类的东西来切换到不同的用户,或者只是明确声明它应该是root 以使事情自我记录一点点。
【讨论】: