CruiseControl.rb с RSpec: задача Rake 'spec' не найдена

Я пытаюсь использовать CruiseControl.rb (версия 2.0.0pre1) с RSpec для моего приложения Ruby on Rails 3. cruise_config.rb для моего проекта выглядит так:

Project.configure do |project|
  project.rake_task = 'db:migrate db:test:prepare spec'
  project.scheduler.polling_interval = 1.hour
  project.scheduler.always_build = false
end

Но когда я пытаюсь запустить сборку с CruiseControl, он говорит:

rake aborted!
Custom rake task(s) 'spec' not defined

Tasks: TOP => cc:build
(See full trace by running task with --trace)

Не удается найти задачу rake для запуска тестов RSpec. Я также попытался определить пользовательские грабли внутри Rakefile и удалил project.rake_task = 'db:migrate db:test:prepare spec' линия внутри cruise_config.rb:

desc "Custom Task for CruiseControl.rb"
task :cruise do
  puts "Custom Rake task"
  Rake::Task['db:migrate'].execute
  Rake::Task['db:test:prepare'].execute
  Rake::Task['spec'].execute
end

Если я это сделаю, CruiseControl говорит

rake aborted!
ActiveRecord::ConnectionNotEstablished

Tasks: TOP => cruise
(See full trace by running task with --trace)
[CruiseControl] Invoking Rake task "cruise"
Custom Rake task

У кого-нибудь есть CruiseControl.rb, работающий с RSpec?

1 ответ

Решение

Убедитесь, что у вас есть :spec Задача, определенная в вашем Rakefileдля RSpec 2 это выглядит так:

require 'rspec/core/rake_task'

RSpec::Core::RakeTask.new(:spec)
Другие вопросы по тегам