I have an Opsworks Rails Layer (nginx/unicorn) instance that has been running for a while, and I have successfully deployed my rails app to it many times directly from GitHub.
Yesterday, I started seeing a strange error where our latest code changes are not actually being deployed by Opsworks. i.e. I get a 500 error along with a stack trace that can only be from an older version of my github repo. The line where the error occurs no longer exists in the latest version of the code.
When I SSH into the instance and look at the
/srv/www/<myapp>/current folder, I do see the latest code files, and I see a reference to the latest GitHub commit in the Opsworks Deploy log file. It looks like everything is being deployed properly (i.e. I see no errors in the log file and the Deploy finishes sucessfully) but obviously something is going wrong.
Does anyone have any ideas? Is there a code cache on the server that I don't know about? I finally tried stoping/restarting the instance and when it rebooted, I started getting this error: (111: Connection refused) while connecting to upstream - Opsworks Rails 4. I don't know if the two issues are related... maybe this is all about Unicorn not restarting properly... but right now, I'd really like to get to the bottom of why my latest GitHub repo code doesn't end up running on the server after what looks like a successful deployment.
Thanks in advance!