9

我正在关注 Railscast on Deploying to a VPS,一切都很顺利,直到我尝试运行cap deploy。尝试查找目录时似乎失败了。这是错误消息:

* 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 git@github.com: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 git@github.com: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

我在这上面花了很长时间,似乎无法找到我要去哪里错了。

4

2 回答 2

23

你跑过cap deploy:setupcap deploy:check?这些应该突出许多常见问题。

然而,导致上述失败的错误看起来像是权限问题。

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

确保该文件夹存在并且部署用户具有操作它的正确权限。

于 2012-05-13T21:44:56.907 回答
0

权限问题可能是由默认 Capistrano use_sudo 行为引起的。

这可以被以下配置参数覆盖:set :use_sudo, false

奇怪的是,如果这个参数没有设置为 false,Capistrano 会对某些命令使用 sudo,而不会对其他命令使用它。对我来说似乎是一个错误。

于 2014-05-07T11:18:53.013 回答