Expected process to exit with [0], but received ''
chef-infra, chef-recipe, shell
Solution
Try this:
the recipe:
execute "startHAPROXY" do
command "./start.sh"
cwd "/home/#{node["haproxyUser"]}/haproxy"
action :nothing
end
start.sh:
#!/bin/bash -e
kill -9 `ps -ef | grep haproxy | grep -v grep | awk '{print $2}'`
cd /home/lb/haproxy
/home/lb/haproxy/haproxy -f /home/lb/haproxy/haproxy.cfg
- You should better use `cwd` attribute of `execute` resource to change working directory.
- Changed script to "bash" and added "-e" for it to fail on the first error it encounters.
- You don't need `exit $?` at the end as exit status of the script will automatically be the exit status of last command in it.
Problem
I have a `chef` `execute` `resource` in my `recipe`. When my `chef-client` runs this resource I get the error : ``` Expected process to exit with [0], but received '' ``` The resource : ``` execute "startHAPROXY" do command "cd /home/#{node["haproxyUser"]}/haproxy && ./start.sh" action :nothing end ``` start.sh : ``` #!/bin/sh kill -9 `ps -ef | grep haproxy | grep -v grep | awk '{print $2}'` cd /home/lb/haproxy /home/lb/haproxy/haproxy -f /home/lb/haproxy/haproxy.cfg exit $? ``` when I run it manually (`./start.sh; echo $?`) it echos `0` but still when `chef-client` runs it, it fails.