justification
Adds tests according to the CI wiki specifically the standard test interface in the spec.
The playbook includes Tier1 level test cases that have been tested in the following contexts and
is passing reliably: Classic. Test logs are stored in the artifacts directory.
The following steps are used to execute the tests using the standard test interface:
Test enveronment
Make sure you have installed packages from the spec
```
ansible-2.4.1.0-2.fc28.noarch
python2-dnf-2.7.5-1.fc28.noarch
libselinux-python-2.7-2.fc28.x86_64
standard-test-roles-2.5-1.fc28.noarch
Run tests for Classic
```
Snip of the example test run for Classic tests:
```
test_ipset_add_bitmap_ip (__main__.IpsetTests) ... 192.168.11.12 is in set testnet.
192.168.11.13 is in set testnet.
192.168.11.14 is in set testnet.
192.168.11.15 is in set testnet.
ok
test_ipset_bitmap_ip_netfilter (__main__.IpsetTests) ... 192.168.225.32 is in set testnetiperf.
192.168.225.33 is in set testnetiperf.
Connecting to host 192.168.225.32, port 55555
[ 5] local 192.168.225.32 port 54652 connected to 192.168.225.32 port 55555
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 7.79 GBytes 66.9 Gbits/sec 0 895 KBytes
[ 5] 1.00-2.00 sec 7.99 GBytes 68.6 Gbits/sec 0 895 KBytes
[ 5] 2.00-3.00 sec 7.99 GBytes 68.6 Gbits/sec 0 1.75 MBytes
[ 5] 3.00-4.00 sec 7.79 GBytes 66.9 Gbits/sec 0 1.75 MBytes
[ 5] 4.00-5.00 sec 8.03 GBytes 69.0 Gbits/sec 0 1.75 MBytes
[ 5] 5.00-6.00 sec 7.94 GBytes 68.2 Gbits/sec 0 2.25 MBytes
[ 5] 6.00-7.00 sec 7.88 GBytes 67.7 Gbits/sec 0 2.25 MBytes
[ 5] 7.00-8.00 sec 8.06 GBytes 69.2 Gbits/sec 0 2.25 MBytes
[ 5] 8.00-9.00 sec 7.89 GBytes 67.8 Gbits/sec 0 2.25 MBytes
[ 5] 9.00-10.00 sec 7.85 GBytes 67.4 Gbits/sec 0 2.25 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 79.2 GBytes 68.0 Gbits/sec 0 sender
[ 5] 0.00-10.04 sec 79.2 GBytes 67.8 Gbits/sec receiver
iperf Done.
iperf3: error - unable to connect to server: Connection timed out
ok
test_ipset_delete_bitmap_ip (__main__.IpsetTests) ... 192.168.11.12 is in set testnet.
192.168.11.13 is in set testnet.
192.168.11.12 is NOT in set testnet.
ok
test_ipset_hash_bitmap_ipport (__main__.IpsetTests) ... 192.168.1.1,udp:53 is in set testipport.
192.168.1.1,tcp:5555 is in set testipport.
192.168.1.1,tcp:5555 is NOT in set testipport.
ok
test_ipset_hash_bitmap_ipportip (__main__.IpsetTests) ... 192.168.1.1,tcp:80,10.0.0.1 is in set testipportip.
192.168.1.1,tcp:80,10.0.0.1 is in set testipportip.
192.168.1.1,tcp:80,10.0.0.1 is NOT in set testipportip.
ok
192.168.1.1,tcp:80,10.0.0.1 is NOT in set testipportip.
ok
test_ipset_hash_bitmap_mac (__main__.IpsetTests) ... 02:01:02:03:04:09 is in set testmac.
02:01:02:03:04:09 is NOT in set testmac.
ok
test_ipset_hash_bitmap_netiface (__main__.IpsetTests) ... 192.168.0.0/24,veth-test is in set testnetiface.
192.167.0.0/24,veth-peer is in set testnetiface.
192.168.0.0/24,veth-test is NOT in set testnetiface.
ok
----------------------------------------------------------------------
Ran 7 tests in 15.545s
OK
:: [ 16:37:57 ] :: [ PASS ] :: Command '/usr/bin/python3 /usr/bin/ipset-tests.py' (Expected 0, got 0)
:: [ 16:37:57 ] :: [ PASS ] :: Command '/usr/bin/python3 /usr/bin/ipset-tests.py' (Expected 0, got 0)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Duration: 15s
:: Duration: 15s
:: Assertions: 1 good, 0 bad
:: Assertions: 1 good, 0 bad
:: RESULT: PASS
:: RESULT: PASS
```
- Suppress unnecessary stderr in command loop for resize and list
- Correction in comment test
- Support chroot buildroots (reported by Jan Engelhardt)
- Fix "configure" breakage due to pkg-config related changes
(reported by Jan Engelhardt)
- Support older pkg-config packages
- Add bash completion to the install routine (Mart Frauenlob)
- Fix misleading error message with comment extension
- Test added to check 0.0.0.0/0,iface to be matched in hash:net,iface type
- Fix link with libtool >= 2.4.4 (Olivier Blin)
This contains a systemd unit, and the logic to be able to save and
reload functionality on shutdown/startup.
This also adds a missing explicit dependency on the ipset-libs
subpackage in the base package. It is needed to cover the case where a
user would update one explicitly (e.g yum update ipset) as they need to
be kept in sync.
There is no existing version of Fedora which doesn't
have a recent enough kernel version now, so let's not
bother with a check which will always be true.