integ/config/puppet-modules
Steven Webster 5d51ff6dd7 Enable puppet-firewall parsing of --random-fully rules
A problem may occur if puppet attempts to inject a firewall rule
while the underlying iptables/ip6tables has existing rules which
use the --random-fully flag in the NAT table.

The issue occurs because puppet-firewall first makes a call to
iptables-save/ip6tables-save to parse the existing rules
(to determine if the rule already exists).  If it finds a rule
with --random-fully, it will immediately bail out.

The current version(s) of puppet-firewall in StarlingX are old
enough that they don't have parsing logic for the --random-fully
flag that was initially supported in iptables version 1.6.2+.

Now that StarlingX uses iptables 1.8.4, we must account for the
possibility that various components (ie. kubernetes) will make
use of --random-fully rules.

This feature has been implemented upstream in the following commits:

https://github.com/puppetlabs/puppetlabs-firewall/commits/

9a4bc6a81cf0cd4a56ba458fadac830a2c4df529
0ea2b74c0b4a451a37bae8c2ff105b72481ab485

The above commits have been ported back to:

CentOS: puppet-firewall-1.8.2
Debian: puppetlabs-firewall-1.12.0

Since StarlingX does not currently build it's own version
of puppet-firewall in either CentOS or Debian, this commit
also contains the infrastructure to do so.

Testing:

Note: Since the issue is intermittent on unlock, the functional
tests were performed with a custom runtime manifest that installed
a dummy iptables/ip6tables rule when an interface was modified.
At this time, it was guaranteed that there were rules with
the --random-fully flag present.

CentOS:

Package build: PASS
Present in iso: PASS
IPv4 functional test (iptables): PASS
IPv6 functional test (ip6tables): PASS

Debian:

Package build: PASS
Present in iso: PASS
IPv4 functional test (iptables): PASS
IPv6 functional test (ip6tables): PASS

Closes-Bug: #1971900

Signed-off-by: Steven Webster <steven.webster@windriver.com>
Change-Id: I7dbb9e1b99d95df0aa5a7db7aa22c3c314253788
2022-05-10 11:17:08 -04:00
..
openstack Debian: Replace hiera function and fix openstacklib path 2022-04-25 12:40:41 -03:00
puppet-boolean-1.0.2/centos Add auto-versioning to starlingx/integ packages 2020-06-24 09:48:28 +08:00
puppet-boolean-2.0.2/debian meta_data.yaml: add sha256sum checksum 2022-03-03 14:30:40 +08:00
puppet-create_resources/centos Add auto-versioning to starlingx/integ packages 2020-06-24 09:48:28 +08:00
puppet-dnsmasq meta_data.yaml: add sha256sum checksum 2022-03-03 14:30:40 +08:00
puppet-drbd-0.3.1/centos Fix ceph-mon resize on AIO-DX 2022-02-17 07:45:13 -05:00
puppet-drbd-0.5.2/debian meta_data.yaml: add sha256sum checksum 2022-03-03 14:30:40 +08:00
puppet-etcd-1.12.3/debian Address unmet dependency in puppet-etcd-1.12.3 2022-03-17 10:47:27 -03:00
puppet-filemapper/centos Add auto-versioning to starlingx/integ packages 2020-06-24 09:48:28 +08:00
puppet-firewall-1.8.2/centos Enable puppet-firewall parsing of --random-fully rules 2022-05-10 11:17:08 -04:00
puppet-haproxy-1.5.0/centos Add auto-versioning to starlingx/integ packages 2020-06-24 09:48:28 +08:00
puppet-ldap meta_data.yaml: add sha256sum checksum 2022-03-03 14:30:40 +08:00
puppet-lvm/centos Fix resize of filesystems in puppet logical_volume 2021-05-22 18:41:22 +03:00
puppet-lvm-1.4.0/debian Debian: Fix Ruby csv.to_a.map parsing behavior 2022-04-19 15:21:40 -04:00
puppet-network Set directory path variable names unique for Debian on puppet-network 2022-03-31 16:13:27 -03:00
puppet-nslcd meta_data.yaml: add sha256sum checksum 2022-03-03 14:30:40 +08:00
puppet-postgresql-4.8.0/centos Make /usr readonly to support OSTree 2022-04-29 11:19:37 -04:00
puppet-puppi meta_data.yaml: add sha256sum checksum 2022-03-03 14:30:40 +08:00
puppet-rabbitmq-5.5.0/centos Add auto-versioning to starlingx/integ packages 2020-06-24 09:48:28 +08:00
puppet-rabbitmq-8.5.0/debian Merge "Address unmet dependencies in puppet-rabbitmq-8.5.0" 2022-03-21 22:26:25 +00:00
puppet-staging meta_data.yaml: add sha256sum checksum 2022-03-03 14:30:40 +08:00
puppet-stdlib-4.12.0/centos Add auto-versioning to starlingx/integ packages 2020-06-24 09:48:28 +08:00
puppetlabs-firewall-1.12.0/debian Enable puppet-firewall parsing of --random-fully rules 2022-05-10 11:17:08 -04:00
puppetlabs-haproxy-2.1.0/debian meta_data.yaml: add sha256sum checksum 2022-03-03 14:30:40 +08:00
puppetlabs-postgresql-6.7.0/debian meta_data.yaml: add sha256sum checksum 2022-03-03 14:30:40 +08:00
puppetlabs-stdlib-5.0.0/debian meta_data.yaml: add sha256sum checksum 2022-03-03 14:30:40 +08:00