diff --git a/.sync.yml b/.sync.yml index d91b1b6..d41932c 100644 --- a/.sync.yml +++ b/.sync.yml @@ -41,7 +41,6 @@ Gemfile: - gem: async version: '~> 1' - gem: beaker-module_install_helper - - gem: beaker-puppet_install_helper - gem: nokogiri ":system_tests": - gem: voxpupuli-acceptance diff --git a/Gemfile b/Gemfile index 8f9552d..a31fccb 100644 --- a/Gemfile +++ b/Gemfile @@ -41,7 +41,6 @@ group :development do gem "beaker-puppet", *location_for(ENV['BEAKER_PUPPET_VERSION'] || '~> 4.0') if Gem::Requirement.create('< 3.2.0').satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) gem "async", '~> 1', require: false gem "beaker-module_install_helper", require: false - gem "beaker-puppet_install_helper", require: false gem "nokogiri", require: false end group :development, :release_prep do diff --git a/spec/spec_helper_acceptance.rb b/spec/spec_helper_acceptance.rb index ec14b2a..04d511d 100644 --- a/spec/spec_helper_acceptance.rb +++ b/spec/spec_helper_acceptance.rb @@ -1,7 +1,6 @@ require 'beaker-rspec' require 'beaker-puppet' require 'beaker/module_install_helper' -require 'beaker/puppet_install_helper' require 'voxpupuli/acceptance/spec_helper_acceptance' RSpec.configure do |c| @@ -43,6 +42,30 @@ -----END CERTIFICATE----- EOM + def run_puppet_install_helper + return unless ENV['PUPPET_INSTALL_TYPE'] == 'agent' + if ENV['BEAKER_PUPPET_COLLECTION'].match? %r{/-nightly$/} + # Workaround for RE-10734 + options[:release_apt_repo_url] = 'http://nightlies.puppet.com/apt' + options[:win_download_url] = 'http://nightlies.puppet.com/downloads/windows' + options[:mac_download_url] = 'http://nightlies.puppet.com/downloads/mac' + end + + agent_sha = ENV['BEAKER_PUPPET_AGENT_SHA'] || ENV['PUPPET_AGENT_SHA'] + if agent_sha.nil? || agent_sha.empty? + install_puppet_agent_on(hosts, options.merge(version: version)) + else + # If we have a development sha, assume we're testing internally + dev_builds_url = ENV['DEV_BUILDS_URL'] || 'http://builds.delivery.puppetlabs.net' + install_from_build_data_url('puppet-agent', "#{dev_builds_url}/puppet-agent/#{agent_sha}/artifacts/#{agent_sha}.yaml", hosts) + end + + # XXX install_puppet_agent_on() will only add_aio_defaults_on when the + # nodeset type == 'aio', but we don't want to depend on that. + add_aio_defaults_on(hosts) + add_puppet_paths_on(hosts) + end + # Until solaris gets new image we need to add to the cert chain on solaris, call a beaker-puppet setup script to handle this hosts.each do |host| next unless host.platform.match? %r{solaris-11(\.2)?-(i386|sparc)}