繁体   English   中英

如何建立耙任务

[英]how to build a rake task

我想学习如何为我的Rails 3应用程序构建一个完成两件事的rake任务。

  1. 将资产推送到CDN
  2. 部署到heroku

以上步骤的命令:

 rake cache:s3
 heroku jammit:deploy --app #{app}

这是我的/lib/tasks/deployer.rake

task :deployit do
  puts '=== Storing assets on s3 ==='
  run "rake cache:s3"
  puts '=== Deploying to Heroku ==='
  run "heroku jammit:deploy --app #{app}"
end

def run(cmd)
  shell cmd
  if $?.exitstatus == 0
    display "[OK]"
  else
    display "[FAIL]"
  end
end

但是,main:Object的“ shell的未定义方法”错误

有关如何进行这项工作的建议? 这应该是任务还是其他?

谢谢

请改用系统命令。 有关更多信息: http : //blog.jayfields.com/2006/06/ruby-kernel-system-exec-and-x.html

第一个任务是另一个瑞克任务,如果它是:deployit任务的依赖项,则它将运行。 您当前的代码将两次加载rake。

如果使用像Arun这样的系统,您将获得:

task :deployit => 'cache:s3' do
  puts '=== Deploying to Heroku ==='
  system "heroku jammit:deploy --app #{app}"
end

暂无
暂无

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

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