草庐IT

ruby - 如果系统调用返回错误,则使 rake 任务失败

我有一个Rakefile,用于自动执行项目中的某些任务。在一些任务中,我调用system,但是,即使进程返回错误,任务继续没有任何问题。我怎样才能避免这种情况?我想在某些子进程返回错误时让rake退出。提前致谢 最佳答案 您可以评估system的返回值system('inexistentcommand')orexit!(1)puts"Thislineisnotreached" 关于ruby-如果系统调用返回错误,则使rake任务失败,我们在StackOverflow上找到一个类似的问题:

ruby - bundle exec rake test 什么都不做

我正试图让我的头脑“弄脏”TDD,但出于某种原因,当我在命令行上运行bundleexecraketest时,没有任何反应。这是我的RakeFile:require'rake/testtask'Rake::TestTask.newdo|test|test.libs:test这是我的测试文件:require'test/unit'classTestMygem 最佳答案 我忘了将这一行添加到我的RakeFiletest.test_files=FileList['tests/test_*.rb']总而言之,这是我的最终RakeFilerequ

ruby-on-rails - rake 中止! ActiveRecord::Base:Class 的未定义方法 `migration_error='

我正在RubyonRails上开发项目直到现在,我使用的是Rails4,在我遇到gems的无能问题之前一切都很好。我决定回滚到Rails3,更改我的Gemfile,删除Gemfile.lock,所有Rails安装和railties。然后我运行bundleinstall并安装了Rails3.2.13。但是现在当我运行rakedb:create时,一切都还好。当我运行rakedb:migrate时,问题开始了:JeffreeBook:llvookristijonas$rakedb:migrateWARNING:NokogiriwasbuiltagainstLibXMLversion2.8.

ruby-on-rails - 如何在 rake 任务中访问 app 变量

如何在Railsrake任务中获取ActionDispatch::Integration::Session的实例。我希望能够像在Rails控制台中那样调用:app.get'/'。 最佳答案 task:get_app=>:environmentdoapp=ActionDispatch::Integration::Session.newRails.applicationend 关于ruby-on-rails-如何在rake任务中访问app变量,我们在StackOverflow上找到一个类似的

ruby-on-rails - Rails、Rake、将文件夹移动到新位置

我需要将文件夹从插件移动到主应用程序/View。我想使用rake通过以下命令执行此操作是最简单的方法:require'fileutils'FileUtils.mv('/vendor/plugins/easy_addresses/lib/app/views','/app/views/')我只是不确定在哪里告诉脚本在哪里查看以及在哪里放置文件夹。我要移动的文件位于以下位置:`vender/plugins/easy_addresses/lib/app/views/easy_addresseseasy_addresses是views中我要移动到my_app/app/views/的文件夹的名称

ruby-on-rails - Rail3 rake 测试任务不运行测试

我有一个与Mr.Limpens非常相似的问题,有一个主要不同:我确实将test_unitrailtie包含到我的application.rb中。来self的application.rb:requireFile.expand_path('../boot',__FILE__)#Picktheframeworksyouwant:require'action_controller/railtie'require'dm-rails/railtie'#require'action_mailer/railtie'#require'active_resource/railtie'require'rai

ruby-on-rails - Rails 控制台无法连接到数据库,但 rake 任务可以

我有一个使用一键式DO图像的Rails应用。我可以成功运行任何rakedb:*,但是当我运行railsconsole时,我无法连接到数据库。我该如何解决?该应用程序运行良好。所以我认为是railsconsole问题。控制台输出:deployer:/home/rails$RAILS_ENV=productionbundleexecrakedb:migrateActiveRecord::SchemaMigrationLoad(3.2ms)SELECT"schema_migrations".*FROM"schema_migrations"deployer:/home/rails$echo$A

ruby-on-rails - Rails.root 在 Rails 3.0 的自定义 Rake 任务中为空

也许我在升级文档中遗漏了这一点,但如果我在Rails控制台中输出“Rails.root”,我会看到我的应用程序的根路径。但是如果我在自定义Rake任务中引用“Rails.root”,它是空的。我错过了什么?提前致谢。示例:namespace:admindodesc"Importsomedata"task:import=>:environmentdocsv=Rails.root+"/test/data.csv"raise"#{csv}doesnotexit.Stoppingtask."if!File.exists?(csv)CSV.foreach(csv,:headers=>:first

ruby-on-rails - 在任何来源中都找不到 rake-10.1.0

我一直在使用rails并尝试使用rake10.1.0设置passenger,它向我发送了这个错误。这是错误的链接。WebsiteLInkItlookslikeBundlercouldnotfindagem.Thisisprobablybecauseyourapplicationisbeingrununderadifferentenvironmentthanit'ssupposedto.Pleasecheckthefollowing:*Isthisappsupposedtoberunasthe`rails`user?*IsthisappbeingrunonthecorrectRubyin

ruby-on-rails - 如何从 rake 任务中返回一些值

如何从ruby​​中的Rake任务返回一些值。示例代码:namespacetaskstasktask1::environmentdo|task|log="Runningtask"putsloglog我正在运行rake任务:Rake::Task['tasks:task1'].invoke。如何获取变量中的返回值,如下所示:result=Rake::Task['tasks:task1'].invoke 最佳答案 假设您希望任务结果在其他任务中:config=''task:load_configdoconfig='someconfig'#