From: garciadeblas Date: Fri, 24 Jun 2022 10:39:33 +0000 (+0200) Subject: Move variables from resources to testsuite for SA tests X-Git-Tag: v12.0.2~5 X-Git-Url: https://osm.etsi.org/gitweb/?a=commitdiff_plain;h=refs%2Fchanges%2F36%2F12436%2F1;p=osm%2Ftests.git Move variables from resources to testsuite for SA tests Change-Id: Id619d50b437ec70e37b3657eb2479f0559989771 Signed-off-by: garciadeblas --- diff --git a/robot-systest/resources/sa_01-vnf_with_vim_metrics_data.py b/robot-systest/resources/sa_01-vnf_with_vim_metrics_data.py index d682965..6d63b55 100644 --- a/robot-systest/resources/sa_01-vnf_with_vim_metrics_data.py +++ b/robot-systest/resources/sa_01-vnf_with_vim_metrics_data.py @@ -17,23 +17,3 @@ from common_helpers import get_prometheus_info # Prometheus host and port (prometheus_host, prometheus_port) = get_prometheus_info() - -# Prometheus polling interval and retries -prometheus_poll_retries = '15 times' -prometheus_poll_timeout = '1 minute' -# Prometheus metrics to retrieve -metric_1_name = 'osm_cpu_utilization' -metric_2_name = 'osm_average_memory_utilization' -# Get ${HOME} from local machine -home = str(Path.home()) -# NS and VNF descriptor package folder -vnfd_pkg = 'hackfest_basic_metrics_vnf' -nsd_pkg = 'hackfest_basic_metrics_ns' -# NS and VNF descriptor id -vnfd_name = 'hackfest_basic_metrics-vnf' -nsd_name = 'hackfest_basic-ns-metrics' -# NS instance name -ns_name = 'sa_01-vnf_with_vim_metrics_test' -# SSH keys to be used -publickey = home + '/.ssh/id_rsa.pub' -privatekey = home + '/.ssh/id_rsa' diff --git a/robot-systest/resources/sa_02-vnf_with_vim_metrics_and_autoscaling_data.py b/robot-systest/resources/sa_02-vnf_with_vim_metrics_and_autoscaling_data.py index 1824990..6d63b55 100644 --- a/robot-systest/resources/sa_02-vnf_with_vim_metrics_and_autoscaling_data.py +++ b/robot-systest/resources/sa_02-vnf_with_vim_metrics_and_autoscaling_data.py @@ -17,22 +17,3 @@ from common_helpers import get_prometheus_info # Prometheus host and port (prometheus_host, prometheus_port) = get_prometheus_info() - -# Prometheus polling interval and retries -prometheus_poll_retries = '15 times' -prometheus_poll_timeout = '1 minute' -# Prometheus metric -metric_name = 'osm_cpu_utilization' -# Get ${HOME} from local machine -home = str(Path.home()) -# NS and VNF descriptor package folder -vnfd_pkg = 'hackfest_basic_metrics_vnf' -nsd_pkg = 'hackfest_basic_metrics_ns' -# NS and VNF descriptor id -vnfd_name = 'hackfest_basic_metrics-vnf' -nsd_name = 'hackfest_basic-ns-metrics' -# NS instance name -ns_name = 'sa_02' -# SSH keys to be used -publickey = home + '/.ssh/id_rsa.pub' -privatekey = home + '/.ssh/id_rsa' diff --git a/robot-systest/resources/sa_07-alarms_from_sa-related_vnfs_data.py b/robot-systest/resources/sa_07-alarms_from_sa-related_vnfs_data.py index 0a52667..6d63b55 100644 --- a/robot-systest/resources/sa_07-alarms_from_sa-related_vnfs_data.py +++ b/robot-systest/resources/sa_07-alarms_from_sa-related_vnfs_data.py @@ -17,37 +17,3 @@ from common_helpers import get_prometheus_info # Prometheus host and port (prometheus_host, prometheus_port) = get_prometheus_info() - -# Prometheus polling interval and retries -prometheus_poll_retries = '15 times' -prometheus_poll_timeout = '1 minute' -# Webhook Service NS and VNF descriptor package folder -ws_vnfd_pkg = 'hackfest_basic_vnf' -ws_nsd_pkg = 'hackfest_basic_ns' -# Webhook Service NS and VNF descriptor package id -ws_vnfd_name = 'hackfest_basic-vnf' -ws_nsd_name = 'hackfest_basic-ns' -# Webhook Service NS instance name -ws_ns_name = 'sa_07-webhook_service_test' -# Webhook Service port to receive alarms -ws_port = 5212 - -# Get ${HOME} from local machine -home = str(Path.home()) -# Prometheus metric for VNF alarm -metric_name = 'osm_cpu_utilization' -# NS and VNF descriptor package folder -vnfd_pkg = 'cirros_alarm_vnf' -nsd_pkg = 'cirros_alarm_ns' -# VNF descriptor file name -vnfd_file = 'cirros_alarm_vnfd.yaml' -# VNF descriptor package location after env substitution -new_vnfd_pkg = 'new_cirros_alarm_vnf' -# NS and VNF descriptor id -vnfd_name = 'cirros_alarm-vnf' -nsd_name = 'cirros_alarm-ns' -# NS instance name -ns_name = 'sa_07-alarm_test' -# SSH keys to be used -publickey = home + '/.ssh/id_rsa.pub' -privatekey = home + '/.ssh/id_rsa' diff --git a/robot-systest/resources/sa_08-vnf_with_vnf_indicators_snmp_data.py b/robot-systest/resources/sa_08-vnf_with_vnf_indicators_snmp_data.py index 36dabdb..6d63b55 100644 --- a/robot-systest/resources/sa_08-vnf_with_vnf_indicators_snmp_data.py +++ b/robot-systest/resources/sa_08-vnf_with_vnf_indicators_snmp_data.py @@ -17,17 +17,3 @@ from common_helpers import get_prometheus_info # Prometheus host and port (prometheus_host, prometheus_port) = get_prometheus_info() - -# Prometheus metrics to retrieve -metric_1_name = 'ifInOctets' -metric_1_filter = 'ifIndex=1' -metric_2_name = 'ifMtu' -metric_2_filter = 'ifIndex=2' -# NS and VNF descriptor package folder -vnfd_pkg = 'snmp_ee_vnf' -nsd_pkg = 'snmp_ee_ns' -# NS and VNF descriptor id -vnfd_name = 'snmp_ee-vnf' -nsd_name = 'snmp_ee-ns' -# NS instance name -ns_name = 'sa_08-vnf_with_vnf_indicators_snmp_test' diff --git a/robot-systest/testsuite/sa_01-vnf_with_vim_metrics.robot b/robot-systest/testsuite/sa_01-vnf_with_vim_metrics.robot index f2e6c1c..df04d4e 100644 --- a/robot-systest/testsuite/sa_01-vnf_with_vim_metrics.robot +++ b/robot-systest/testsuite/sa_01-vnf_with_vim_metrics.robot @@ -31,8 +31,30 @@ Suite Teardown Run Keyword And Ignore Error Suite Cleanup *** Variables *** +# NS instantiation parameters ${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] } +# NS and VNF descriptor package folder and ids +${vnfd_pkg} hackfest_basic_metrics_vnf +${vnfd_name} hackfest_basic_metrics-vnf +${nsd_pkg} hackfest_basic_metrics_ns +${nsd_name} hackfest_basic-ns-metrics + +# NS instance name +${ns_name} sa_01-vnf_with_vim_metrics_test + +# SSH keys and username to be used +${publickey} %{HOME}/.ssh/id_rsa.pub +${privatekey} %{HOME}/.ssh/id_rsa + +# Prometheus polling interval and retries +${prometheus_poll_retries} 15 times +${prometheus_poll_timeout} 1 minute + +# Prometheus metrics to retrieve +${metric_1_name} osm_cpu_utilization +${metric_2_name} osm_average_memory_utilization + *** Test Cases *** Create VNF Descriptor diff --git a/robot-systest/testsuite/sa_02-vnf_with_vim_metrics_and_autoscaling.robot b/robot-systest/testsuite/sa_02-vnf_with_vim_metrics_and_autoscaling.robot index fb6616f..74b56dd 100644 --- a/robot-systest/testsuite/sa_02-vnf_with_vim_metrics_and_autoscaling.robot +++ b/robot-systest/testsuite/sa_02-vnf_with_vim_metrics_and_autoscaling.robot @@ -32,13 +32,37 @@ Suite Teardown Run Keyword And Ignore Error Suite Cleanup *** Variables *** +# NS instantiation parameters +${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] } + +# NS and VNF descriptor package folder and ids +${vnfd_pkg} hackfest_basic_metrics_vnf +${vnfd_name} hackfest_basic_metrics-vnf +${nsd_pkg} hackfest_basic_metrics_ns +${nsd_name} hackfest_basic-ns-metrics + +# NS instance name and id ${ns_id} ${EMPTY} +${ns_name} sa_02 + +# SSH keys and username to be used +${publickey} %{HOME}/.ssh/id_rsa.pub +${privatekey} %{HOME}/.ssh/id_rsa ${username} ubuntu ${password} osm4u + +# Prometheus polling interval and retries +${prometheus_poll_retries} 15 times +${prometheus_poll_timeout} 1 minute + +# Prometheus metrics to retrieve +${metric_name} osm_cpu_utilization + +# VNF Variables ${vnf_member_index} vnf ${vnf_ip_addr} ${EMPTY} ${vnf_id} ${EMPTY} -${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] } + ${success_return_code} 0 diff --git a/robot-systest/testsuite/sa_07-alarms_from_sa-related_vnfs.robot b/robot-systest/testsuite/sa_07-alarms_from_sa-related_vnfs.robot index 917f73d..465c300 100644 --- a/robot-systest/testsuite/sa_07-alarms_from_sa-related_vnfs.robot +++ b/robot-systest/testsuite/sa_07-alarms_from_sa-related_vnfs.robot @@ -32,16 +32,52 @@ Suite Teardown Run Keyword And Ignore Error Suite Cleanup *** Variables *** +# NS instantiation parameters +${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] } + +# NS and VNF descriptor package folder and ids +${vnfd_pkg} cirros_alarm_vnf +${vnfd_name} cirros_alarm-vnf +${vnfd_file} cirros_alarm_vnfd.yaml +${new_vnfd_pkg} new_cirros_alarm_vnf +${nsd_pkg} cirros_alarm_ns +${nsd_name} cirros_alarm-ns + +# NS instance name and id ${ns_id} ${EMPTY} +${ns_name} sa_07-alarm_test + +# Webhook NS and VNF descriptor package folder and ids +${ws_vnfd_pkg} hackfest_basic_vnf +${ws_nsd_pkg} hackfest_basic_ns +${ws_vnfd_name} hackfest_basic-vnf +${ws_nsd_name} hackfest_basic-ns + +# Webhook NS instance name and id ${ws_ns_id} ${EMPTY} +${ws_ns_name} sa_07-webhook_service_test + +# Webhook NS Variables +${ws_vnf_member_index} vnf +${ws_vnf_ip_addr} ${EMPTY} +${ws_log_file} webhook.log +${ws_port} 5212 +${ws_alarm_msg} notify_alarm + +# SSH keys and username to be used +${publickey} %{HOME}/.ssh/id_rsa.pub +${privatekey} %{HOME}/.ssh/id_rsa ${username} ubuntu ${password} ${EMPTY} -${vnf_member_index} vnf -${ws_vnf_ip_addr} ${EMPTY} + +# Prometheus polling interval and retries +${prometheus_poll_retries} 15 times +${prometheus_poll_timeout} 1 minute + +# Prometheus metrics to retrieve +${metric_name} osm_cpu_utilization + ${success_return_code} 0 -${alarm_msg} notify_alarm -${ws_log_file} webhook.log -${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] } *** Test Cases *** @@ -63,7 +99,7 @@ Instantiate Webhook Service Network Service Get Webhook Service VNF IP Address - ${ip_addr}= Get Vnf Management Ip Address ${ws_ns_id} ${vnf_member_index} + ${ip_addr}= Get Vnf Management Ip Address ${ws_ns_id} ${ws_vnf_member_index} log ${ip_addr} Set Suite Variable ${ws_vnf_ip_addr} ${ip_addr} @@ -107,7 +143,7 @@ Get Alarm Metric Check Alarms Were Received - Wait Until Keyword Succeeds 6 times 40 seconds Execute Remote Command Check Rc Return Output ${ws_vnf_ip_addr} ${username} ${password} ${privatekey} cat '${ws_log_file}' | grep '${alarm_msg}' | grep '${ns_name}' + Wait Until Keyword Succeeds 6 times 40 seconds Execute Remote Command Check Rc Return Output ${ws_vnf_ip_addr} ${username} ${password} ${privatekey} cat '${ws_log_file}' | grep '${ws_alarm_msg}' | grep '${ns_name}' Delete NS Instance diff --git a/robot-systest/testsuite/sa_08-vnf_with_vnf_indicators_snmp.robot b/robot-systest/testsuite/sa_08-vnf_with_vnf_indicators_snmp.robot index 999e614..5fde6ba 100644 --- a/robot-systest/testsuite/sa_08-vnf_with_vnf_indicators_snmp.robot +++ b/robot-systest/testsuite/sa_08-vnf_with_vnf_indicators_snmp.robot @@ -31,8 +31,28 @@ Suite Teardown Run Keyword And Ignore Error Suite Cleanup *** Variables *** +# NS instantiation parameters ${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] } +# NS and VNF descriptor package folder and ids +${vnfd_pkg} snmp_ee_vnf +${vnfd_name} snmp_ee-vnf +${nsd_pkg} snmp_ee_ns +${nsd_name} snmp_ee-ns + +# NS instance name +${ns_name} sa_08-vnf_with_vnf_indicators_snmp_test + +# Prometheus polling interval and retries +${prometheus_poll_retries} 10 times +${prometheus_poll_timeout} 1 minute + +# Prometheus metrics to retrieve +${metric_1_name} ifInOctets +${metric_1_filter} ifIndex=1 +${metric_2_name} ifMtu +${metric_2_filter} ifIndex=2 + *** Test Cases *** Create VNF Descriptor @@ -57,9 +77,9 @@ Get VNF SNMP Metrics Variable Should Exist ${prometheus_port} msg=Prometheus port is not available Variable Should Exist ${metric_1_name} msg=Prometheus first metric name is not available Variable Should Exist ${metric_2_name} msg=Prometheus second metric name is not available - ${metric_1_value}= Wait Until Keyword Succeeds 6 times 1 minutes Get Metric ${prometheus_host} ${prometheus_port} ${metric_1_name} ${metric_1_filter} + ${metric_1_value}= Wait Until Keyword Succeeds ${prometheus_poll_retries} ${prometheus_poll_timeout} Get Metric ${prometheus_host} ${prometheus_port} ${metric_1_name} ${metric_1_filter} Run Keyword If ${metric_1_value} <= 0 Fail msg=The metric '${metric_1_name}' value is '${metric_1_value}' - ${metric_2_value}= Wait Until Keyword Succeeds 6 times 1 minutes Get Metric ${prometheus_host} ${prometheus_port} ${metric_2_name} ${metric_2_filter} + ${metric_2_value}= Wait Until Keyword Succeeds ${prometheus_poll_retries} ${prometheus_poll_timeout} Get Metric ${prometheus_host} ${prometheus_port} ${metric_2_name} ${metric_2_filter} Run Keyword If ${metric_2_value} <= 0 Fail msg=The metric '${metric_2_name}' value is '${metric_2_value}'