jjzjj

ruby-on-rails - Heroku 无法检测到 rake 任务(LoadError : cannot load such file -- rspec/core/rake_task)

我正在使用travisCI部署到heroku,但出现此错误。这才刚刚开始。我有基本的railsRakefile,我有一个看起来像这样的文件,否则travis无法检测到rake任务:#lib\tasks\spec.rakerequire'rspec/core/rake_task'RSpec::Core::RakeTask.newtask:default=>:spec为什么会专门为heroku显示此错误?编辑-我有一个与给出的(更好的)答案相似的版本:beginrequire'rspec/core/rake_task'desc"Runallexamples"RSpec::Core::Rak

ruby - Capistrano 错误:<Rake::Task load:defaults => []>:Rake::Task 的未定义方法 `already_invoked'

我花了太多时间调试它,但我不知道发生了什么。“capproductiondeploy”今天早上运行良好,现在它只是抛出一个错误。令人惊讶的是,谷歌到目前为止并没有太大帮助。据我所知,代码库没有任何变化:➜sesac-mm-matchinggit:(deploy)capproductiondeploy--trace**Invokeproduction(first_time)**Executeproductioncapaborted!NoMethodError:undefinedmethod`already_invoked'for[]>:Rake::Task/Users/***/.rvm/

ruby-on-rails - Ruby on Rails + Sidekiq : How do I change a scheduled job start time?

我最近开始使用Sidekiq并注意到它有一个我一直在寻找的很棒的功能:UserMailer.delay_until(5.days.from_now).find_more_friends_email基本上我可以在未来安排工作,所以我不需要我的应用程序持续轮询具有开始时间的新事件。现在这很有用,但我如何更改作业的开始时间?通常一些预定的事件会更改其开始时间。我如何在sidekiq中复制它?我知道我可以删除作业并创建一个新作业,但是否可以只修改开始时间?编辑:我建立在OtoBrglez的想法之上,这里是记录的代码:moduleTaskStuffclassTaskSetterincludeSi

ruby - 任务依赖性是否总是以特定顺序与 rake 一起运行?

我有以下示例,它基于我希望我的rakefile使用的结构:task:defaultdoputs'Tasksyoucanrun:dev,stage,prod'endtask:dev=>[:init,:devrun,:clean]task:devrundoputs'Devstuff'endtask:stage=>[:init,:stagerun,:clean]task:stagerundoputs'Stagingstuff'endtask:prod=>[:init,:prodrun,:clean]task:prodrundoputs'Productionstuff'endtask:init

ruby - 卡皮斯特拉诺 3 : use server custom variable in task

我有多阶段多服务器设置,在我的任务中我需要使用服务器名称例如在stagin.rb我有:set:stage,:staging#Defineserversserver'xxx.xx.xx.xxx',user:'deploy',roles:%w{app},name:'app1'server'xxx.xx.xx.yyy',user:'deploy',roles:%w{app},name:'app2'我想在我的任务中使用那个“名称”变量:task:configuredoonroles(:app),in::paralleldo#howdoIgetservernamehere?endend

ruby - 从任务中访问 Rake 任务描述

在rake任务中,如何查询描述?会给出的东西:desc"PopulateDB"taskpopulate::environmentdoputstask.desc#"PopulateDB"end 最佳答案 task必须定义为任务block的参数。desc"PopulateDB"task:populatedo|task|putstask.comment#"PopulateDB"putstask.full_comment#"PopulateDB"putstask.name#"populate"end编辑:此解决方案适用于rake0.8.7。

ruby - rake --tasks 完整描述(未删减)

也许是那些代码18之一,但是当我在我的Rakefile上运行rake-T时,我的任务的长描述总是被删掉。有什么方法可以显示完整的描述而不必缩短描述?谢谢 最佳答案 格式略有不同(描述从下一行开始而不是当前行的注释),但这将为您提供完整的描述:rake-D此外,如果您真的想要其他格式,您可以将输出通过管道传输到cat:rake-T|cat 关于ruby-rake--tasks完整描述(未删减),我们在StackOverflow上找到一个类似的问题: https:

ruby - 如何以编程方式一次运行多个 Rake 任务?

在命令行我可以像这样运行多个任务rakeenvironmenttask1task2task3我如何以编程方式执行此操作?我知道我可以像这样运行一项任务Rake::Task['task1'].invoke 最佳答案 你可以调用两个任务:require'rake'task:task1do|t|ptendtask:task2do|t|ptendRake::Task["task1"].invokeRake::Task["task2"].invoke我更喜欢有先决条件的新口味:require'rake'task:task1do|t|ptend

ruby - 如何将参数从父任务传递到 Rake 中的子任务?

我正在编写一个Rake脚本,其中包含带参数的任务。我弄清楚了如何传递参数以及如何使任务依赖于其他任务。task:parent,[:parent_argument1,:parent_argument2,:parent_argument3]=>[:child1,:child2]do#PerformParentTaskFunctionalitiesendtask:child1,[:child1_argument1,:child1_argument2]do|t,args|#PerformChild1TaskFunctionalitiesendtask:child2,[:child2_argum

ruby - 在 rspec(和 cucumber )中测试 rake 任务

我是Ruby的新手,我一直在尝试学习Rake、RSpec和Cucumber。我找到了一些可以帮助我测试Rake任务的代码,但我无法让它正常工作。有人告诉我:http://blog.codahale.com/2007/12/20/rake-vs-rspec-fight/放弃这个:defdescribe_rake_task(task_name,filename,&block)require"rake"describe"Raketask#{task_name}"doattr_reader:taskbefore(:all)do@rake=Rake::Application.newRake.ap