X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=spec%2Fspec_helper_acceptance.rb;h=29b178a51e3a8a125f65e273dc66e9e086c29658;hb=337435e42bba9c4044f2e87ff4b29f70141295ce;hp=763f03bda81ebfd5f13be4294959ef2b75f2d98f;hpb=7fc436b6f7efd749df44bec3ab16f5aafb210a79;p=puppet-modules%2Fpuppetlabs-apt.git diff --git a/spec/spec_helper_acceptance.rb b/spec/spec_helper_acceptance.rb index 763f03b..29b178a 100644 --- a/spec/spec_helper_acceptance.rb +++ b/spec/spec_helper_acceptance.rb @@ -1,16 +1,21 @@ +require 'beaker-pe' +require 'beaker-puppet' require 'beaker-rspec' require 'beaker/puppet_install_helper' require 'beaker/module_install_helper' require 'beaker-task_helper' +require 'beaker/i18n_helper' +require 'beaker-task_helper' run_puppet_install_helper +configure_type_defaults_on(hosts) install_bolt_on(hosts) unless pe_install? install_module_on(hosts) install_module_dependencies_on(hosts) UNSUPPORTED_PLATFORMS = ['RedHat', 'Suse', 'windows', 'AIX', 'Solaris'].freeze -MAX_RETRY_COUNT = 12 -RETRY_WAIT = 10 +MAX_RETRY_COUNT = 5 +RETRY_WAIT = 3 ERROR_MATCHER = %r{(no valid OpenPGP data found|keyserver timed out|keyserver receive failed)} # This method allows a block to be passed in and if an exception is raised @@ -31,7 +36,7 @@ def retry_on_error_matching(max_retry_count = MAX_RETRY_COUNT, retry_wait_interv try += 1 yield rescue StandardError => e - raise unless try < max_retry_count && (error_matcher.nil? || e.message =~ error_matcher) + raise(_('Attempted this %{value0} times. Raising %{value1}') % { value0: max_retry_count, value1: e }) unless try < max_retry_count && (error_matcher.nil? || e.message =~ error_matcher) sleep retry_wait_interval_secs retry end @@ -45,6 +50,22 @@ RSpec.configure do |c| # Configure all nodes in nodeset c.before :suite do - run_puppet_access_login(user: 'admin') if pe_install? && puppet_version =~ %r{(5\.\d\.\d)} + run_puppet_access_login(user: 'admin') if pe_install? && (Gem::Version.new(puppet_version) >= Gem::Version.new('5.0.0')) + + hosts.each do |host| + # This will be removed, this is temporary to test localisation. + if (fact('osfamily') == 'Debian' || fact('osfamily') == 'RedHat') && + (Gem::Version.new(puppet_version) >= Gem::Version.new('4.10.5') && + Gem::Version.new(puppet_version) < Gem::Version.new('5.2.0')) + on(host, 'mkdir /opt/puppetlabs/puppet/share/locale/ja') + on(host, 'touch /opt/puppetlabs/puppet/share/locale/ja/puppet.po') + end + if fact('osfamily') == 'Debian' + # install language on debian systems + install_language_on(host, 'ja_JP.utf-8') if not_controller(host) + # This will be removed, this is temporary to test localisation. + end + on host, puppet('module', 'install', 'stahnma/epel') + end end end