Rakefile 685 B

123456789101112131415161718192021222324252627
  1. require 'rake'
  2. require 'rspec/core/rake_task'
  3. task :spec => 'spec:all'
  4. task :default => :spec
  5. namespace :spec do
  6. targets = []
  7. Dir.glob('./spec/*').each do |dir|
  8. next unless File.directory?(dir)
  9. target = File.basename(dir)
  10. target = "_#{target}" if target == "default"
  11. targets << target
  12. end
  13. task :all => targets
  14. task :default => :all
  15. targets.each do |target|
  16. original_target = target == "_default" ? target[1..-1] : target
  17. desc "Run serverspec tests to #{original_target}"
  18. RSpec::Core::RakeTask.new(target.to_sym) do |t|
  19. ENV['TARGET_HOST'] = original_target
  20. t.pattern = "spec/#{original_target}/*_spec.rb"
  21. end
  22. end
  23. end