Advertisement
Guest User

Untitled

a guest
Apr 25th, 2016
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.71 KB | None | 0 0
  1. require 'rake'
  2. require 'rspec/core/rake_task'
  3. require 'yaml'
  4. require 'highline/import'
  5.  
  6. properties = YAML.load_file('properties.yaml')
  7.  
  8. ENV['SSH_USER'] = ask("Enter ssh user: ") { |q| q.echo = true }
  9. ENV['SSH_PASSWORD'] = ask("Enter ssh password: ") { |q| q.echo = false }
  10.  
  11. desc "Run serverspec to all hosts"
  12. task :serverspec => 'serverspec:all'
  13.  
  14. namespace :serverspec do
  15. task :all => properties.keys.map {|key| 'serverspec:' + key }
  16. properties.keys.each do |key|
  17. desc "Run serverspec to #{key}"
  18. RSpec::Core::RakeTask.new(key.to_sym) do |t|
  19. ENV['KEY'] = "#{key}"
  20. ENV['TARGET_HOST'] = properties[key][:ip]
  21. t.pattern = 'spec/{' + properties[key][:roles].join(',') + '}/*_spec.rb'
  22. end
  23. end
  24. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement