繁体   English   中英

rake 任务 by.rake 文件

[英]A rake task by .rake file

我在 Ruby 1.9.3 项目中有以下 Rakefile:

require 'rake/testtask'
require 'json'

Rake::TestTask.new do |t|
  t.pattern = "spec/**/*_spec.rb"
  t.verbose = true
end

task :default => :test

namespace :omglol do
  namespace :file_a do
    task :foo do
      # do some stuff
    end
  end

  namespace :file_b do
    task :bar do
      # do some stuff
    end
  end
end

如您所见,该文件的第一部分允许运行测试,只需使用rake命令即可。 第二部分包含一些任务。

实际上,我在 omglol:file_a 和 omglol:file_b 命名空间中有很多任务。 这就是为什么我想将它们中的每一个都移动到一个文件中,例如tasks/omglol/file_a.raketasks/omglol/file_b.rake

有没有最好的方法? 谢谢。

是的。 只需将逻辑移动到适当的文件中,然后require它们。

示例 Rakefile:

require 'rake/testtask'
require 'json'
require 'lib/tasks/omglol/file_a.rake' # <= contains your subtasks

Rake::TestTask.new do |t|
  t.pattern = "spec/**/*_spec.rb"
  t.verbose = true
end

task :default => :test

然后在lib/tasks/omglol/file_a.rake简单地定义你的任务:

namespace :omglol do
  namespace :file_a do
    task :foo do
      # do some stuff
    end
  end
end

该模式与 file_b.rake 相同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM