jjzjj

后台任务调度和管控

全部标签

ruby - 在 Rakefile 中设置 rspec 2 任务

我有一个看起来像这样的Rakefile:require'rspec/core/rake_task'desc"RunallRSpectests"RSpec::Core::RakeTask.new(:spec)虽然这不起作用。例如,如果我尝试运行“rake-T”,我得到:code/projects/bellybuster[master]%rake-T--trace(in/Users/craig/code/projects/bellybuster)rakeaborted!nosuchfiletoload--rspec/core/rake_task/Users/craig/.rvm/rubie

ruby-on-rails - Capistrano:不知道如何构建任务 'deploy:new_release_path'

我是第一次部署到DigitalOceanUbuntudroplet。我已经配置了所有内容并执行了所有步骤,现在我正在执行命令:capproductiondeploy:initial。对于此命令,我收到此错误消息:capaborted!Don'tknowhowtobuildtask'deploy:new_release_path'(see--tasks)/Users/Christopher/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-12.0.0/lib/rake/task_manager.rb:58:in`[]'/Users/

ruby - sleep() 对于作业调度应用程序的主循环来说是个好主意吗

我正在为我的工作用Ruby编写一个作业调度应用程序(主要是为了以给定的频率使用各种协议(protocol)移动文件)我的主循环是这样的:whiletruedo#somecodetolaunchtheproperjobsleepCONFIG["interval"]end它的工作就像一个魅力,但我不确定它是否足够安全,因为该应用程序可能在运行cpu密集型软件的服务器上运行。是否有另一种方法可以做同样的事情,或者sleep()对我来说是否足够安全? 最佳答案 每当我觉得需要阻塞时,我都会使用事件循环;通常是libev。这是一个Ruby绑定

ruby 任务 : joining numbers to intervals

我有一组唯一编号。像这样:[1,2,3,4,7,8,10,12]。它可以是未排序的。我需要的是获取此数组的间隔:intervals_for[1,2,3,4,7,8,10,12]#=>"1-4,7-8,10,12"我有自己的解决方案:defintervals_for(array)array.sort!new_array=[]array.eachdo|a|ifnew_array.lastanda==new_array.last.last+1new_array.last1?"#{a.first}-#{a.last}":a.first}.join(",")end但我认为这里有更干净的解决方案

ruby - 在 resque scheduler 中调度动态作业

我正在尝试使用rails3和resquescheduler测试future的调度作业:以下是我正在使用的代码,但我收到NoMethodErrorset_schedule。Resque.set_schedule("1",{:cron=>"306**1",:class=>"Notify",:queue=>"username",:message=>'notificationmessage'})我尝试使用简单的入队Resque.enqueue(Notify,params[:message])并且效果很好。更新:以下是我遇到的错误:undefinedmethod`set_schedule'for

ruby-on-rails - 为什么 Rake 任务增强在我的本地环境和部署到 Heroku Cedar 时有所不同?

我在lib/tasks/foo.rake中有这个:Rake::Task["assets:precompile"].enhancedoprint">>>>>>>>hellofromprecompile"endRake::Task["assets:precompile:nondigest"].enhancedoprint">>>>>>>>hellofromprecompile:nondigest"end当我在本地运行rakeassets:precompile时,两条消息都会被打印出来。当我推送到heroku时,只打印非摘要消息。然而,accordingtothebuildpack,推送正在

ruby-on-rails - 如何编写 Rake 任务将数据导入 Rails 应用程序?

目标:使用CRON任务(或其他预定事件)更新数据库,每晚从现有系统导出数据。所有数据都是在现有系统中创建/更新/删除的。该网站不直接与该系统集成,因此Rails应用程序只需要反射(reflect)数据导出中出现的更新。我有一个包含约5,000种产品的.txt文件,如下所示:"1234":"productname":"attr1":"attr2":"ABCManufacturing":"2222""A134":"anotherproduct":"attr1":"attr2":"FoobarWorld":"2447"...所有值都是用双引号(")括起来的字符串,用冒号(:)分隔字段是:id

ruby-on-rails - Google-maps-for-Rails - rake 任务中(对象)的未定义方法 `gmaps'

当我运行涉及启用了gmaps4rails的模型的rake任务时,我收到此错误,如果我评论该模型,使其不是acts_as_gmappable,它会正确完成。entercodeheretroy$rakepopulate:scans--trace**Invokepopulate:scans(first_time)**Invokeenvironment(first_time)**Executeenvironment**Executepopulate:scanshttp://goo.gl/fb/977zeSat,16Jul201119:43:59GMT47.676506-122.12187291

ruby - 如何在 ruby​​ 中控制(启动/终止)后台进程(服务器应用程序)

我正在尝试通过ruby​​为集成测试(实际上是规范)设置一个服务器,但不知道如何控制该过程。所以,我要做的是:为我的gem运行一个执行集成规范的rake任务任务需要先启动服务器(我使用webrick),然后运行规范执行规范后,它应该会杀死webrick,这样我就不会留下一些未使用的后台进程webrick不是必需的,但它包含在ruby​​标准库中,因此能够使用它会很棒。希望有人能提供帮助!附言。我在linux上运行,所以让这个适用于windows的工作不是我的主要优先事项(现在)。 最佳答案 标准方法是使用系统函数fork(复制当前进

ruby-on-rails - spork 可以处理 rake 任务吗?

Rake任务遇到与运行测试相同的问题:Rails启动过程在任务运行之前需要很长时间。有没有办法将spork和rake整合在一起? 最佳答案 您可以使用irakegem,它可以从控制台执行rake任务。将此添加到Gemfile:gem'irake'然后捆绑并启动控制台$bundleinstall$railsconsole...并等待Rails环境加载(仅一次)。然后你可以这样做:rake"db:migrate"如果你想列出任务,你可以:Rake::Task.tasks.each{|t|putst.name};nil