From bbe0ab65640e94e582f1c2953fb53be137603358 Mon Sep 17 00:00:00 2001 From: lnemsick-simp Date: Thu, 1 Jul 2021 08:59:37 -0400 Subject: [PATCH] (SIMP-10056) resolv Add Puppet 7 acceptance test (#48) * Add a Puppet 7 acceptance test * Remove check for Puppet >=6 in .fixtures.yml * Fail acceptance tests if no examples are executed. * Fixed a bug in the Augeas template * Adjusted the tests to effect change on a switch to/from NetworkManager Co-authored-by: Trevor Vaughan [SIMP-9666] #comment pupmod-simp-resolv acceptance tests configured SIMP-10056 #close --- .fixtures.yml | 8 ++------ .gitlab-ci.yml | 6 ++++++ CHANGELOG | 4 ++++ spec/acceptance/suites/default/00_default_spec.rb | 12 ++++++------ spec/classes/init_spec.rb | 8 ++++---- spec/spec_helper_acceptance.rb | 4 ++++ templates/etc/resolv.conf.epp | 4 ++-- 7 files changed, 28 insertions(+), 18 deletions(-) diff --git a/.fixtures.yml b/.fixtures.yml index 7e715a1..a509dc6 100644 --- a/.fixtures.yml +++ b/.fixtures.yml @@ -1,15 +1,11 @@ --- fixtures: repositories: - augeas_core: - repo: https://github.com/simp/pupmod-puppetlabs-augeas_core.git - puppet_version: ">= 6.0.0" + augeas_core: https://github.com/simp/pupmod-puppetlabs-augeas_core.git compliance_markup: https://github.com/simp/pupmod-simp-compliance_markup.git named: https://github.com/simp/pupmod-simp-named.git rsync: https://github.com/simp/pupmod-simp-rsync.git - selinux_core: - repo: https://github.com/simp/pupmod-puppetlabs-selinux_core.git - puppet_version: ">= 6.0.0" + selinux_core: https://github.com/simp/pupmod-puppetlabs-selinux_core.git stdlib: https://github.com/simp/puppetlabs-stdlib.git simp_options: https://github.com/simp/pupmod-simp-simp_options.git simplib: https://github.com/simp/pupmod-simp-simplib.git diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b058a69..6b7c167 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -362,3 +362,9 @@ pup6.pe-oel-fips: <<: *with_SIMP_ACCEPTANCE_MATRIX_LEVEL_3 script: - 'BEAKER_fips=yes bundle exec rake beaker:suites[default,oel]' + +pup7.x: + <<: *pup_7_x + <<: *acceptance_base + script: + - 'bundle exec rake beaker:suites[default,default]' diff --git a/CHANGELOG b/CHANGELOG index ddf52a8..e0b78da 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,7 @@ +* Wed Jun 30 2021 Trevor Vaughan - 0.7.0 +- Fixed a bug in the Augeas template +- Adjusted the tests to effect change on a switch to/from NetworkManager + * Wed Jun 16 2021 Chris Tessmer - 0.7.0 - Removed support for Puppet 5 - Ensured support for Puppet 7 in requirements and stdlib diff --git a/spec/acceptance/suites/default/00_default_spec.rb b/spec/acceptance/suites/default/00_default_spec.rb index 9ceaa2e..d35d202 100644 --- a/spec/acceptance/suites/default/00_default_spec.rb +++ b/spec/acceptance/suites/default/00_default_spec.rb @@ -22,7 +22,7 @@ let(:manifest) do <<~EOF class { 'resolv': - servers => #{servers}, + servers => #{servers.reverse}, search => ['simp.beaker', 'foo.bar', 'bar.baz'], use_nmcli => false } @@ -40,9 +40,9 @@ class { 'resolv': it 'should have a properly filled /etc/resolv.conf' do expected_content = <<~EXPECTED search simp.beaker foo.bar bar.baz - nameserver 8.8.8.8 - nameserver 8.8.4.4 nameserver 1.1.1.1 + nameserver 8.8.4.4 + nameserver 8.8.8.8 options attempts:2 ndots:1 rotate timeout:2 EXPECTED @@ -216,7 +216,7 @@ class { 'resolv': let(:manifest) do <<~EOF class { 'resolv': - servers => #{servers} + servers => #{servers.reverse} } EOF end @@ -233,9 +233,9 @@ class { 'resolv': expected_content = <<~EXPECTED # Generated by NetworkManager search simp.beaker - nameserver 8.8.8.8 - nameserver 8.8.4.4 nameserver 1.1.1.1 + nameserver 8.8.4.4 + nameserver 8.8.8.8 options attempts:2 ndots:1 rotate timeout:2 EXPECTED diff --git a/spec/classes/init_spec.rb b/spec/classes/init_spec.rb index ef07048..c22b253 100644 --- a/spec/classes/init_spec.rb +++ b/spec/classes/init_spec.rb @@ -90,8 +90,8 @@ <<~EXPECTED rm #comment rm nameserver[.!="1.2.3.4" and .!="5.6.7.8"] - set nameserver[.="1.2.3.4"] 1.2.3.4 - set nameserver[.="5.6.7.8"] 5.6.7.8 + set nameserver[1] 1.2.3.4 + set nameserver[2] 5.6.7.8 rm search/domain[.!="example.com"] set search/domain[.="example.com"] example.com rm options/debug @@ -136,8 +136,8 @@ <<~EXPECTED rm #comment rm nameserver[.!="1.2.3.4" and .!="5.6.7.8"] - set nameserver[.="1.2.3.4"] 1.2.3.4 - set nameserver[.="5.6.7.8"] 5.6.7.8 + set nameserver[1] 1.2.3.4 + set nameserver[2] 5.6.7.8 rm search/domain[.!="foo.bar" and .!="test.net"] set search/domain[.="foo.bar"] foo.bar set search/domain[.="test.net"] test.net diff --git a/spec/spec_helper_acceptance.rb b/spec/spec_helper_acceptance.rb index cae5a4a..c7e7075 100644 --- a/spec/spec_helper_acceptance.rb +++ b/spec/spec_helper_acceptance.rb @@ -20,6 +20,10 @@ # ensure that environment OS is ready on each host fix_errata_on hosts + # Detect cases in which no examples are executed (e.g., nodeset does not + # have hosts with required roles) + c.fail_if_no_examples = true + # Readable test descriptions c.formatter = :documentation diff --git a/templates/etc/resolv.conf.epp b/templates/etc/resolv.conf.epp index f013063..8a7e35d 100644 --- a/templates/etc/resolv.conf.epp +++ b/templates/etc/resolv.conf.epp @@ -13,8 +13,8 @@ rm nameserver <% else { -%> <% unless empty($nameservers) { -%> rm nameserver[.!="<%= $nameservers.join('" and .!="') %>"] -<% $nameservers.each |$nameserver| { -%> -set nameserver[.="<%= $nameserver %>"] <%= $nameserver %> +<% $nameservers.each |$i, $nameserver| { -%> +set nameserver[<%= $i + 1 %>] <%= $nameserver %> <% } -%> <% } -%> <% } -%>