X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=test%2Fauto-test%2FONAP_UC.sh;h=c41c7250ec01fa28085f0573cfbd7999e967c00f;hb=refs%2Fchanges%2F89%2F10889%2F2;hp=1edefbd02d7415626be070b24a58f6c923574139;hpb=46c3e2be383add6bb21570a24abef778fd75a762;p=nonrtric.git diff --git a/test/auto-test/ONAP_UC.sh b/test/auto-test/ONAP_UC.sh index 1edefbd0..c41c7250 100755 --- a/test/auto-test/ONAP_UC.sh +++ b/test/auto-test/ONAP_UC.sh @@ -1,7 +1,7 @@ #!/usr/bin/env 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. @@ -20,10 +20,10 @@ TC_ONELINE_DESCR="ONAP Use case REQ-626" #App names to include in the test when running docker, space separated list -DOCKER_INCLUDED_IMAGES="CBS CONSUL CP CR MR DMAAPMR PA RICSIM SDNC NGW" +DOCKER_INCLUDED_IMAGES="CP CR MR DMAAPMR A1PMS RICSIM SDNC NGW KUBEPROXY" #App names to include in the test when running kubernetes, space separated list -KUBE_INCLUDED_IMAGES="CP CR MR PA RICSIM SDNC KUBEPROXY NGW" +KUBE_INCLUDED_IMAGES="CP CR MR DMAAPMR 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="" @@ -33,20 +33,11 @@ KUBE_PRESTARTED_IMAGES="" CONDITIONALLY_IGNORED_IMAGES="NGW" #Supported test environment profiles -SUPPORTED_PROFILES="ONAP-HONOLULU ONAP-ISTANBUL" +SUPPORTED_PROFILES="ONAP-JAKARTA ONAP-KOHN ONAP-LONDON " #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" . ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh setup_testenvironment @@ -56,40 +47,49 @@ setup_testenvironment ########################## use_cr_https -use_agent_rest_https -use_sdnc_https +use_a1pms_rest_https +if [[ "$SDNC_FEATURE_LEVEL" == *"NO_NB_HTTPS"* ]]; then + deviation "SDNC does not support NB https" + use_sdnc_http +else + use_sdnc_https +fi use_simulator_https -use_mr_https - -if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_PATH"/test" +if [[ "$A1PMS_FEATURE_LEVEL" == *"NO-DMAAP"* ]]; then + : else - echo "Version V2 of PMS is needed, exiting..." - exit 1 + use_mr_https fi +__httpx="HTTPS" +notificationurl=$CR_SERVICE_APP_PATH_0"/test" -generate_policy_uuid +sim_generate_policy_uuid # Tested variants of REST/DMAAP/SDNC config -TESTED_VARIANTS="REST DMAAP REST+SDNC DMAAP+SDNC" + + +if [[ "$A1PMS_FEATURE_LEVEL" == *"NO-DMAAP"* ]]; then + TESTED_VARIANTS="REST REST+SDNC" +else + TESTED_VARIANTS="REST DMAAP REST+SDNC DMAAP+SDNC" +fi + for interface in $TESTED_VARIANTS ; do echo "#####################################################################" echo "#####################################################################" - echo "### Testing agent: $interface using https" + echo "### Testing a1pms: $interface using https" echo "#####################################################################" echo "#####################################################################" clean_environment - if [ $RUNMODE == "KUBE" ]; then - start_kube_proxy - fi + start_kube_proxy if [[ $interface = *"DMAAP"* ]]; then - use_agent_dmaap_https + use_a1pms_dmaap_https else - use_agent_rest_https + use_a1pms_rest_https fi OSC_NUM_RICS=1 @@ -101,7 +101,12 @@ for interface in $TESTED_VARIANTS ; do start_ric_simulators $RIC_SIM_PREFIX"_g3" $STD_NUM_RICS STD_2.0.0 - start_mr + if [[ "$A1PMS_FEATURE_LEVEL" == *"NO-DMAAP"* ]]; then + : + else + start_mr "$MR_READ_TOPIC" "/events" "users/policy-agent" \ + "$MR_WRITE_TOPIC" "/events" "users/mr-stub" + fi start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE @@ -109,31 +114,49 @@ for interface in $TESTED_VARIANTS ; do start_gateway $SIM_GROUP/$NRT_GATEWAY_COMPOSE_DIR/$NRT_GATEWAY_CONFIG_FILE fi + + if [[ $interface = *"SDNC"* ]]; then start_sdnc - prepare_consul_config SDNC ".consul_config.json" + controller_api_wait_for_status_ok 200 ricsim_g1_1 + prepare_a1pms_config SDNC ".a1pms_config.json" else - prepare_consul_config NOSDNC ".consul_config.json" + prepare_a1pms_config NOSDNC ".a1pms_config.json" fi - start_policy_agent NORPOXY $SIM_GROUP/$POLICY_AGENT_COMPOSE_DIR/$POLICY_AGENT_CONFIG_FILE + start_a1pms NORPOXY $SIM_GROUP/$A1PMS_COMPOSE_DIR/$A1PMS_CONFIG_FILE - set_agent_trace - - if [ $RUNMODE == "DOCKER" ]; then - start_consul_cbs - fi + set_a1pms_trace if [ $RUNMODE == "KUBE" ]; then - agent_load_config ".consul_config.json" + a1pms_load_config ".a1pms_config.json" else - consul_config_app ".consul_config.json" + #Temporary switch to http/https if dmaap use. Otherwise it is not possibble to push config + if [ $__httpx == "HTTPS" ]; then + use_a1pms_rest_https + else + use_a1pms_rest_http + fi + a1pms_api_put_configuration 200 ".a1pms_config.json" + if [ $__httpx == "HTTPS" ]; then + if [[ $interface = *"DMAAP"* ]]; then + use_a1pms_dmaap_https + else + use_a1pms_rest_https + fi + else + if [[ $interface = *"DMAAP"* ]]; then + use_a1pms_dmaap_http + else + use_a1pms_rest_http + fi + fi fi # Check that all rics are synced in - api_equal json:rics 3 300 + a1pms_equal json:rics 3 300 - api_get_status 200 + a1pms_api_get_status 200 # Print the A1 version for OSC for ((i=1; i<=$OSC_NUM_RICS; i++)) @@ -166,18 +189,18 @@ for interface in $TESTED_VARIANTS ; do done #Check the number of schemas and the individual schemas in OSC - api_equal json:policy-types 3 300 + a1pms_equal json:policy-types 3 300 for ((i=1; i<=$OSC_NUM_RICS; i++)) do - api_equal json:policy-types?ric_id=$RIC_SIM_PREFIX"_g1_"$i 2 120 + a1pms_equal json:policy-types?ric_id=$RIC_SIM_PREFIX"_g1_"$i 2 120 done # Check the schemas in OSC for ((i=1; i<=$OSC_NUM_RICS; i++)) do - api_get_policy_type 200 100 demo-testdata/OSC/qos-agent-modified.json - api_get_policy_type 200 20008 demo-testdata/OSC/tsa-agent-modified.json + a1pms_api_get_policy_type 200 100 demo-testdata/OSC/qos-a1pms-modified.json + a1pms_api_get_policy_type 200 20008 demo-testdata/OSC/tsa-a1pms-modified.json done @@ -189,37 +212,37 @@ for interface in $TESTED_VARIANTS ; do done #Check the number of schemas and the individual schemas in STD - api_equal json:policy-types 5 120 + a1pms_equal json:policy-types 5 120 for ((i=1; i<=$STD_NUM_RICS; i++)) do - api_equal json:policy-types?ric_id=$RIC_SIM_PREFIX"_g3_"$i 2 120 + a1pms_equal json:policy-types?ric_id=$RIC_SIM_PREFIX"_g3_"$i 2 120 done # Check the schemas in STD for ((i=1; i<=$STD_NUM_RICS; i++)) do - api_get_policy_type 200 STD_QOS_0_2_0 demo-testdata/STD2/qos-agent-modified.json - api_get_policy_type 200 'STD_QOS2_0.1.0' demo-testdata/STD2/qos2-agent-modified.json + a1pms_api_get_policy_type 200 STD_QOS_0_2_0 demo-testdata/STD2/qos-a1pms-modified.json + a1pms_api_get_policy_type 200 'STD_QOS2_0.1.0' demo-testdata/STD2/qos2-a1pms-modified.json done #Check the number of types - api_equal json:policy-types 5 120 + a1pms_equal json:policy-types 5 120 ################################################################# ## REQ: A1 Policy Type / Instance Operations ################################################################# # Create policies - use_agent_rest_http + use_a1pms_rest_http - api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_PATH/1" + a1pms_api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH_0/1" # Create policies in OSC for ((i=1; i<=$OSC_NUM_RICS; i++)) do - api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g1_"$i 100 $((3000+$i)) NOTRANSIENT $notificationurl demo-testdata/OSC/piqos_template.json 1 - api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g1_"$i 20008 $((4000+$i)) NOTRANSIENT $notificationurl demo-testdata/OSC/pitsa_template.json 1 + a1pms_api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g1_"$i 100 $((3000+$i)) NOTRANSIENT $notificationurl demo-testdata/OSC/piqos_template.json 1 + a1pms_api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g1_"$i 20008 $((4000+$i)) NOTRANSIENT $notificationurl demo-testdata/OSC/pitsa_template.json 1 done @@ -233,9 +256,9 @@ for interface in $TESTED_VARIANTS ; do # Create policies in STD for ((i=1; i<=$STD_NUM_RICS; i++)) do - api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g2_"$i NOTYPE $((2100+$i)) NOTRANSIENT $notificationurl demo-testdata/STD/pi1_template.json 1 - api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g3_"$i STD_QOS_0_2_0 $((2300+$i)) NOTRANSIENT $notificationurl demo-testdata/STD2/pi1_template.json 1 - api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g3_"$i 'STD_QOS2_0.1.0' $((2400+$i)) NOTRANSIENT $notificationurl demo-testdata/STD2/pi1_template.json 1 + a1pms_api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g2_"$i NOTYPE $((2100+$i)) NOTRANSIENT $notificationurl demo-testdata/STD/pi1_template.json 1 + a1pms_api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g3_"$i STD_QOS_0_2_0 $((2300+$i)) NOTRANSIENT $notificationurl demo-testdata/STD2/pi1_template.json 1 + a1pms_api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g3_"$i 'STD_QOS2_0.1.0' $((2400+$i)) NOTRANSIENT $notificationurl demo-testdata/STD2/pi1_template.json 1 done @@ -253,24 +276,24 @@ for interface in $TESTED_VARIANTS ; do # Check status STD for ((i=1; i<=$STD_NUM_RICS; i++)) do - api_get_policy_status 200 $((2100+$i)) STD "UNDEFINED" - api_get_policy_status 200 $((2300+$i)) STD2 EMPTY EMPTY - api_get_policy_status 200 $((2400+$i)) STD2 EMPTY EMPTY + a1pms_api_get_policy_status 200 $((2100+$i)) STD "UNDEFINED" + a1pms_api_get_policy_status 200 $((2300+$i)) STD2 EMPTY EMPTY + a1pms_api_get_policy_status 200 $((2400+$i)) STD2 EMPTY EMPTY done # Check status OSC VAL='NOT IN EFFECT' for ((i=1; i<=$OSC_NUM_RICS; i++)) do - api_get_policy_status 200 $((3000+$i)) OSC "$VAL" "false" - api_get_policy_status 200 $((4000+$i)) OSC "$VAL" "false" + a1pms_api_get_policy_status 200 $((3000+$i)) OSC "$VAL" "false" + a1pms_api_get_policy_status 200 $((4000+$i)) OSC "$VAL" "false" done # Note: Status callback is not tested since this callback (http POST) is made from the # ricsim directly to the receiver of the status, i.e. the status does NOT - # pass through PMS + # pass through A1PMS - check_policy_agent_logs + check_a1pms_logs if [[ $interface = *"SDNC"* ]]; then check_sdnc_logs