Tag: rake

我还有rake / rdoctask弃用的警告

我已经进行了捆绑更新,现在我在运行rake命令后仍然使用rake / rdoctask弃用警告。 WARNING: ‘require ‘rake/rdoctask” is deprecated. Please use ‘require ‘rdoc/task’ (in RDoc 2.4.2+)’ instead. at /home/cheetah/.rvm/gems/ruby-1.8.7-p302@tobiska/gems/rake-0.9.2.2/lib/rake/rdoctask.rb 我试着阅读这篇技巧http://matthew.mceachen.us/blog/howto-fix-rake-rdoctask-is-deprecated-use-rdoc-task-instead-1169.html但是我的Rakefile没问题。 我不知道,如何解决这个问题。 有小费吗? 非常感谢。 马丁

处理非常长时间的rake任务

我有兴趣运行一个非常长时间的rake任务,一个需要几个小时才能完成的任务,我有兴趣了解处理这个问题的最佳实践。 我发现可能的解决方案: 设置一个cron作业 delayed_job的 resque cron似乎是一个简单的设置解决方案,但它是否适合长期任务? 您使用什么以及您的解决方案的优点/缺点是什么?

将许多rake任务组合到一个rake任务中

而不是像这样单独运行每个rake任务: rake db:drop rake db:create rake db:migrate rake db:load 我想运行一个完成所有操作的rake任务。 这就是我对rakefile的看法: desc ‘This rebuilds development db’ namespace :rebuild_dev do Rake::Task[“db:drop”].execute Rake::Task[“db:create”].execute Rake::Task[“db:migrate”].execute Rake::Task[“db:load”].execute end 当我运行它时,上面的代码不起作用。

在heroku生产站点上清除rails app数据库

所以我是ROR和Heroku的新手,需要一些帮助。 我已经创建了一个应用程序并已部署它; 但是,我想清除与之相关的数据库。 意思是我想清除到目前为止已创建的任何用户(及其附加数据)。 我基本上创建了几个虚假帐户来测试生产网站上的数据库是否有效,但现在我想清除它,并从一个新的数据库开始。 这可能不完全删除数据库吗? 任何帮助都将得到真诚的感谢。 非常感谢您的宝贵时间!

Capistrano 3拉命令行参数

我正在从Capistrano 2升级到Capistrano 3.在Cap 2中我使用以下命令行参数作为分支名称(否则默认为master ) set :branch, fetch(:branch, “master”) 如果我调用cap deploy ,它将部署master分支。 但它也让我做这样的事情: cap deploy -S branch=foo 哪个会部署foo分支。 现在,在Capistrano 3中,如果我尝试运行以上操作,我会收到一个错误: invalid option: -S 。 现在通过命令行传递参数的正确方法是什么?

db:schema:load vs db:使用capistrano迁移

我有一个rails应用程序,我正在移动到另一台服务器,我想我应该使用db:schema:load来创建mysql数据库,因为它是推荐的。 我的问题是我正在使用capistrano进行部署,而似乎默认为rake db:migrate。 有没有办法改变这个或使用db:migrate的capistrano有充分理由?

如何检测里面的Rails环境

如果您了解创建cron作业的gem,那么这个问题可能才有意义。 对于我的应用程序,我想在所有环境中使用,包括测试和开发 。 我的schedule.rb看起来像这样: set :output, { :error => “#{path}/log/error.log”, :standard => “#{path}/log/cron.log” } set :environment, Rails.env.to_sym every 5.minutes do rake ‘db:activity:synchronize’ end 但它在Rails.env.to_sym失败了( 同样代表 RAILS_ENV ): /home/marius/.rvm/gems/ruby-1.9.2-p290@uxolo/gems/whenever-0.6.8/lib/whenever/job_list.rb:21:in `eval’: uninitialized constant Whenever::JobList::Rails (NameError) from /home/marius/.rvm/gems/ruby-1.9.2-p290@uxolo/gems/whenever-0.6.8/lib/whenever/job_list.rb:21:in `eval’ from /home/marius/.rvm/gems/ruby-1.9.2-p290@uxolo/gems/whenever-0.6.8/lib/whenever/job_list.rb:21:in `initialize’ from /home/marius/.rvm/gems/ruby-1.9.2-p290@uxolo/gems/whenever-0.6.8/lib/whenever.rb:15:in `new’ from /home/marius/.rvm/gems/ruby-1.9.2-p290@uxolo/gems/whenever-0.6.8/lib/whenever.rb:15:in `cron’ from /home/marius/.rvm/gems/ruby-1.9.2-p290@uxolo/gems/whenever-0.6.8/lib/whenever/command_line.rb:41:in `run’ from /home/marius/.rvm/gems/ruby-1.9.2-p290@uxolo/gems/whenever-0.6.8/lib/whenever/command_line.rb:8:in `execute’ from /home/marius/.rvm/gems/ruby-1.9.2-p290@uxolo/gems/whenever-0.6.8/bin/whenever:38:in `’ from […]

我可以将参数传递给rake db:seed吗?

我的一部分seeds.rb将大量数据加载到数据库中。 我希望能够有选择地加载这些数据。 例如 $ rake db:seed 要么 $rake db:seed[0] 只会加载必要的数据来运行网站 $ rake db:seed[1] 我也会将我的大数据文件加载到数据库中。 这可能吗? 我怎样才能做到这一点? 如果没有,谁能想到办法做我想做的事情?

db:种子不加载模型

我正在尝试使用标准db/seeds.rb方法为我的数据库设定种子。 这在我的开发机器上工作正常,但在我的服务器上,我得到: $ sudo rake db:seed RAILS_ENV=production –trace ** Invoke db:seed (first_time) ** Invoke environment (first_time) ** Execute environment ** Execute db:seed rake aborted! uninitialized constant Permission /usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2503:in `const_missing’ /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.4/lib/active_support/dependencies.rb:92:in `const_missing’ /path/…/…/…/…/db/seeds.rb:4 /usr/local/lib/ruby/gems/1.8/gems/rails-2.3.4/lib/tasks/databases.rake:215:in `load’ /usr/local/lib/ruby/gems/1.8/gems/rails-2.3.4/lib/tasks/databases.rake:215 /usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `call’ … 但是当我在控制台中检查时,模型确实存在: $ script/console production Loading production environment (Rails 2.3.4) >> Permission => Permission(id: integer, …, created_at: datetime, […]

Rspec spec和Rake规范给出了不同的结果

这似乎是主要问的问题,我有一个应用程序,当运行在rake spec和rspec输出似乎是不同的。 当使用rspec spec -p命令时,显示0失败消息,而当使用rake spec时,显示的错误很少。