Capistrano 3在钩子之前和之后

Nvi*_*ick 7 ruby capistrano ruby-on-rails capistrano3

我刚刚切换到使用Capistrano 3并遇到了前后钩子文档的一些问题.

在文档中,它显示以下内容用于调用现有任务

before :starting, :ensure_user
after :finishing, :notify
Run Code Online (Sandbox Code Playgroud)

如果我使用这种语法,我会得到"不知道如何构建任务的开始"而是我必须执行以下操作才能使我的任务正常工作.

before "deploy:starting", "dj:stop"
after "deploy:finished", "dj:start"
Run Code Online (Sandbox Code Playgroud)

dj任务位于*.rake文件中的Capistrano任务目录中.关于我可能缺少什么或做文档的任何想法都需要更新?

Ruby 2.1.6 Rails 4.2.0 Capistrano 3.4.0

mar*_*006 11

只有before :starting, :ensure_user当两个任务都位于同一名称空间内时,才能使用快捷方式版本().如果要从不同的命名空间执行任务,则需要在string(before "deploy:starting", "dj:stop")中包含命名空间.