我在食谱中有这个方法
script "bashbashed" do
interpreter "bash"
user "root"
code <<-EOH
cd /my/path
ant clean
ant build
ant deploy
EOH
end
返回
localhost STDERR: /tmp/chef-script20131004-5434-823zxp: line 1: cd: tarball: No such file or directory
localhost /tmp/chef-script20131004-5434-823zxp: line 4: ant: command not found
localhost /tmp/chef-script20131004-5434-823zxp: line 5: ant: command not found
localhost /tmp/chef-script20131004-5434-823zxp: line 6: ant: command not found
登录访客并执行ant -version。 蚂蚁安装在客人。我还在这里错过什么吗?
答案 0 :(得分:0)
错误消息表明存在两个问题:
/my/path
不存在。$PATH
中的java ant安装路径。更新版本:
script "bashbashed" do
interpreter "bash"
user "root"
cwd "/my/path" # make sure this path exists
path "#{ENV['PATH']}:/opt/ant/bin" # customize to the location of your ant command
code <<-EOH
ant clean build deploy
EOH
end
答案 1 :(得分:0)
您的问题是“/etc/profile.d/*”下提供的环境文件不是root用户提供的,这可以解释为什么您的bash脚本(以root身份运行)在其路径中没有配置ant
也许一个简单的解决方案是将构建作为普通用户帐户运行吗?