Merge remote-tracking branch 'origin/master' into leap_master
[puppet_stdlib.git] / Rakefile
1 require 'puppetlabs_spec_helper/rake_tasks'
2 require 'puppet-lint/tasks/puppet-lint'
3 require 'puppet_blacksmith/rake_tasks' if Bundler.rubygems.find_name('puppet-blacksmith').any?
4
5 PuppetLint.configuration.fail_on_warnings = true
6 PuppetLint.configuration.send('relative')
7
8 desc 'Generate pooler nodesets'
9 task :gen_nodeset do
10   require 'beaker-hostgenerator'
11   require 'securerandom'
12   require 'fileutils'
13
14   agent_target = ENV['TEST_TARGET']
15   if ! agent_target
16     STDERR.puts 'TEST_TARGET environment variable is not set'
17     STDERR.puts 'setting to default value of "redhat-64default."'
18     agent_target = 'redhat-64default.'
19   end
20
21   master_target = ENV['MASTER_TEST_TARGET']
22   if ! master_target
23     STDERR.puts 'MASTER_TEST_TARGET environment variable is not set'
24     STDERR.puts 'setting to default value of "redhat7-64mdcl"'
25     master_target = 'redhat7-64mdcl'
26   end
27
28   targets = "#{master_target}-#{agent_target}"
29   cli = BeakerHostGenerator::CLI.new([targets])
30   nodeset_dir = "tmp/nodesets"
31   nodeset = "#{nodeset_dir}/#{targets}-#{SecureRandom.uuid}.yaml"
32   FileUtils.mkdir_p(nodeset_dir)
33   File.open(nodeset, 'w') do |fh|
34     fh.print(cli.execute)
35   end
36   puts nodeset
37 end