Search code examples
ruby-on-railscapistranounicorn

Error When Deploying Using Capistrano


I was following the Railscast on Deploying to a VPS and everything goes smooth till I try and run cap deploy. It seems to fails when trying to find a directory. Here is the error message:

* executing `deploy'
triggering before callbacks for `deploy'
 * executing `deploy:check_revision'
 * executing `deploy:update'
** transaction: start
* executing `deploy:update_code'
updating the cached checkout on all servers
executing locally: "git ls-remote [email protected]:markprovan/dropwall_rails.git master"
command finished in 2531ms
* executing "if [ -d /home/deployer/apps/dropwall_rails/shared/cached-copy ]; then cd   /home/deployer/apps/dropwall_rails/shared/cached-copy && git fetch -q origin && git fetch -- tags -q origin && git reset -q --hard 9407f1feb2ea5b1c4a0666196bdcbb9ad888563e && git clean -q -d -x -f; else git clone -q [email protected]:markprovan/dropwall_rails.git /home/deployer/apps/dropwall_rails/shared/cached-copy && cd /home/deployer/apps/dropwall_rails/shared/cached-copy && git checkout -q -b deploy 9407f1feb2ea5b1c4a0666196bdcbb9ad888563e; fi"
servers: ["209.61.142.61"]
Password: 
[209.61.142.61] executing command
** [209.61.142.61 :: out] The authenticity of host 'github.com (207.97.227.239)' can't be established.
** RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
** Are you sure you want to continue connecting (yes/no)?
** [209.61.142.61 :: out] yes
** Warning: Permanently added 'github.com,207.97.227.239' (RSA) to the list of known hosts.
command finished in 2655ms
copying the cached version to /home/deployer/apps/dropwall_rails/releases/20120513204913
* executing "cp -RPp /home/deployer/apps/dropwall_rails/shared/cached-copy /home/deployer/apps/dropwall_rails/releases/20120513204913 && (echo 9407f1feb2ea5b1c4a0666196bdcbb9ad888563e > /home/deployer/apps/dropwall_rails/releases/20120513204913/REVISION)"
servers: ["209.61.142.61"]
[209.61.142.61] executing command
** [out :: 209.61.142.61] cp: cannot create directory `/home/deployer/apps/dropwall_rails/releases/20120513204913': No such file or directory
command finished in 482ms
*** [deploy:update_code] rolling back
* executing "rm -rf /home/deployer/apps/dropwall_rails/releases/20120513204913; true"
servers: ["209.61.142.61"]
[209.61.142.61] executing command
command finished in 479ms
failed: "sh -c 'cp -RPp /home/deployer/apps/dropwall_rails/shared/cached-copy /home/deployer/apps/dropwall_rails/releases/20120513204913 && (echo 9407f1feb2ea5b1c4a0666196bdcbb9ad888563e > /home/deployer/apps/dropwall_rails/releases/20120513204913/REVISION)'" on 209.61.142.61

I have spent ages on this and can't seem to find where I'm going wrong.


Solution

  • Have you run cap deploy:setup and cap deploy:check? These should highlight a lot of common issues.

    The error causing failure above however looks like a permissions issue.

    cp: cannot create directory `/home/deployer/apps/dropwall_rails/releases/20120513204913': No such file or directory
    

    Make sure that the folder exists and that the deployment user has the correct permissions to manipulate it.