加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 在Rake中组合多个任务时清理任务

发布时间:2020-12-17 03:09:44 所属栏目:百科 来源:网络整理
导读:我在使用以下依赖项定义的rake中有一个构建任务: desc 'Builds the App'task :rebuild_dev = ["solr:start","db:drop","db:create","db:migrate","spec","solr:stop"] 第一个任务“solr:start”启动Solr Indexing服务器.现在,如果构建失败(可能在规范测试
我在使用以下依赖项定义的rake中有一个构建任务:

desc 'Builds the App'
task :rebuild_dev => ["solr:start","db:drop","db:create","db:migrate","spec","solr:stop"]

第一个任务“solr:start”启动Solr Indexing服务器.现在,如果构建失败(可能在规范测试中失败),则不执行“solr:stop”任务.并且服务器没有停止.

是否有任何方法可以指定清理任务或始终运行的任务,即使其中一个从属任务失败?在我的情况下,要始终确保“solr:stop”执行…

解决方法

您只需要使用Ruby的ensure系统

desc "Builds the App"
task :rebuild_dev do
  begin
    ["solr:start","spec"].each do |t|
      Rake::Task[t].execute
    end
  ensure
    Rake::Task["solr:stop"].execute
  end
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读