os-autoinst-distri-rocky/tests/server_firewall_default_postinstall.pm
Adam Williamson cf543adf72 add a server default firewall test
Summary:
The test here is a bit ugly, but it should work. Better ideas
welcome =)

Test Plan:
Run the test, check it works (and maybe hack it up
a bit and check it fails properly too, it worked first time for
me which is always suspicious)

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D870
2016-05-31 14:24:34 -07:00

30 lines
1.1 KiB
Perl

use base "installedtest";
use strict;
use testapi;
sub run {
my $self=shift;
if (not( check_screen "root_console", 0)) {
$self->root_console(tty=>3);
}
# this only succeeds if the firewall is running
assert_script_run 'firewall-cmd --state';
# we need to check that exactly these three services and no others
# are allowed...but the displayed order is arbitrary.
validate_script_output 'firewall-cmd --list-services', sub { m/^(cockpit dhcpv6-client ssh|cockpit ssh dhcpv6-client|dhcpv6-client cockpit ssh|dhcpv6-client ssh cockpit|ssh cockpit dhcpv6-client|ssh dhcpv6-client cockpit)$/ };
validate_script_output 'firewall-cmd --list-ports', sub { m/^$/ };
validate_script_output 'firewall-cmd --list-protocols', sub { m/^$/ };
}
sub test_flags {
# without anything - rollback to 'lastgood' snapshot if failed
# 'fatal' - whole test suite is in danger if this fails
# 'milestone' - after this test succeeds, update 'lastgood'
# 'important' - if this fails, set the overall state to 'fail'
return { fatal => 1 };
}
1;
# vim: set sw=4 et: