有一个capistrano任务运行一个食谱,但不是另一个?

时间:2012-08-03 19:47:55

标签: ruby-on-rails-3 capistrano

我有一个鸡/蛋情况,其中包含一个目录,该目录应该存在于before deploy:update_code任务中。

有没有办法确定是否有cap部署:cold是调用配方并且没有为此运行任务?但是对于其他所有人? (上限部署,上限部署:迁移,无论如何)

现在,我正在使用捕获来确定服务器上是否存在该目录,但如果没有必要,最好不要这样做。

TIA

1 个答案:

答案 0 :(得分:0)

使用deploy:update_code任务上的before hook可以解决问题吗?您可以创建运行任务:

task :mkdir_for_update_code do
    mkdir -p /path_of_dir/
end

然后添加

before 'deploy:update_code', 'deploy:mkdir_for_update_code' 

根据任务所在的命名空间替换第二个变量中的deploy。