]> review.fuel-infra Code Review - puppet-modules/puppetlabs-firewall.git/commitdiff
Add support for Debian Unstable
authorMarkus Opolka <markus@martialblog.de>
Wed, 30 Oct 2019 21:18:59 +0000 (22:18 +0100)
committerMarkus Opolka <markus@martialblog.de>
Fri, 15 Nov 2019 10:07:15 +0000 (11:07 +0100)
 - Added operatingsystemrelease unstable with netfilter service and package
 - Extended rspec tests for Debian

lib/facter/iptables_persistent_version.rb
manifests/params.pp
spec/unit/classes/firewall_linux_debian_spec.rb

index 01290f16f835d8553be2d2de132054cdd10a1089..7e9ffd02ec76e2cc191db54fe3375f6e56f2f649 100644 (file)
@@ -6,7 +6,8 @@ Facter.add(:iptables_persistent_version) do
     os = Facter.value(:operatingsystem)
     os_release = Facter.value(:operatingsystemrelease)
     cmd = if (os == 'Debian' && (Puppet::Util::Package.versioncmp(os_release, '8.0') >= 0)) ||
-             (os == 'Ubuntu' && (Puppet::Util::Package.versioncmp(os_release, '14.10') >= 0))
+             (os == 'Ubuntu' && (Puppet::Util::Package.versioncmp(os_release, '14.10') >= 0)) ||
+             (os == 'Debian' && (Puppet::Util::Package.versioncmp(os_release, 'unstable') >= 0))
             "dpkg-query -Wf '${Version}' netfilter-persistent 2>/dev/null"
           else
             "dpkg-query -Wf '${Version}' iptables-persistent 2>/dev/null"
index 5e873c7a25440af6e2c5da472502dde56992caad..b687150694eecc130035ceff8a44407843834997 100644 (file)
@@ -47,7 +47,10 @@ class firewall::params {
       $service_name_v6 = undef
       case $::operatingsystem {
         'Debian': {
-          if versioncmp($::operatingsystemrelease, '8.0') >= 0 {
+          if versioncmp($::operatingsystemrelease, 'unstable') >= 0 {
+            $service_name = 'netfilter-persistent'
+            $package_name = 'netfilter-persistent'
+          } elsif versioncmp($::operatingsystemrelease, '8.0') >= 0 {
             $service_name = 'netfilter-persistent'
             $package_name = 'iptables-persistent'
           } else {
index a58e3c51ca370641e4303bfa7e093a3a3feed53e..38fc7eda04309825cb48db2f43fa4152a721d5d7 100644 (file)
@@ -80,4 +80,67 @@ describe 'firewall::linux::debian', type: :class do
       )
     }
   end
+
+  context 'with Debian 10' do
+    let(:facts) do
+      {
+        osfamily: 'Debian',
+        operatingsystem: 'Debian',
+        operatingsystemrelease: '10.0',
+      }
+    end
+
+    it {
+      is_expected.to contain_package('iptables-persistent').with(
+        ensure: 'present',
+      )
+    }
+    it {
+      is_expected.to contain_service('netfilter-persistent').with(
+        ensure: nil,
+        enable: 'true',
+        require: 'Package[iptables-persistent]',
+      )
+    }
+  end
+
+  context 'with Debian 10, enable => false' do
+    let(:facts) do
+      {
+        osfamily: 'Debian',
+        operatingsystem: 'Debian',
+        operatingsystemrelease: '10',
+      }
+    end
+    let(:params) { { enable: 'false' } }
+
+    it {
+      is_expected.to contain_service('netfilter-persistent').with(
+        enable: 'false',
+      )
+    }
+  end
+
+  context 'with Debian unstable' do
+    let(:facts) do
+      {
+        osfamily: 'Debian',
+        operatingsystem: 'Debian',
+        operatingsystemrelease: 'unstable',
+      }
+    end
+
+    it {
+      is_expected.to contain_package('netfilter-persistent').with(
+        ensure: 'present',
+      )
+    }
+    it {
+      is_expected.to contain_service('netfilter-persistent').with(
+        ensure: nil,
+        enable: 'true',
+        require: 'Package[netfilter-persistent]',
+      )
+    }
+  end
 end