关闭

Ruby自定义rake任务

标签: rubyrakenamespace
129人阅读 评论(0) 收藏 举报
分类:

注: 自定义rake任务文件写在/lib/tasks/**.rake中

示例代码:

namespace :connectivity do
  desc 'login'
  task(login: :environment) do
    Connectivity.login
    p "login time: #{Time.now}"
  end
end

代码解释:

1、:connectivity是任务的命名空间
2、desc ‘login’任务的文字解释
3、:environment将会告知rake在执行login任务之前加载应用程序的完整环境。如果需要使用应用程序
中的代码就需要加上,当然要使用什么环境需要在调用时加上RAILS_ENV=**。

执行rake任务:

rake RAILS_ENV=production connectivity:login #指定rake执行的环境为production

扩展:

task :a do
 puts "a"
end

task :b do
 puts "b"
end

task :c do
 puts "c"
end

task :ready => [:a,:b,:c] do
 puts "ready"
end
#当执行ready任务时,将会先按顺序执行a、b、c任务,完了之后执行ready任务
#执行rake ready,输出结果为:
#a
#b
#c
#ready
1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:3236次
    • 积分:117
    • 等级:
    • 排名:千里之外
    • 原创:6篇
    • 转载:1篇
    • 译文:1篇
    • 评论:0条
    文章分类