有时,在 Capistrano 部署期间会发生错误,无法提供足够的输出来进行故障排除。例如:
* executing "cd /apps/my_app/releases/20121019181838 && bundle exec rake RAILS_ENV=dev RAILS_GROUPS=assets assets:precompile"
servers: ["myserver.com"]
[myserver.com] executing command
*** [err :: myserver.com] rake aborted!
*** [err :: myserver.com] Connection refused - connect(2)
*** [err :: myserver.com]
*** [err :: myserver.com] Tasks: TOP => environment
*** [err :: myserver.com] (See full trace by running task with --trace)
command finished in 2388ms
*** [deploy:update_code] rolling back
* executing "rm -rf /apps/my_app/releases/20121019181838; true"
在 rake 任务期间出了点问题,看起来它可能与 DB 有关。但是为了解决这个问题,我需要重新创建部署条件;唉,条件已经rm -rf
制定。
有什么方法可以让 Capistrano 在这里使用 a before
or after
hook 掉到(Cap 或 bash)shell 中?--trace
有没有一种简单的方法可以在不覆盖 Capistrano 类的情况下将 a 插入到该 rake 任务中?其他想法?