X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=Rakefile;h=d12d85495d735b72ada9cb125a3b9ce13db13561;hb=fd53569ee8a3c16ba5f9ab1b5ae9782290e5f168;hp=5cbef6b45ce404644298cfb0b2b03c3388f5b73c;hpb=cdfad26d83482c61516ba4783348ae556168693c;p=puppet-modules%2Fpuppetlabs-apt.git diff --git a/Rakefile b/Rakefile index 5cbef6b..d12d854 100644 --- a/Rakefile +++ b/Rakefile @@ -1,29 +1,37 @@ -require 'rake' -require 'rspec/core/rake_task' +require 'puppetlabs_spec_helper/rake_tasks' +require 'puppet-lint/tasks/puppet-lint' +require 'puppet_blacksmith/rake_tasks' if Bundler.rubygems.find_name('puppet-blacksmith').any? -task :default => [:spec] +PuppetLint.configuration.fail_on_warnings = true +PuppetLint.configuration.send('relative') -desc "Run all module spec tests (Requires rspec-puppet gem)" -RSpec::Core::RakeTask.new(:spec) do |t| - t.rspec_opts = ['--color'] - t.pattern = 'spec/{classes,defines,unit}/**/*_spec.rb' -end +desc 'Generate pooler nodesets' +task :gen_nodeset do + require 'beaker-hostgenerator' + require 'securerandom' + require 'fileutils' -desc "Build puppet module package" -task :build do - # This will be deprecated once puppet-module is a face. - begin - Gem::Specification.find_by_name('puppet-module') - rescue Gem::LoadError, NoMethodError - require 'puppet/face' - pmod = Puppet::Face['module', :current] - pmod.build('./') + agent_target = ENV['TEST_TARGET'] + if ! agent_target + STDERR.puts 'TEST_TARGET environment variable is not set' + STDERR.puts 'setting to default value of "redhat-64default."' + agent_target = 'redhat-64default.' end -end -desc "Check puppet manifests with puppet-lint" -task :lint do - # This requires pull request: https://github.com/rodjek/puppet-lint/pull/81 - system("puppet-lint manifests") - system("puppet-lint tests") + master_target = ENV['MASTER_TEST_TARGET'] + if ! master_target + STDERR.puts 'MASTER_TEST_TARGET environment variable is not set' + STDERR.puts 'setting to default value of "redhat7-64mdcl"' + master_target = 'redhat7-64mdcl' + end + + targets = "#{master_target}-#{agent_target}" + cli = BeakerHostGenerator::CLI.new([targets]) + nodeset_dir = "tmp/nodesets" + nodeset = "#{nodeset_dir}/#{targets}-#{SecureRandom.uuid}.yaml" + FileUtils.mkdir_p(nodeset_dir) + File.open(nodeset, 'w') do |fh| + fh.print(cli.execute) + end + puts nodeset end