最近我继承了一个已经多次部署到生产环境的 Rails 应用程序。我之前已部署到暂存环境。现在,它无法部署到任何一个。但是,另一个使用相同帐户部署到相同服务器的 Rails 应用程序使用 rvm 和 capistrano 成功部署。
我收到以下错误:
* executing "if [ -d /path/to/app/shared/cached-copy ]; then svn switch -q --username svnusername --password <filtered> --no-auth-cache -r111111 https://svn.server.local/svn/projects/app/trunk /path/to/app/shared/cached-copy; else svn checkout -q --username svnusername --password <filtered> --no-auth-cache -r111111 https://svn.server.local/svn/projects/app/trunk /path/to/app/shared/cached-copy; fi"
servers: ["myserver-prod01.private.local"]
[myserver-prod01.private.local] executing command
** [myserver-prod01.private.local:: out]
** [myserver-prod01.private.local:: out] $rvm_path (/home/appuser/.rvm/) does not exist.
** [myserver-prod01.private.local:: out] /usr/local/rvm/scripts/rvm: line 174: rvm_is_a_shell_function: command not found
** [myserver-prod01.private.local:: out] /usr/local/rvm/scripts/rvm: line 185: __rvm_teardown: command not found
** [myserver-prod01.private.local:: out] /usr/local/rvm/bin/rvm-shell: line 83: rvm: command not found
** [myserver-prod01.private.local:: out] Error: RVM was unable to use 'ruby-1.9.3-current@appuser'
command finished in 554ms
*** [deploy:update_code] rolling back
* executing "rm -rf /path/to/app/releases/20130425150643; true"
servers: ["myserver-prod01.private.local"]
[myserver-prod01.private.local] executing command
** [out :: myserver-prod01.private.local]
** [out :: myserver-prod01.private.local] $rvm_path (/home/appuser/.rvm/) does not exist.
** [out :: myserver-prod01.private.local] /usr/local/rvm/scripts/rvm: line 174: rvm_is_a_shell_function: command not found
** [out :: myserver-prod01.private.local] /usr/local/rvm/scripts/rvm: line 185: __rvm_teardown: command not found
** [out :: myserver-prod01.private.local] /usr/local/rvm/bin/rvm-shell: line 83: rvm: command not found
** [out :: myserver-prod01.private.local] Error: RVM was unable to use 'ruby-1.9.3-current@appuser'
command finished in 209ms
** [deploy:update_code] exception while rolling back: Capistrano::CommandError, failed: "env PATH=/opt/toolkit/extra-dev-current/root/usr/bin:$PATH:/usr/database/bin LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 RAILS_ENV=production rvm_path=$HOME/.rvm/ /usr/local/rvm/bin/rvm-shell 'ruby-1.9.3-current@appuser' -c 'rm -rf /path/to/app/releases/20130425150643; true'" on myserver-prod01.private.local
failed: "env PATH=/opt/toolkit/extra-dev-current/root/usr/bin:$PATH:/usr/database/bin LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 RAILS_ENV=production rvm_path=$HOME/.rvm/ /usr/local/rvm/bin/rvm-shell 'ruby-1.9.3-current@appuser' -c 'if [ -d /path/to/app/shared/cached-copy ]; then svn switch -q --username svnusername --password <filtered> --no-auth-cache -r111111 https://svn.server.local/svn/projects/app/trunk /path/to/app/shared/cached-copy; else svn checkout -q --username svnusername --password <filtered> --no-auth-cache -r111111 https://svn.server.local/svn/projects/app/trunk /path/to/app/shared/cached-copy; fi'" on myserver-prod01.private.local
我已经检查了服务器。RVM 已安装并正在运行。