CruiseControl.rb с RSpec: задача Rake 'spec' не найдена - PullRequest
0 голосов
/ 24 февраля 2012

Я пытаюсь использовать 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)

Не удалось найти задачу spec rake для запуска тестов RSpec. Я также попытался определить пользовательскую задачу rake внутри моего 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 Ответ

4 голосов
/ 24 февраля 2012

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

require 'rspec/core/rake_task'

RSpec::Core::RakeTask.new(:spec)
...