From: Paula McMaw Date: Wed, 11 Oct 2017 14:10:18 +0000 (+0100) Subject: Merge pull request #712 from puppetlabs/release X-Git-Tag: 4.4.1~14 X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=2b536b6a200e8f4f7f7ae37ec091abd06ca4cb70;p=puppet-modules%2Fpuppetlabs-apt.git Merge pull request #712 from puppetlabs/release 4.3.0 merge back to master --- 2b536b6a200e8f4f7f7ae37ec091abd06ca4cb70 diff --cc spec/spec_helper_acceptance.rb index e5e7cbf,7391d21..1160438 --- a/spec/spec_helper_acceptance.rb +++ b/spec/spec_helper_acceptance.rb @@@ -6,8 -15,44 +15,44 @@@ install_bolt_on(hosts) unless pe_instal install_module_on(hosts) install_module_dependencies_on(hosts) -UNSUPPORTED_PLATFORMS = ['RedHat','Suse','windows','AIX','Solaris'] +UNSUPPORTED_PLATFORMS = %w[RedHat Suse windows AIX Solaris].freeze + DEFAULT_PASSWORD = if default[:hypervisor] == 'vagrant' + 'vagrant' + elsif default[:hypervisor] == 'vcloud' + 'Qu@lity!' + end + + def puppet_version + (on default, puppet('--version')).output.chomp + end + + def run_puppet_access_login(user:, password: '~!@#$%^*-/ aZ', lifetime: '5y') + on(master, puppet('access', 'login', '--username', user, '--lifetime', lifetime), stdin: password) + end + + def run_task(task_name:, params: nil, password: DEFAULT_PASSWORD) + if pe_install? + run_puppet_task(task_name: task_name, params: params) + else + run_bolt_task(task_name: task_name, params: params, password: password) + end + end + + def run_bolt_task(task_name:, params: nil, password: DEFAULT_PASSWORD) + on(master, "/opt/puppetlabs/puppet/bin/bolt task run #{task_name} --modules /etc/puppetlabs/code/modules/service --nodes localhost --password #{password} #{params}", acceptable_exit_codes: [0, 1]).stdout # rubocop:disable Metrics/LineLength + end + + def run_puppet_task(task_name:, params: nil) + on(master, puppet('task', 'run', task_name, '--nodes', fact_on(master, 'fqdn'), params.to_s), acceptable_exit_codes: [0, 1]).stdout + end + + def expect_multiple_regexes(result:, regexes:) + regexes.each do |regex| + expect(result).to match(regex) + end + end + # This method allows a block to be passed in and if an exception is raised # that matches the 'error_matcher' matcher, the block will wait a set number # of seconds before retrying.