X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=test%2Fauto-test%2FFTC800.sh;h=d1ee766d4320f8affafbbeb65d893913efbf278c;hb=refs%2Fchanges%2F89%2F10889%2F2;hp=6d25c29bf76443b81758c3ed264d61330e7c5585;hpb=8489de0f43f28c5cd62206b4e242c0308f9864b9;p=nonrtric.git diff --git a/test/auto-test/FTC800.sh b/test/auto-test/FTC800.sh index 6d25c29b..d1ee766d 100755 --- a/test/auto-test/FTC800.sh +++ b/test/auto-test/FTC800.sh @@ -1,7 +1,7 @@ #!/bin/bash # ============LICENSE_START=============================================== -# Copyright (C) 2020 Nordix Foundation. All rights reserved. +# Copyright (C) 2020-2023 Nordix Foundation. All rights reserved. # ======================================================================== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,180 +17,244 @@ # ============LICENSE_END================================================= # -TC_ONELINE_DESCR="Create 10000 policies in sequence using http/https and Agent REST/DMAAP with/without SDNC controller" +TC_ONELINE_DESCR="Create 10000 policies in sequence using http/https and a1pms REST with/without SDNC controller" -#App names to include in the test, space separated list -INCLUDED_IMAGES="CBS CONSUL CP CR MR PA RICSIM SDNC" +#App names to include in the test when running docker, space separated list +DOCKER_INCLUDED_IMAGES="CP CR MR A1PMS RICSIM SDNC NGW KUBEPROXY" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh +#App names to include in the test when running kubernetes, space separated list +KUBE_INCLUDED_IMAGES="CP CR MR A1PMS RICSIM SDNC KUBEPROXY NGW" +#Prestarted app (not started by script) to include in the test when running kubernetes, space separated list +KUBE_PRESTARTED_IMAGES="" + +#Ignore image in DOCKER_INCLUDED_IMAGES, KUBE_INCLUDED_IMAGES if +#the image is not configured in the supplied env_file +#Used for images not applicable to all supported profile +CONDITIONALLY_IGNORED_IMAGES="NGW" + +#Supported test environment profiles +SUPPORTED_PROFILES="ONAP-JAKARTA ONAP-KOHN ONAP-LONDON ORAN-F-RELEASE ORAN-G-RELEASE ORAN-H-RELEASE" +#Supported run modes +SUPPORTED_RUNMODES="DOCKER KUBE" + +. ../common/testcase_common.sh $@ + +setup_testenvironment #### TEST BEGIN #### -generate_uuid +sim_generate_policy_uuid #Local vars in test script ########################## # Number of policies in each sequence NUM_POLICIES=10000 -# Tested variants of REST/DMAAP/SDNC config +# Tested variants of SDNC config TESTED_VARIANTS="NOSDNC SDNC" -#Test agent and simulator protocol versions (others are http only) +#Test a1pms and simulator protocol versions (others are http only) TESTED_PROTOCOLS="HTTP HTTPS" + for __httpx in $TESTED_PROTOCOLS ; do for interface in $TESTED_VARIANTS ; do echo "#####################################################################" echo "#####################################################################" - echo "### Testing agent via $interface using $__httpx" + echo "### Testing a1pms via $interface using $__httpx" echo "#####################################################################" echo "#####################################################################" if [ $__httpx == "HTTPS" ]; then - # Path to callback receiver - CR_PATH="https://$CR_APP_NAME:$CR_EXTERNAL_SECURE_PORT/callbacks" use_cr_https use_simulator_https use_mr_https - use_agent_rest_https + use_a1pms_rest_https else - # Path to callback receiver - CR_PATH="http://$CR_APP_NAME:$CR_EXTERNAL_PORT/callbacks" use_cr_http use_simulator_http use_mr_http - use_agent_rest_http + use_a1pms_rest_http fi # Policy instance start id START_ID=1 - clean_containers + clean_environment + + start_kube_proxy start_ric_simulators ricsim_g1 1 OSC_2.1.0 start_ric_simulators ricsim_g2 1 STD_1.1.3 - if [ "$PMS_VERSION" == "V2" ]; then - start_ric_simulators ricsim_g3 1 STD_2.0.0 + start_ric_simulators ricsim_g3 1 STD_2.0.0 + + if [[ "$A1PMS_FEATURE_LEVEL" == *"NO-DMAAP"* ]]; then + : + else + start_mr fi - start_mr + start_cr 1 - start_cr + start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE - if [[ $interface == "SDNC" ]]; then - start_sdnc - prepare_consul_config SDNC ".consul_config.json" - else - prepare_consul_config NOSDNC ".consul_config.json" + if [ ! -z "$NRT_GATEWAY_APP_NAME" ]; then + start_gateway $SIM_GROUP/$NRT_GATEWAY_COMPOSE_DIR/$NRT_GATEWAY_CONFIG_FILE fi - start_consul_cbs + start_a1pms NORPOXY $SIM_GROUP/$A1PMS_COMPOSE_DIR/$A1PMS_CONFIG_FILE - consul_config_app ".consul_config.json" + set_a1pms_debug - start_control_panel + if [[ "$A1PMS_FEATURE_LEVEL" == *"NO-DMAAP"* ]]; then + : + else + mr_equal requests_submitted 0 + fi + + sim_put_policy_type 201 ricsim_g1_1 1 testdata/OSC/sim_1.json + sim_put_policy_type 201 ricsim_g3_1 STD_QOS2_0.1.0 testdata/STD2/sim_qos2.json - start_policy_agent - set_agent_debug + if [[ $interface == "SDNC" ]]; then + start_sdnc + controller_api_wait_for_status_ok 200 ricsim_g1_1 + prepare_a1pms_config SDNC ".a1pms_config.json" + else + prepare_a1pms_config NOSDNC ".a1pms_config.json" + fi - cr_equal received_callbacks 0 - mr_equal requests_submitted 0 + if [ $RUNMODE == "KUBE" ]; then + a1pms_load_config ".a1pms_config.json" + else + a1pms_api_put_configuration 200 ".a1pms_config.json" + fi + sleep_wait 120 "Let A1PMS cofiguration take effect" - api_get_status 200 + a1pms_api_get_status 200 sim_print ricsim_g1_1 interface sim_print ricsim_g2_1 interface + sim_print ricsim_g3_1 interface - sim_put_policy_type 201 ricsim_g1_1 1 testdata/OSC/sim_1.json - - if [ "$PMS_VERSION" == "V2" ]; then - api_equal json:policy-types 2 120 #Wait for the agent to refresh types from the simulators - else - api_equal json:policy_types 2 120 #Wait for the agent to refresh types from the simulators - fi + a1pms_equal json:policy-types 3 300 #Wait for the a1pms to refresh types from the simulators - api_put_service 201 "serv1" 3600 "$CR_PATH/1" + a1pms_api_put_service 201 "serv1" 3600 "$CR_SERVICE_APP_PATH_0/1" - if [ "$PMS_VERSION" == "V2" ]; then - notificationurl="http://localhost:80" - else - notificationurl="" - fi + notificationurl=$CR_SERVICE_APP_PATH_0"/test" - start_timer "Create polices in OSC via agent REST and $interface using "$__httpx - api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES - print_timer "Create polices in OSC via agent REST and $interface using "$__httpx + start_timer "Create polices in OSC via a1pms REST and $interface using "$__httpx + a1pms_api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES + print_timer "Create polices in OSC via a1pms REST and $interface using "$__httpx sim_equal ricsim_g1_1 num_instances $NUM_POLICIES START_ID=$(($START_ID+$NUM_POLICIES)) - start_timer "Create polices in STD via agent REST and $interface using "$__httpx - api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES - print_timer "Create polices in STD via agent REST and $interface using "$__httpx + start_timer "Create polices in STD via a1pms REST and $interface using "$__httpx + a1pms_api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES + print_timer "Create polices in STD via a1pms REST and $interface using "$__httpx sim_equal ricsim_g2_1 num_instances $NUM_POLICIES - if [ $__httpx == "HTTPS" ]; then - echo "Using secure ports towards dmaap" - use_agent_dmaap_https + + + START_ID=$(($START_ID+$NUM_POLICIES)) + + start_timer "Create polices in STD 2 via a1pms REST and $interface using "$__httpx + a1pms_api_put_policy 201 "serv1" ricsim_g3_1 STD_QOS2_0.1.0 $START_ID NOTRANSIENT $notificationurl testdata/STD2/pi_qos2_template.json $NUM_POLICIES + print_timer "Create polices in STD via a1pms REST and $interface using "$__httpx + + sim_equal ricsim_g3_1 num_instances $NUM_POLICIES + + + INTERFACE_VARIANT= + if [[ "$A1PMS_FEATURE_LEVEL" == *"NO-DMAAP"* ]]; then + INTERFACE_VARIANT=REST + if [ $__httpx == "HTTPS" ]; then + use_a1pms_rest_https + else + use_a1pms_rest_http + fi else - echo "Using non-secure ports towards dmaap" - use_agent_dmaap_http + INTERFACE_VARIANT=DMAAP + if [ $__httpx == "HTTPS" ]; then + echo "Using secure ports towards dmaap" + use_a1pms_dmaap_https + else + echo "Using non-secure ports towards dmaap" + use_a1pms_dmaap_http + fi fi START_ID=$(($START_ID+$NUM_POLICIES)) - start_timer "Create polices in OSC via agent DMAAP, one by one, and $interface using "$__httpx - api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES - print_timer "Create polices in OSC via agent DMAAP, one by one, and $interface using "$__httpx + start_timer "Create polices in OSC via a1pms $INTERFACE_VARIANT, one by one, and $interface using "$__httpx + a1pms_api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES + print_timer "Create polices in OSC via a1pms $INTERFACE_VARIANT, one by one, and $interface using "$__httpx sim_equal ricsim_g1_1 num_instances $((2*$NUM_POLICIES)) START_ID=$(($START_ID+$NUM_POLICIES)) - start_timer "Create polices in STD via agent DMAAP, one by one, and $interface using "$__httpx - api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES - print_timer "Create polices in STD via agent DMAAP, one by one, and $interface using "$__httpx + start_timer "Create polices in STD via a1pms $INTERFACE_VARIANT, one by one, and $interface using "$__httpx + a1pms_api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES + print_timer "Create polices in STD via a1pms $INTERFACE_VARIANT, one by one, and $interface using "$__httpx sim_equal ricsim_g2_1 num_instances $((2*$NUM_POLICIES)) + START_ID=$(($START_ID+$NUM_POLICIES)) - start_timer "Create polices in OSC via agent DMAAP in batch and $interface using "$__httpx - api_put_policy_batch 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES - print_timer "Create polices in OSC via agent DMAAP in batch and $interface using "$__httpx + start_timer "Create polices in STD 2 via a1pms $INTERFACE_VARIANT, one by one, and $interface using "$__httpx + a1pms_api_put_policy 201 "serv1" ricsim_g3_1 STD_QOS2_0.1.0 $START_ID NOTRANSIENT $notificationurl testdata/STD2/pi_qos2_template.json $NUM_POLICIES + print_timer "Create polices in STD via a1pms $INTERFACE_VARIANT, one by one, and $interface using "$__httpx - sim_equal ricsim_g1_1 num_instances $((3*$NUM_POLICIES)) + sim_equal ricsim_g3_1 num_instances $((2*$NUM_POLICIES)) - START_ID=$(($START_ID+$NUM_POLICIES)) + if [[ "$A1PMS_FEATURE_LEVEL" == *"NO-DMAAP"* ]]; then + : + else + START_ID=$(($START_ID+$NUM_POLICIES)) + start_timer "Create polices in OSC via a1pms $INTERFACE_VARIANT in batch and $interface using "$__httpx + a1pms_api_put_policy_batch 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES + print_timer "Create polices in OSC via a1pms $INTERFACE_VARIANT in batch and $interface using "$__httpx + + sim_equal ricsim_g1_1 num_instances $((3*$NUM_POLICIES)) + + START_ID=$(($START_ID+$NUM_POLICIES)) + + start_timer "Create polices in STD via a1pms $INTERFACE_VARIANT in batch and $interface using "$__httpx + a1pms_api_put_policy_batch 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES + print_timer "Create polices in STD via a1pms $INTERFACE_VARIANT in batch and $interface using "$__httpx + + sim_equal ricsim_g2_1 num_instances $((3*$NUM_POLICIES)) - start_timer "Create polices in STD via agent DMAAP in batch and $interface using "$__httpx - api_put_policy_batch 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES - print_timer "Create polices in STD via agent DMAAP in batch and $interface using "$__httpx - sim_equal ricsim_g2_1 num_instances $((3*$NUM_POLICIES)) + START_ID=$(($START_ID+$NUM_POLICIES)) + + start_timer "Create polices in STD via a1pms $INTERFACE_VARIANT in batch and $interface using "$__httpx + a1pms_api_put_policy_batch 201 "serv1" ricsim_g3_1 STD_QOS2_0.1.0 $START_ID NOTRANSIENT $notificationurl testdata/STD2/pi_qos2_template.json $NUM_POLICIES + print_timer "Create polices in STD via a1pms $INTERFACE_VARIANT in batch and $interface using "$__httpx + + sim_equal ricsim_g3_1 num_instances $((3*$NUM_POLICIES)) + fi if [ $interface == "SDNC" ]; then - sim_contains_str ricsim_g1_1 remote_hosts "a1-controller" - sim_contains_str ricsim_g2_1 remote_hosts "a1-controller" - if [ "$PMS_VERSION" == "V2" ]; then - sim_contains_str ricsim_g3_1 remote_hosts "a1-controller" - fi + sim_contains_str ricsim_g1_1 remote_hosts $SDNC_APP_NAME + sim_contains_str ricsim_g2_1 remote_hosts $SDNC_APP_NAME + sim_contains_str ricsim_g3_1 remote_hosts $SDNC_APP_NAME else - sim_contains_str ricsim_g1_1 remote_hosts "policy-agent" - sim_contains_str ricsim_g2_1 remote_hosts "policy-agent" - if [ "$PMS_VERSION" == "V2" ]; then - sim_contains_str ricsim_g3_1 remote_hosts "policy-agent" - fi + sim_contains_str ricsim_g1_1 remote_hosts $A1PMS_APP_NAME + sim_contains_str ricsim_g2_1 remote_hosts $A1PMS_APP_NAME + sim_contains_str ricsim_g3_1 remote_hosts $A1PMS_APP_NAME fi - check_policy_agent_logs + check_a1pms_logs + if [[ $interface = *"SDNC"* ]]; then + check_sdnc_logs + fi store_logs "${__httpx}__${interface}" done @@ -200,4 +264,4 @@ done print_result -auto_clean_containers \ No newline at end of file +auto_clean_environment \ No newline at end of file