【问题标题】:Can spork work with rake tasks?spork 可以处理 rake 任务吗?
【发布时间】:2011-09-30 18:36:25
【问题描述】:

Rake 任务遇到与运行测试相同的问题:Rails 启动过程需要很长时间才能运行。

有没有办法将 spork 和 rake 结合在一起?

【问题讨论】:

标签: ruby-on-rails ruby rake spork


【解决方案1】:

您可以使用 irake gem,它可以从控制台执行 rake 任务。

将此添加到 Gemfile:

gem 'irake'

然后捆绑并启动控制台

$ bundle install
$ rails console

...并等待 Rails 环境加载(仅一次)。然后你可以这样做:

rake "db:migrate"

如果你想列出任务,你可以:

Rake::Task.tasks.each{|t| puts t.name }; nil

【讨论】:

    【解决方案2】:

    我今天发现了宙斯。这是有史以来最好的事情,所以我改变了对 zeus 的回答:

    https://github.com/burke/zeus

    宙斯 rake my:special:task

    【讨论】:

    • 令人着迷... 打开 tricorder
    【解决方案3】:
    rake test:units
    testdrb -I test/ test/unit/
    
    rake test:functionals
    testdrb -I test/ test/functional/
    
    rake test:integration
    testdrb -I test/ test/integration/
    

    【讨论】:

      【解决方案4】:

      据我所知,没有开箱即用的标准解决方案。

      Rake 没有 --drb 选项,spork 在这里也无能为力。 当然,定制解决方案是可能的。这将需要延长耙式转轮。

      我认为 rake 任务不像测试那样经常运行,这就是为什么问题还没有解决。

      【讨论】:

      • 谢谢。我基本上想要 spin (github.com/jstorimer/spin) 之类的东西,它分叉一个加载的 Rails 进程和所有的 gem。
      猜你喜欢
      • 1970-01-01
      • 2013-07-15
      • 2023-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多