Skip to content

Commit

Permalink
Test for firewalld container in ALP product
Browse files Browse the repository at this point in the history
  • Loading branch information
ilmanzo committed Nov 15, 2023
1 parent 51247a8 commit 4c5763d
Show file tree
Hide file tree
Showing 3 changed files with 96 additions and 0 deletions.
14 changes: 14 additions & 0 deletions schedule/alp/firewalld_container.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
name: Firewalld in a Container
description: >
Install and test firewalld container
conditional_schedule:
firewalld_container:
HOSTNAME:
'client':
- microos/workloads/firewalld-container/firewalld_client
'server':
- microos/workloads/firewalld-container/firewalld_server
schedule:
- microos/disk_boot
- '{{firewalld_container}}'
34 changes: 34 additions & 0 deletions tests/microos/workloads/firewalld-container/firewalld_client.pm
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# SUSE"s openQA tests
#
# Copyright 2023 SUSE LLC
# SPDX-License-Identifier: FSFAP
#
# Package: podman firewalld-container
# Summary: install and verify firewalld container.
# Maintainer: QE Core <[email protected]>

use base "consoletest";
use warnings;
use strict;
use testapi;
use serial_terminal 'select_serial_terminal';
use lockapi;

sub run {
my ($self) = @_;
select_serial_terminal;
record_info("1 client ip a", script_output("ip a"));
mutex_wait 'barrier_setup_done';
#setup MM networking
barrier_wait 'FIREWALLD_SERVER_READY';
record_info("2 client ip a", script_output("ip a"));
# server port should be reachable
# die unless server_port_reachable();
# barrier_wait 'FIREWALLD_SERVER_PORT_CLOSED';
# # server port should not be reachable
# die if server_port_reachable();
# barrier_wait 'FIREWALLD_SERVER_FINISHED';
}

1;

48 changes: 48 additions & 0 deletions tests/microos/workloads/firewalld-container/firewalld_server.pm
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# SUSE"s openQA tests
#
# Copyright 2023 SUSE LLC
# SPDX-License-Identifier: FSFAP
#
# Package: podman firewalld-container
# Summary: install and verify firewalld container.
# Maintainer: QE Core <[email protected]>

use base "consoletest";
use warnings;
use strict;
use testapi;
use serial_terminal 'select_serial_terminal';
use lockapi;

sub run {
my ($self) = @_;
select_serial_terminal;
barrier_create('FIREWALLD_SERVER_READY', 2);
mutex_create 'barrier_setup_done';

my $hostname = get_var('HOSTNAME');
record_info("1 server ip a", script_output("ip a"));
# setup MM networking
# install software
barrier_wait 'FIREWALLD_SERVER_READY';
# close port on firewall, client will test port
# barrier_wait 'FIREWALLD_SERVER_PORT_CLOSED';
# end operations, cleanup
# barrier_wait 'FIREWALLD_SERVER_FINISHED';
record_info("2 server ip a", script_output("ip a"));
}

sub post_fail_hook {
barrier_destroy('FIREWALLD_SERVER_READY');
select_serial_terminal;
}

sub post_run_hook {
barrier_destroy('FIREWALLD_SERVER_READY');
select_serial_terminal;
}



1;

0 comments on commit 4c5763d

Please sign in to comment.