]> review.fuel-infra Code Review - puppet-modules/puppetlabs-firewall.git/commitdiff
package "iptables" has been replaced by "iptables-nft" on EL9
authorKjetil Torgrim Homme <kjetil.homme@redpill-linpro.com>
Sun, 6 Nov 2022 16:00:40 +0000 (17:00 +0100)
committerKjetil Torgrim Homme <kjetil.homme@redpill-linpro.com>
Tue, 6 Dec 2022 10:04:13 +0000 (11:04 +0100)
There are some pointers given by dnf about "iptables", but these confuse
Puppet into aborting with the error message:

```console
Error: /Stage[main]/Firewall::Linux/Package[iptables]: Could not evaluate: no implicit conversion of Array into Hash
```

Fedora had a similar patch in commit 486e4b5779f5069e which I think
fixed the bug https://tickets.puppetlabs.com/browse/MODULES-11147 but
the same issue rared its head here on AlmaLinux 9.0.

The RPM for iptables-legacy states:

> This package contains the legacy tools which are obsoleted by
> nft-variants in iptables-nft package for backwards compatibility reasons.
> If you need to set up firewalls and/or IP masquerading, you should not install
> this package but either nftables or iptables-nft instead.

manifests/params.pp

index bbd0a56421f0b187015e2d6f65f77f936047fa99..8add42f12e94c5b223035c1018f7b9de13c4a0f3 100644 (file)
@@ -33,7 +33,7 @@ class firewall::params {
             $service_name = 'nftables'
             $service_name_v6 = 'ip6tables'
             $package_name = ['iptables-services', 'nftables', 'iptables-nft-services']
-            $iptables_name = 'iptables'
+            $iptables_name = 'iptables-nft'
             $sysconfig_manage = false
             $firewalld_manage = false
           } elsif versioncmp($::operatingsystemrelease, '8.0') >= 0 {