From 79e37003f5c94bfe12d197727dd31334e50397a6 Mon Sep 17 00:00:00 2001 From: BjornMagnussonXA Date: Mon, 22 Nov 2021 13:36:04 +0100 Subject: [PATCH] Kafka now works in kube for calls outside its namespace Test case for dmaap adater and mediator updated Support for up to 10 callback-receiver replicas Adapted test scripts for callback-receiver replicas Improved test scripts to auto-include app api include files Issue-ID: NONRTRIC-618 Signed-off-by: BjornMagnussonXA Change-Id: I3aafdcc8b44189c79996c7237a43a19985dcecfc --- test/auto-test/FTC1.sh | 26 +- test/auto-test/FTC10.sh | 17 +- test/auto-test/FTC100.sh | 43 +-- test/auto-test/FTC110.sh | 52 ++- test/auto-test/FTC1100.sh | 309 +++++++++--------- test/auto-test/FTC150.sh | 5 +- test/auto-test/FTC1800.sh | 65 ++-- test/auto-test/FTC2001.sh | 39 +-- test/auto-test/FTC2002.sh | 6 +- test/auto-test/FTC2003.sh | 20 +- test/auto-test/FTC300.sh | 17 +- test/auto-test/FTC3000.sh | 295 +++++++++++------- test/auto-test/FTC310.sh | 24 +- test/auto-test/FTC350.sh | 39 +-- test/auto-test/FTC800.sh | 17 +- test/auto-test/FTC805.sh | 22 +- test/auto-test/FTC810.sh | 17 +- test/auto-test/FTC850.sh | 17 +- test/auto-test/FTC900.sh | 13 +- test/auto-test/FTC_HELM_E_RELEASE.sh | 50 ++- test/auto-test/ONAP_UC.sh | 13 +- test/auto-test/PM_DEMO.sh | 13 +- test/auto-test/PM_EI_DEMO.sh | 23 +- test/auto-test/README.md | 3 +- test/auto-test/startMR.sh | 12 +- test/common/README.md | 11 - test/common/cbs_api_functions.sh | 23 ++ test/common/clean_kube.sh | 8 +- ...ul_cbs_functions.sh => consul_api_functions.sh} | 117 ------- ..._panel_api_functions.sh => cp_api_functions.sh} | 0 test/common/cr_api_functions.sh | 347 +++++++++++++++------ test/common/dmaapmr_api_functions.sh | 23 ++ test/common/genstat.sh | 5 +- ...api_functions.sh => httpproxy_api_functions.sh} | 0 ...api_functions.sh => kubeproxy_api_functions.sh} | 0 test/common/mr_api_functions.sh | 165 +--------- ...teway_api_functions.sh => ngw_api_functions.sh} | 0 ...{agent_api_functions.sh => pa_api_functions.sh} | 116 +++++++ test/common/prodstub_api_functions.sh | 1 - ...alogue_api_functions.sh => rc_api_functions.sh} | 0 ...or_api_functions.sh => ricsim_api_functions.sh} | 17 +- ...ller_api_functions.sh => sdnc_api_functions.sh} | 0 test/common/test_env-onap-guilin.sh | 4 +- test/common/test_env-onap-honolulu.sh | 4 +- test/common/test_env-onap-istanbul.sh | 4 +- test/common/test_env-oran-cherry.sh | 4 +- test/common/test_env-oran-d-release.sh | 4 +- test/common/test_env-oran-e-release.sh | 4 +- test/common/testcase_common.sh | 88 +++--- test/cr/.gitignore | 3 +- test/simulator-group/consul_cbs/.gitignore | 3 +- test/simulator-group/control_panel/.gitignore | 3 +- test/simulator-group/cr/.env | 1 + test/simulator-group/cr/.gitignore | 3 +- test/simulator-group/cr/app.yaml | 5 +- test/simulator-group/cr/docker-compose.yml | 8 +- test/simulator-group/cr/svc.yaml | 12 +- test/simulator-group/dmaapadp/.gitignore | 3 +- test/simulator-group/dmaapmed/.gitignore | 3 +- test/simulator-group/dmaapmr/.gitignore | 3 + test/simulator-group/dmaapmr/app.yaml | 132 ++++---- .../dmaapmr/configs0/kafka/zk_client_jaas.conf | 6 + .../{mnt => configs0}/mr/MsgRtrApi.properties | 22 +- .../dmaapmr/{mnt => configs0}/mr/cadi.properties | 13 +- .../dmaapmr/{mnt => configs0}/mr/logback.xml | 4 +- .../{mnt => configs0}/zk/zk_server_jaas.conf | 5 +- .../kafka/zk_client_jaas.conf | 0 .../{configs => configs1}/mr/MsgRtrApi.properties | 7 +- .../{configs => configs1}/mr/cadi.properties | 0 .../dmaapmr/{configs => configs1}/mr/logback.xml | 0 .../{configs => configs1}/zk/zk_server_jaas.conf | 0 test/simulator-group/dmaapmr/docker-compose.yml | 2 +- .../dmaapmr/mnt/kafka/zk_client_jaas.conf | 5 - test/simulator-group/dmaapmr/svc.yaml | 30 +- test/simulator-group/ecs/.gitignore | 3 +- test/simulator-group/httpproxy/.gitignore | 3 +- test/simulator-group/kubeproxy/.gitignore | 1 + test/simulator-group/mrstub/.gitignore | 3 +- test/simulator-group/ngw/.gitignore | 1 + test/simulator-group/policy_agent/.gitignore | 3 +- test/simulator-group/prodstub/.gitignore | 3 +- test/simulator-group/prodstub/docker-compose.yml | 4 +- test/simulator-group/rapp_catalogue/.gitignore | 3 +- test/simulator-group/ric/.gitignore | 3 +- test/simulator-group/sdnc/.gitignore | 3 +- 85 files changed, 1181 insertions(+), 1224 deletions(-) create mode 100644 test/common/cbs_api_functions.sh rename test/common/{consul_cbs_functions.sh => consul_api_functions.sh} (68%) rename test/common/{control_panel_api_functions.sh => cp_api_functions.sh} (100%) create mode 100644 test/common/dmaapmr_api_functions.sh rename test/common/{http_proxy_api_functions.sh => httpproxy_api_functions.sh} (100%) rename test/common/{kube_proxy_api_functions.sh => kubeproxy_api_functions.sh} (100%) rename test/common/{gateway_api_functions.sh => ngw_api_functions.sh} (100%) rename test/common/{agent_api_functions.sh => pa_api_functions.sh} (93%) rename test/common/{rapp_catalogue_api_functions.sh => rc_api_functions.sh} (100%) rename test/common/{ricsimulator_api_functions.sh => ricsim_api_functions.sh} (95%) rename test/common/{controller_api_functions.sh => sdnc_api_functions.sh} (100%) create mode 100644 test/simulator-group/cr/.env create mode 100644 test/simulator-group/dmaapmr/.gitignore create mode 100644 test/simulator-group/dmaapmr/configs0/kafka/zk_client_jaas.conf rename test/simulator-group/dmaapmr/{mnt => configs0}/mr/MsgRtrApi.properties (90%) rename test/simulator-group/dmaapmr/{mnt => configs0}/mr/cadi.properties (58%) rename test/simulator-group/dmaapmr/{mnt => configs0}/mr/logback.xml (98%) rename test/simulator-group/dmaapmr/{mnt => configs0}/zk/zk_server_jaas.conf (67%) rename test/simulator-group/dmaapmr/{configs => configs1}/kafka/zk_client_jaas.conf (100%) rename test/simulator-group/dmaapmr/{configs => configs1}/mr/MsgRtrApi.properties (96%) rename test/simulator-group/dmaapmr/{configs => configs1}/mr/cadi.properties (100%) rename test/simulator-group/dmaapmr/{configs => configs1}/mr/logback.xml (100%) rename test/simulator-group/dmaapmr/{configs => configs1}/zk/zk_server_jaas.conf (100%) delete mode 100644 test/simulator-group/dmaapmr/mnt/kafka/zk_client_jaas.conf diff --git a/test/auto-test/FTC1.sh b/test/auto-test/FTC1.sh index e4ffe75b..1e344055 100755 --- a/test/auto-test/FTC1.sh +++ b/test/auto-test/FTC1.sh @@ -38,17 +38,7 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/http_proxy_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -85,7 +75,7 @@ for __httpx in $TESTED_PROTOCOLS ; do # Create service to be able to receive events when rics becomes available # Must use rest towards the agent since dmaap is not configured yet - api_put_service 201 "ric-registration" 0 "$CR_SERVICE_APP_PATH/ric-registration" + api_put_service 201 "ric-registration" 0 "$CR_SERVICE_APP_PATH_0/ric-registration" if [ $__httpx == "HTTPS" ]; then use_cr_https @@ -122,7 +112,7 @@ for __httpx in $TESTED_PROTOCOLS ; do start_mr "$MR_READ_TOPIC" "/events" "users/policy-agent" \ "$MR_WRITE_TOPIC" "/events" "users/mr-stub" - start_cr + start_cr 1 start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE @@ -163,9 +153,9 @@ for __httpx in $TESTED_PROTOCOLS ; do api_equal json:policy-instances 0 - cr_equal received_callbacks 3 120 + cr_equal 0 received_callbacks 3 120 - cr_api_check_all_sync_events 200 ric-registration ricsim_g1_1 ricsim_g2_1 ricsim_g3_1 + cr_api_check_all_sync_events 200 0 ric-registration ricsim_g1_1 ricsim_g2_1 ricsim_g3_1 else api_equal json:rics 2 300 @@ -189,7 +179,7 @@ for __httpx in $TESTED_PROTOCOLS ; do echo "##### Service registry and supervision #####" echo "############################################" - api_put_service 201 "serv1" 1000 "$CR_SERVICE_APP_PATH/1" + api_put_service 201 "serv1" 1000 "$CR_SERVICE_APP_PATH_0/1" api_get_service_ids 200 "serv1" "ric-registration" @@ -210,7 +200,7 @@ for __httpx in $TESTED_PROTOCOLS ; do echo "############################################" if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi @@ -249,7 +239,7 @@ for __httpx in $TESTED_PROTOCOLS ; do fi if [ "$PMS_VERSION" == "V2" ]; then - cr_equal received_callbacks 3 + cr_equal 0 received_callbacks 3 fi if [[ $interface = *"DMAAP"* ]]; then diff --git a/test/auto-test/FTC10.sh b/test/auto-test/FTC10.sh index 625346b7..a561cc6b 100755 --- a/test/auto-test/FTC10.sh +++ b/test/auto-test/FTC10.sh @@ -38,15 +38,6 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R SUPPORTED_RUNMODES="DOCKER KUBE" . ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh setup_testenvironment @@ -73,7 +64,7 @@ fi start_mr -start_cr +start_cr 1 if [ $RUNMODE == "DOCKER" ]; then start_consul_cbs @@ -121,14 +112,14 @@ fi # Create policies if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi use_agent_rest_http -api_put_service 201 "service1" 3600 "$CR_SERVICE_APP_PATH/1" +api_put_service 201 "service1" 3600 "$CR_SERVICE_APP_PATH_0/1" api_put_policy 201 "service1" ricsim_g1_1 1 2000 NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json 1 @@ -173,7 +164,7 @@ fi #Update policies use_agent_rest_http -api_put_service 200 "service1" 3600 "$CR_SERVICE_APP_PATH/1" +api_put_service 200 "service1" 3600 "$CR_SERVICE_APP_PATH_0/1" api_put_policy 200 "service1" ricsim_g1_1 1 2000 NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json 1 diff --git a/test/auto-test/FTC100.sh b/test/auto-test/FTC100.sh index ac6f8d51..da623ce1 100755 --- a/test/auto-test/FTC100.sh +++ b/test/auto-test/FTC100.sh @@ -38,16 +38,7 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -89,7 +80,7 @@ for __httpx in $TESTED_PROTOCOLS ; do # Create service to be able to receive events when rics becomes available # Must use rest towards the agent since dmaap is not configured yet - api_put_service 201 "ric-registration" 0 "$CR_SERVICE_APP_PATH/ric-registration" + api_put_service 201 "ric-registration" 0 "$CR_SERVICE_APP_PATH_0/ric-registration" if [ $__httpx == "HTTPS" ]; then @@ -124,7 +115,7 @@ for __httpx in $TESTED_PROTOCOLS ; do start_mr - start_cr + start_cr 1 start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE @@ -176,8 +167,8 @@ for __httpx in $TESTED_PROTOCOLS ; do fi if [ "$PMS_VERSION" == "V2" ]; then - cr_equal received_callbacks 3 120 - cr_api_check_all_sync_events 200 ric-registration ricsim_g1_1 ricsim_g2_1 ricsim_g3_1 + cr_equal 0 received_callbacks 3 120 + cr_api_check_all_sync_events 200 0 ric-registration ricsim_g1_1 ricsim_g2_1 ricsim_g3_1 fi mr_equal requests_submitted 0 @@ -194,14 +185,14 @@ for __httpx in $TESTED_PROTOCOLS ; do api_get_services 404 "service1" - api_put_service 201 "service1" 1000 "$CR_SERVICE_APP_PATH/1" + api_put_service 201 "service1" 1000 "$CR_SERVICE_APP_PATH_0/1" - api_put_service 200 "service1" 2000 "$CR_SERVICE_APP_PATH/1" + api_put_service 200 "service1" 2000 "$CR_SERVICE_APP_PATH_0/1" - api_put_service 400 "service2" -1 "$CR_SERVICE_APP_PATH/2" + api_put_service 400 "service2" -1 "$CR_SERVICE_APP_PATH_0/2" - api_put_service 400 "service2" "wrong" "$CR_SERVICE_APP_PATH/2" + api_put_service 400 "service2" "wrong" "$CR_SERVICE_APP_PATH_0/2" api_put_service 400 "service2" 100 "/test" @@ -209,20 +200,20 @@ for __httpx in $TESTED_PROTOCOLS ; do api_put_service 201 "service2" 300 "ftp://localhost:80/test" - api_get_services 200 "service1" "service1" 2000 "$CR_SERVICE_APP_PATH/1" + api_get_services 200 "service1" "service1" 2000 "$CR_SERVICE_APP_PATH_0/1" api_get_service_ids 200 "service1" "service2" "ric-registration" - api_put_service 201 "service3" 5000 "$CR_SERVICE_APP_PATH/3" + api_put_service 201 "service3" 5000 "$CR_SERVICE_APP_PATH_0/3" api_get_service_ids 200 "service1" "service2" "service3" "ric-registration" - api_get_services 200 "service1" "service1" 2000 "$CR_SERVICE_APP_PATH/1" + api_get_services 200 "service1" "service1" 2000 "$CR_SERVICE_APP_PATH_0/1" - api_get_services 200 NOSERVICE "service1" 2000 "$CR_SERVICE_APP_PATH/1" "service2" 300 "ftp://localhost:80/test" "service3" 5000 "$CR_SERVICE_APP_PATH/3" "ric-registration" 0 "$CR_SERVICE_APP_PATH/ric-registration" + api_get_services 200 NOSERVICE "service1" 2000 "$CR_SERVICE_APP_PATH_0/1" "service2" 300 "ftp://localhost:80/test" "service3" 5000 "$CR_SERVICE_APP_PATH_0/3" "ric-registration" 0 "$CR_SERVICE_APP_PATH_0/ric-registration" api_get_services 200 @@ -251,7 +242,7 @@ for __httpx in $TESTED_PROTOCOLS ; do api_get_service_ids 200 "service2" "service3" "ric-registration" - api_put_service 201 "service1" 50 "$CR_SERVICE_APP_PATH/1" + api_put_service 201 "service1" 50 "$CR_SERVICE_APP_PATH_0/1" api_get_service_ids 200 "service1" "service2" "service3" "ric-registration" @@ -386,10 +377,10 @@ for __httpx in $TESTED_PROTOCOLS ; do - api_put_service 201 "service10" 3600 "$CR_SERVICE_APP_PATH/1" + api_put_service 201 "service10" 3600 "$CR_SERVICE_APP_PATH_0/1" if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi @@ -544,7 +535,7 @@ for __httpx in $TESTED_PROTOCOLS ; do fi if [ "$PMS_VERSION" == "V2" ]; then - cr_equal received_callbacks 3 + cr_equal 0 received_callbacks 3 fi if [[ $interface = *"DMAAP"* ]]; then diff --git a/test/auto-test/FTC110.sh b/test/auto-test/FTC110.sh index e3b96a5e..f855f6fa 100755 --- a/test/auto-test/FTC110.sh +++ b/test/auto-test/FTC110.sh @@ -38,15 +38,7 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -71,7 +63,7 @@ fi start_mr -start_cr +start_cr 1 if [ $RUNMODE == "DOCKER" ]; then start_consul_cbs @@ -107,60 +99,60 @@ if [ "$PMS_VERSION" == "V2" ]; then sim_print ricsim_g3_1 interface fi -api_put_service 201 "service1" 15 "$CR_SERVICE_APP_PATH/service1" +api_put_service 201 "service1" 15 "$CR_SERVICE_APP_PATH_0/service1" -api_get_services 200 "service1" "service1" 15 "$CR_SERVICE_APP_PATH/service1" +api_get_services 200 "service1" "service1" 15 "$CR_SERVICE_APP_PATH_0/service1" -api_put_service 201 "service2" 120 "$CR_SERVICE_APP_PATH/service2" +api_put_service 201 "service2" 120 "$CR_SERVICE_APP_PATH_0/service2" -api_get_services 200 "service2" "service2" 120 "$CR_SERVICE_APP_PATH/service2" +api_get_services 200 "service2" "service2" 120 "$CR_SERVICE_APP_PATH_0/service2" -api_put_service 200 "service1" 50 "$CR_SERVICE_APP_PATH/service1" -api_put_service 200 "service2" 180 "$CR_SERVICE_APP_PATH/service2" +api_put_service 200 "service1" 50 "$CR_SERVICE_APP_PATH_0/service1" +api_put_service 200 "service2" 180 "$CR_SERVICE_APP_PATH_0/service2" -api_get_services 200 "service1" "service1" 50 "$CR_SERVICE_APP_PATH/service1" -api_get_services 200 "service2" "service2" 180 "$CR_SERVICE_APP_PATH/service2" +api_get_services 200 "service1" "service1" 50 "$CR_SERVICE_APP_PATH_0/service1" +api_get_services 200 "service2" "service2" 180 "$CR_SERVICE_APP_PATH_0/service2" api_get_service_ids 200 "service1" "service2" sleep_wait 30 "Waiting for keep alive timeout" -api_get_services 200 "service1" "service1" 50 "$CR_SERVICE_APP_PATH/service1" -api_get_services 200 "service2" "service2" 180 "$CR_SERVICE_APP_PATH/service2" +api_get_services 200 "service1" "service1" 50 "$CR_SERVICE_APP_PATH_0/service1" +api_get_services 200 "service2" "service2" 180 "$CR_SERVICE_APP_PATH_0/service2" sleep_wait 100 "Waiting for keep alive timeout" api_get_services 404 "service1" -api_get_services 200 "service2" "service2" 180 "$CR_SERVICE_APP_PATH/service2" +api_get_services 200 "service2" "service2" 180 "$CR_SERVICE_APP_PATH_0/service2" api_delete_services 204 "service2" api_get_services 404 "service1" api_get_services 404 "service2" -api_put_service 201 "service3" 60 "$CR_SERVICE_APP_PATH/service3" +api_put_service 201 "service3" 60 "$CR_SERVICE_APP_PATH_0/service3" -api_get_services 200 "service3" "service3" 60 "$CR_SERVICE_APP_PATH/service3" +api_get_services 200 "service3" "service3" 60 "$CR_SERVICE_APP_PATH_0/service3" sleep_wait 30 "Waiting for keep alive timeout" -api_put_service 200 "service3" 60 "$CR_SERVICE_APP_PATH/service3" +api_put_service 200 "service3" 60 "$CR_SERVICE_APP_PATH_0/service3" sleep_wait 100 "Waiting for keep alive timeout" api_get_services 404 "service3" -api_put_service 201 "service4" 120 "$CR_SERVICE_APP_PATH/service4" +api_put_service 201 "service4" 120 "$CR_SERVICE_APP_PATH_0/service4" sleep_wait 60 "Waiting for keep alive timeout" -api_get_services 200 "service4" "service4" 120 "$CR_SERVICE_APP_PATH/service4" +api_get_services 200 "service4" "service4" 120 "$CR_SERVICE_APP_PATH_0/service4" api_put_services_keepalive 200 "service4" sleep_wait 90 "Waiting for keep alive timeout" -api_get_services 200 "service4" "service4" 120 "$CR_SERVICE_APP_PATH/service4" +api_get_services 200 "service4" "service4" 120 "$CR_SERVICE_APP_PATH_0/service4" api_delete_services 204 "service4" @@ -183,7 +175,7 @@ api_put_services_keepalive 404 "service3" api_put_services_keepalive 404 "service4" # Policy delete after timeout -api_put_service 201 "service10" 600 "$CR_SERVICE_APP_PATH/service10" +api_put_service 201 "service10" 600 "$CR_SERVICE_APP_PATH_0/service10" sim_put_policy_type 201 ricsim_g1_1 1 testdata/OSC/sim_1.json @@ -209,7 +201,7 @@ else fi if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi @@ -263,7 +255,7 @@ if [ "$PMS_VERSION" == "V2" ]; then sim_equal ricsim_g3_1 num_instances 1 fi -api_put_service 200 "service10" 10 "$CR_SERVICE_APP_PATH/service10" +api_put_service 200 "service10" 10 "$CR_SERVICE_APP_PATH_0/service10" #Wait for service expiry api_equal json:policies 0 120 diff --git a/test/auto-test/FTC1100.sh b/test/auto-test/FTC1100.sh index 0e4f4a72..cc23abb5 100755 --- a/test/auto-test/FTC1100.sh +++ b/test/auto-test/FTC1100.sh @@ -38,16 +38,7 @@ SUPPORTED_PROFILES="ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-RELEASE ORAN- #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/ecs_api_functions.sh -. ../common/prodstub_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/http_proxy_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -89,7 +80,7 @@ if [ "$PMS_VERSION" == "V2" ]; then start_ric_simulators ricsim_g3 4 STD_2.0.0 fi -start_cr +start_cr 1 CB_JOB="$PROD_STUB_SERVICE_PATH$PROD_STUB_JOB_CALLBACK" CB_SV="$PROD_STUB_SERVICE_PATH$PROD_STUB_SUPERVISION_CALLBACK" @@ -110,25 +101,25 @@ TARGET150="http://localhost:80/target" # Dummy target, no target for info data TARGET160="http://localhost:80/target" # Dummy target, no target for info data in this env... #Status callbacks for eijobs -STATUS1="$CR_SERVICE_APP_PATH/job1-status" -STATUS2="$CR_SERVICE_APP_PATH/job2-status" -STATUS3="$CR_SERVICE_APP_PATH/job3-status" -STATUS8="$CR_SERVICE_APP_PATH/job8-status" -STATUS10="$CR_SERVICE_APP_PATH/job10-status" +STATUS1="$CR_SERVICE_APP_PATH_0/job1-status" +STATUS2="$CR_SERVICE_APP_PATH_0/job2-status" +STATUS3="$CR_SERVICE_APP_PATH_0/job3-status" +STATUS8="$CR_SERVICE_APP_PATH_0/job8-status" +STATUS10="$CR_SERVICE_APP_PATH_0/job10-status" #Status callbacks for infojobs -INFOSTATUS101="$CR_SERVICE_APP_PATH/info-job101-status" -INFOSTATUS102="$CR_SERVICE_APP_PATH/info-job102-status" -INFOSTATUS103="$CR_SERVICE_APP_PATH/info-job103-status" -INFOSTATUS108="$CR_SERVICE_APP_PATH/info-job108-status" -INFOSTATUS110="$CR_SERVICE_APP_PATH/info-job110-status" -INFOSTATUS150="$CR_SERVICE_APP_PATH/info-job150-status" -INFOSTATUS160="$CR_SERVICE_APP_PATH/info-job160-status" +INFOSTATUS101="$CR_SERVICE_APP_PATH_0/info-job101-status" +INFOSTATUS102="$CR_SERVICE_APP_PATH_0/info-job102-status" +INFOSTATUS103="$CR_SERVICE_APP_PATH_0/info-job103-status" +INFOSTATUS108="$CR_SERVICE_APP_PATH_0/info-job108-status" +INFOSTATUS110="$CR_SERVICE_APP_PATH_0/info-job110-status" +INFOSTATUS150="$CR_SERVICE_APP_PATH_0/info-job150-status" +INFOSTATUS160="$CR_SERVICE_APP_PATH_0/info-job160-status" if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then #Type registration status callbacks - TYPESTATUS1="$CR_SERVICE_APP_PATH/type-status1" - TYPESTATUS2="$CR_SERVICE_APP_PATH/type-status2" + TYPESTATUS1="$CR_SERVICE_APP_PATH_0/type-status1" + TYPESTATUS2="$CR_SERVICE_APP_PATH_0/type-status2" ecs_api_idc_put_subscription 201 subscription-id-1 owner1 $TYPESTATUS1 @@ -163,36 +154,36 @@ if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json - cr_equal received_callbacks 1 30 - cr_equal received_callbacks?id=type-status1 1 - cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED + cr_equal 0 received_callbacks 1 30 + cr_equal 0 received_callbacks?id=type-status1 1 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED ecs_api_edp_delete_type_2 204 type1 - cr_equal received_callbacks 2 30 - cr_equal received_callbacks?id=type-status1 2 - cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json DEREGISTERED + cr_equal 0 received_callbacks 2 30 + cr_equal 0 received_callbacks?id=type-status1 2 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type1 testdata/ecs/ei-type-1.json DEREGISTERED ecs_api_idc_put_subscription 201 subscription-id-2 owner2 $TYPESTATUS2 ecs_api_idc_get_subscription_ids 200 NOOWNER subscription-id-1 subscription-id-2 ecs_api_edp_put_type_2 201 type1 testdata/ecs/ei-type-1.json - cr_equal received_callbacks 4 30 - cr_equal received_callbacks?id=type-status1 3 - cr_equal received_callbacks?id=type-status2 1 - cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED + cr_equal 0 received_callbacks 4 30 + cr_equal 0 received_callbacks?id=type-status1 3 + cr_equal 0 received_callbacks?id=type-status2 1 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED ecs_api_idc_delete_subscription 204 subscription-id-2 ecs_api_edp_delete_type_2 204 type1 - cr_equal received_callbacks 5 30 - cr_equal received_callbacks?id=type-status1 4 - cr_equal received_callbacks?id=type-status2 1 - cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json DEREGISTERED + cr_equal 0 received_callbacks 5 30 + cr_equal 0 received_callbacks?id=type-status1 4 + cr_equal 0 received_callbacks?id=type-status2 1 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type1 testdata/ecs/ei-type-1.json DEREGISTERED - cr_api_reset + cr_api_reset 0 fi ### Setup prodstub sim to accept calls for producers, types and jobs @@ -251,7 +242,7 @@ prodstub_arm_job_create 200 prod-f job10 ### ecs status ecs_api_service_status 200 -cr_equal received_callbacks 0 +cr_equal 0 received_callbacks 0 ### Initial tests - no config made ### GET: type ids, types, producer ids, producers, job ids, jobs @@ -345,11 +336,11 @@ else ecs_api_edp_put_producer_2 200 prod-a $CB_JOB/prod-a $CB_SV/prod-a type1 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 3 30 - cr_equal received_callbacks?id=type-status1 3 - cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED type1 testdata/ecs/ei-type-1.json DEREGISTERED type1 testdata/ecs/ei-type-1.json REGISTERED + cr_equal 0 received_callbacks 3 30 + cr_equal 0 received_callbacks?id=type-status1 3 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED type1 testdata/ecs/ei-type-1.json DEREGISTERED type1 testdata/ecs/ei-type-1.json REGISTERED else - cr_equal received_callbacks 0 + cr_equal 0 received_callbacks 0 fi fi @@ -500,11 +491,11 @@ else ecs_api_edp_put_type_2 201 type2 testdata/ecs/ei-type-2.json ecs_api_edp_put_producer_2 201 prod-b $CB_JOB/prod-b $CB_SV/prod-b type2 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 4 30 - cr_equal received_callbacks?id=type-status1 4 - cr_api_check_all_ecs_subscription_events 200 type-status1 type2 testdata/ecs/ei-type-2.json REGISTERED + cr_equal 0 received_callbacks 4 30 + cr_equal 0 received_callbacks?id=type-status1 4 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type2 testdata/ecs/ei-type-2.json REGISTERED else - cr_equal received_callbacks 0 + cr_equal 0 received_callbacks 0 fi fi @@ -729,14 +720,14 @@ else fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 5 30 - cr_equal received_callbacks?id=type-status1 4 - cr_equal received_callbacks?id=job3-status 1 - cr_api_check_all_ecs_events 200 job3-status DISABLED + cr_equal 0 received_callbacks 5 30 + cr_equal 0 received_callbacks?id=type-status1 4 + cr_equal 0 received_callbacks?id=job3-status 1 + cr_api_check_all_ecs_events 200 0 job3-status DISABLED else - cr_equal received_callbacks 1 30 - cr_equal received_callbacks?id=job3-status 1 - cr_api_check_all_ecs_events 200 job3-status DISABLED + cr_equal 0 received_callbacks 1 30 + cr_equal 0 received_callbacks?id=job3-status 1 + cr_api_check_all_ecs_events 200 0 job3-status DISABLED fi # Re-create the producer @@ -755,14 +746,14 @@ else fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 6 30 - cr_equal received_callbacks?id=type-status1 4 - cr_equal received_callbacks?id=job3-status 2 - cr_api_check_all_ecs_events 200 job3-status ENABLED + cr_equal 0 received_callbacks 6 30 + cr_equal 0 received_callbacks?id=type-status1 4 + cr_equal 0 received_callbacks?id=job3-status 2 + cr_api_check_all_ecs_events 200 0 job3-status ENABLED else - cr_equal received_callbacks 2 30 - cr_equal received_callbacks?id=job3-status 2 - cr_api_check_all_ecs_events 200 job3-status ENABLED + cr_equal 0 received_callbacks 2 30 + cr_equal 0 received_callbacks?id=job3-status 2 + cr_api_check_all_ecs_events 200 0 job3-status ENABLED fi if [ $ECS_VERSION == "V1-1" ]; then @@ -784,9 +775,9 @@ else fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 7 30 - cr_equal received_callbacks?id=type-status1 5 - cr_api_check_all_ecs_subscription_events 200 type-status1 type4 testdata/ecs/ei-type-4.json REGISTERED + cr_equal 0 received_callbacks 7 30 + cr_equal 0 received_callbacks?id=type-status1 5 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type4 testdata/ecs/ei-type-4.json REGISTERED fi ecs_api_a1_get_job_ids 200 type4 NOWNER EMPTY @@ -839,14 +830,14 @@ else fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 8 30 - cr_equal received_callbacks?id=type-status1 5 - cr_equal received_callbacks?id=job8-status 1 - cr_api_check_all_ecs_events 200 job8-status DISABLED + cr_equal 0 received_callbacks 8 30 + cr_equal 0 received_callbacks?id=type-status1 5 + cr_equal 0 received_callbacks?id=job8-status 1 + cr_api_check_all_ecs_events 200 0 job8-status DISABLED else - cr_equal received_callbacks 3 30 - cr_equal received_callbacks?id=job8-status 1 - cr_api_check_all_ecs_events 200 job8-status DISABLED + cr_equal 0 received_callbacks 3 30 + cr_equal 0 received_callbacks?id=job8-status 1 + cr_api_check_all_ecs_events 200 0 job8-status DISABLED fi prodstub_equal create/prod-d/job8 1 @@ -879,16 +870,16 @@ ecs_api_edp_get_producer_status 200 prod-c ENABLED ecs_api_edp_get_producer_status 200 prod-d ENABLED if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 10 30 - cr_equal received_callbacks?id=type-status1 6 - cr_api_check_all_ecs_subscription_events 200 type-status1 type4 testdata/ecs/ei-type-4.json REGISTERED + cr_equal 0 received_callbacks 10 30 + cr_equal 0 received_callbacks?id=type-status1 6 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type4 testdata/ecs/ei-type-4.json REGISTERED - cr_equal received_callbacks?id=job8-status 2 - cr_api_check_all_ecs_events 200 job8-status ENABLED + cr_equal 0 received_callbacks?id=job8-status 2 + cr_api_check_all_ecs_events 200 0 job8-status ENABLED else - cr_equal received_callbacks 4 30 - cr_equal received_callbacks?id=job8-status 2 - cr_api_check_all_ecs_events 200 job8-status ENABLED + cr_equal 0 received_callbacks 4 30 + cr_equal 0 received_callbacks?id=job8-status 2 + cr_api_check_all_ecs_events 200 0 job8-status ENABLED fi prodstub_equal create/prod-d/job8 2 @@ -903,9 +894,9 @@ else fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 11 30 - cr_equal received_callbacks?id=type-status1 7 - cr_api_check_all_ecs_subscription_events 200 type-status1 type6 testdata/ecs/ei-type-6.json REGISTERED + cr_equal 0 received_callbacks 11 30 + cr_equal 0 received_callbacks?id=type-status1 7 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type6 testdata/ecs/ei-type-6.json REGISTERED fi ecs_api_a1_get_job_ids 200 type6 NOWNER EMPTY @@ -946,9 +937,9 @@ else fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 12 30 - cr_equal received_callbacks?id=type-status1 8 - cr_api_check_all_ecs_subscription_events 200 type-status1 type6 testdata/ecs/ei-type-6.json REGISTERED + cr_equal 0 received_callbacks 12 30 + cr_equal 0 received_callbacks?id=type-status1 8 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type6 testdata/ecs/ei-type-6.json REGISTERED fi ecs_api_a1_get_job_ids 200 type6 NOWNER job10 @@ -1125,16 +1116,16 @@ else fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 14 30 + cr_equal 0 received_callbacks 14 30 else - cr_equal received_callbacks 6 30 + cr_equal 0 received_callbacks 6 30 fi -cr_equal received_callbacks?id=job1-status 1 -cr_equal received_callbacks?id=job2-status 1 +cr_equal 0 received_callbacks?id=job1-status 1 +cr_equal 0 received_callbacks?id=job2-status 1 -cr_api_check_all_ecs_events 200 job1-status DISABLED -cr_api_check_all_ecs_events 200 job2-status DISABLED +cr_api_check_all_ecs_events 200 0 job1-status DISABLED +cr_api_check_all_ecs_events 200 0 job2-status DISABLED # Arm producer prod-e for supervision failure @@ -1241,9 +1232,9 @@ else fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 14 30 + cr_equal 0 received_callbacks 14 30 else - cr_equal received_callbacks 6 30 + cr_equal 0 received_callbacks 6 30 fi @@ -1379,11 +1370,11 @@ ecs_api_edp_put_producer_2 200 prod-ia $CB_JOB/prod-ia $CB_SV/prod-ia type101 ecs_api_edp_delete_type_2 406 type101 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 17 30 - cr_equal received_callbacks?id=type-status1 11 - cr_api_check_all_ecs_subscription_events 200 type-status1 type101 testdata/ecs/info-type-1.json REGISTERED type101 testdata/ecs/info-type-1.json DEREGISTERED type101 testdata/ecs/info-type-1.json REGISTERED + cr_equal 0 received_callbacks 17 30 + cr_equal 0 received_callbacks?id=type-status1 11 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type101 testdata/ecs/info-type-1.json REGISTERED type101 testdata/ecs/info-type-1.json DEREGISTERED type101 testdata/ecs/info-type-1.json REGISTERED else - cr_equal received_callbacks 6 + cr_equal 0 received_callbacks 6 fi ecs_api_edp_get_type_ids 200 type101 type1 type2 type4 type6 @@ -1450,11 +1441,11 @@ ecs_api_edp_put_type_2 201 type102 testdata/ecs/info-type-2.json ecs_api_edp_put_producer_2 201 prod-ib $CB_JOB/prod-ib $CB_SV/prod-ib type102 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 18 30 - cr_equal received_callbacks?id=type-status1 12 - cr_api_check_all_ecs_subscription_events 200 type-status1 type102 testdata/ecs/info-type-2.json REGISTERED + cr_equal 0 received_callbacks 18 30 + cr_equal 0 received_callbacks?id=type-status1 12 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type102 testdata/ecs/info-type-2.json REGISTERED else - cr_equal received_callbacks 6 + cr_equal 0 received_callbacks 6 fi ecs_api_idc_get_type_ids 200 type101 type102 type1 type2 type4 type6 @@ -1564,14 +1555,14 @@ ecs_api_edp_get_producer_ids_2 200 NOTYPE prod-ia prod-ic prod-b prod-c prod-d p ecs_api_idc_get_job_status2 200 job103 DISABLED EMPTYPROD if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 19 30 + cr_equal 0 received_callbacks 19 30 - cr_equal received_callbacks?id=info-job103-status 1 - cr_api_check_all_ecs_events 200 info-job103-status DISABLED + cr_equal 0 received_callbacks?id=info-job103-status 1 + cr_api_check_all_ecs_events 200 0 info-job103-status DISABLED else - cr_equal received_callbacks 7 30 - cr_equal received_callbacks?id=info-job103-status 1 - cr_api_check_all_ecs_events 200 info-job103-status DISABLED + cr_equal 0 received_callbacks 7 30 + cr_equal 0 received_callbacks?id=info-job103-status 1 + cr_api_check_all_ecs_events 200 0 info-job103-status DISABLED fi # Re-create the producer @@ -1582,13 +1573,13 @@ ecs_api_edp_get_producer_status 200 prod-ib ENABLED ecs_api_idc_get_job_status2 200 job103 ENABLED 1 prod-ib if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 20 30 - cr_equal received_callbacks?id=info-job103-status 2 - cr_api_check_all_ecs_events 200 info-job103-status ENABLED + cr_equal 0 received_callbacks 20 30 + cr_equal 0 received_callbacks?id=info-job103-status 2 + cr_api_check_all_ecs_events 200 0 info-job103-status ENABLED else - cr_equal received_callbacks 8 30 - cr_equal received_callbacks?id=info-job103-status 2 - cr_api_check_all_ecs_events 200 info-job103-status ENABLED + cr_equal 0 received_callbacks 8 30 + cr_equal 0 received_callbacks?id=info-job103-status 2 + cr_api_check_all_ecs_events 200 0 info-job103-status ENABLED fi prodstub_check_jobdata_3 200 prod-ib job103 type102 $TARGET103 info-owner-3 testdata/ecs/job-template2.json @@ -1619,16 +1610,16 @@ ecs_api_idc_get_job_ids 200 NOTYPE NOWNER job101 job102 job103 job108 job1 job2 ecs_api_idc_get_job_status2 200 job108 DISABLED EMPTYPROD if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 22 30 - cr_equal received_callbacks?id=type-status1 13 - cr_api_check_all_ecs_subscription_events 200 type-status1 type104 testdata/ecs/info-type-4.json REGISTERED + cr_equal 0 received_callbacks 22 30 + cr_equal 0 received_callbacks?id=type-status1 13 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type104 testdata/ecs/info-type-4.json REGISTERED - cr_equal received_callbacks?id=info-job108-status 1 - cr_api_check_all_ecs_events 200 info-job108-status DISABLED + cr_equal 0 received_callbacks?id=info-job108-status 1 + cr_api_check_all_ecs_events 200 0 info-job108-status DISABLED else - cr_equal received_callbacks 9 30 - cr_equal received_callbacks?id=info-job108-status 1 - cr_api_check_all_ecs_events 200 info-job108-status DISABLED + cr_equal 0 received_callbacks 9 30 + cr_equal 0 received_callbacks?id=info-job108-status 1 + cr_api_check_all_ecs_events 200 0 info-job108-status DISABLED fi prodstub_equal create/prod-id/job108 1 @@ -1650,17 +1641,17 @@ ecs_api_edp_get_producer_status 200 prod-ic ENABLED ecs_api_edp_get_producer_status 200 prod-id ENABLED if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 24 30 + cr_equal 0 received_callbacks 24 30 - cr_equal received_callbacks?id=type-status1 14 - cr_api_check_all_ecs_subscription_events 200 type-status1 type104 testdata/ecs/info-type-4.json REGISTERED + cr_equal 0 received_callbacks?id=type-status1 14 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type104 testdata/ecs/info-type-4.json REGISTERED - cr_equal received_callbacks?id=info-job108-status 2 - cr_api_check_all_ecs_events 200 info-job108-status ENABLED + cr_equal 0 received_callbacks?id=info-job108-status 2 + cr_api_check_all_ecs_events 200 0 info-job108-status ENABLED else - cr_equal received_callbacks 10 30 - cr_equal received_callbacks?id=info-job108-status 2 - cr_api_check_all_ecs_events 200 info-job108-status ENABLED + cr_equal 0 received_callbacks 10 30 + cr_equal 0 received_callbacks?id=info-job108-status 2 + cr_api_check_all_ecs_events 200 0 info-job108-status ENABLED fi prodstub_equal create/prod-id/job108 2 @@ -1689,10 +1680,10 @@ ecs_api_edp_put_type_2 200 type106 testdata/ecs/info-type-6.json ecs_api_edp_put_producer_2 201 prod-if $CB_JOB/prod-if $CB_SV/prod-if type106 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 26 30 + cr_equal 0 received_callbacks 26 30 - cr_equal received_callbacks?id=type-status1 16 - cr_api_check_all_ecs_subscription_events 200 type-status1 type106 testdata/ecs/info-type-6.json REGISTERED type106 testdata/ecs/info-type-6.json REGISTERED + cr_equal 0 received_callbacks?id=type-status1 16 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type106 testdata/ecs/info-type-6.json REGISTERED type106 testdata/ecs/info-type-6.json REGISTERED fi @@ -1807,19 +1798,19 @@ ecs_api_idc_get_job_status2 200 job110 ENABLED 2 prod-ie prod-if if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 28 30 + cr_equal 0 received_callbacks 28 30 - cr_equal received_callbacks?id=info-job101-status 1 - cr_equal received_callbacks?id=info-job102-status 1 - cr_api_check_all_ecs_events 200 info-job101-status DISABLED - cr_api_check_all_ecs_events 200 info-job102-status DISABLED + cr_equal 0 received_callbacks?id=info-job101-status 1 + cr_equal 0 received_callbacks?id=info-job102-status 1 + cr_api_check_all_ecs_events 200 0 info-job101-status DISABLED + cr_api_check_all_ecs_events 200 0 info-job102-status DISABLED else - cr_equal received_callbacks 12 30 + cr_equal 0 received_callbacks 12 30 - cr_equal received_callbacks?id=info-job101-status 1 - cr_equal received_callbacks?id=info-job102-status 1 - cr_api_check_all_ecs_events 200 info-job101-status DISABLED - cr_api_check_all_ecs_events 200 info-job102-status DISABLED + cr_equal 0 received_callbacks?id=info-job101-status 1 + cr_equal 0 received_callbacks?id=info-job102-status 1 + cr_api_check_all_ecs_events 200 0 info-job101-status DISABLED + cr_api_check_all_ecs_events 200 0 info-job102-status DISABLED fi @@ -1887,9 +1878,9 @@ ecs_api_idc_get_job_status2 200 job108 ENABLED 1 prod-id ecs_api_idc_get_job_status2 200 job110 ENABLED 1 prod-ie if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 28 + cr_equal 0 received_callbacks 28 else - cr_equal received_callbacks 12 + cr_equal 0 received_callbacks 12 fi ### Test of pre and post validation @@ -1937,11 +1928,11 @@ ecs_api_edp_put_type_2 201 type150 testdata/ecs/info-type-50.json ecs_api_idc_get_type_ids 200 type1 type2 type4 type6 type101 type102 type104 type106 type160 type150 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 30 30 - cr_equal received_callbacks?id=type-status1 18 - cr_api_check_all_ecs_subscription_events 200 type-status1 type160 testdata/ecs/info-type-60.json REGISTERED type150 testdata/ecs/info-type-50.json REGISTERED + cr_equal 0 received_callbacks 30 30 + cr_equal 0 received_callbacks?id=type-status1 18 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type160 testdata/ecs/info-type-60.json REGISTERED type150 testdata/ecs/info-type-50.json REGISTERED else - cr_equal received_callbacks 12 + cr_equal 0 received_callbacks 12 fi ecs_api_edp_put_producer_2 200 prod-ig $CB_JOB/prod-ig $CB_SV/prod-ig type160 type150 @@ -1958,10 +1949,10 @@ ecs_api_idc_get_job_status2 200 job150 ENABLED 1 prod-ig 60 ecs_api_idc_get_job_status2 200 job160 ENABLED 1 prod-ig if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 30 30 - cr_equal received_callbacks?id=type-status1 18 + cr_equal 0 received_callbacks 30 30 + cr_equal 0 received_callbacks?id=type-status1 18 else - cr_equal received_callbacks 12 + cr_equal 0 received_callbacks 12 fi # Test job deletion at type delete @@ -1974,18 +1965,18 @@ if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then ecs_api_edp_delete_type_2 204 type104 - cr_equal received_callbacks 32 30 - cr_equal received_callbacks?id=info-job108-status 3 - cr_equal received_callbacks?id=type-status1 19 - cr_api_check_all_ecs_subscription_events 200 type-status1 type104 testdata/ecs/info-type-4.json DEREGISTERED - cr_api_check_all_ecs_events 200 info-job108-status DISABLED + cr_equal 0 received_callbacks 32 30 + cr_equal 0 received_callbacks?id=info-job108-status 3 + cr_equal 0 received_callbacks?id=type-status1 19 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type104 testdata/ecs/info-type-4.json DEREGISTERED + cr_api_check_all_ecs_events 200 0 info-job108-status DISABLED ecs_api_edp_get_producer 404 prod-id ecs_api_idc_get_job 404 job-108 else - cr_equal received_callbacks 12 + cr_equal 0 received_callbacks 12 fi check_ecs_logs diff --git a/test/auto-test/FTC150.sh b/test/auto-test/FTC150.sh index f011a217..822f835e 100755 --- a/test/auto-test/FTC150.sh +++ b/test/auto-test/FTC150.sh @@ -32,10 +32,7 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/controller_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/kube_proxy_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment diff --git a/test/auto-test/FTC1800.sh b/test/auto-test/FTC1800.sh index 6241f3ca..232f901b 100755 --- a/test/auto-test/FTC1800.sh +++ b/test/auto-test/FTC1800.sh @@ -38,14 +38,7 @@ SUPPORTED_PROFILES="ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-RELEASE ORAN- #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/ecs_api_functions.sh -. ../common/prodstub_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -73,7 +66,7 @@ if [ ! -z "$NRT_GATEWAY_APP_NAME" ]; then start_gateway $SIM_GROUP/$NRT_GATEWAY_COMPOSE_DIR/$NRT_GATEWAY_CONFIG_FILE fi -start_cr +start_cr 1 CB_JOB="$PROD_STUB_SERVICE_PATH$PROD_STUB_JOB_CALLBACK" CB_SV="$PROD_STUB_SERVICE_PATH$PROD_STUB_SUPERVISION_CALLBACK" @@ -88,8 +81,8 @@ fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then #Type registration status callbacks - TYPESTATUS1="$CR_SERVICE_APP_PATH/type-status1" - TYPESTATUS2="$CR_SERVICE_APP_PATH/type-status2" + TYPESTATUS1="$CR_SERVICE_APP_PATH_0/type-status1" + TYPESTATUS2="$CR_SERVICE_APP_PATH_0/type-status2" ecs_api_idc_put_subscription 201 subscription-id-1 owner1 $TYPESTATUS1 @@ -219,11 +212,11 @@ else if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 20 30 - cr_equal received_callbacks?id=type-status1 10 - cr_equal received_callbacks?id=type-status2 10 + cr_equal 0 received_callbacks 20 30 + cr_equal 0 received_callbacks?id=type-status1 10 + cr_equal 0 received_callbacks?id=type-status2 10 - cr_api_check_all_ecs_subscription_events 200 type-status1 \ + cr_api_check_all_ecs_subscription_events 200 0 type-status1 \ type1 testdata/ecs/ei-type-1.json REGISTERED \ type2 testdata/ecs/ei-type-2.json REGISTERED \ type3 testdata/ecs/ei-type-3.json REGISTERED \ @@ -235,7 +228,7 @@ else type104 testdata/ecs/info-type-4.json REGISTERED \ type105 testdata/ecs/info-type-5.json REGISTERED - cr_api_check_all_ecs_subscription_events 200 type-status2 \ + cr_api_check_all_ecs_subscription_events 200 0 type-status2 \ type1 testdata/ecs/ei-type-1.json REGISTERED \ type2 testdata/ecs/ei-type-2.json REGISTERED \ type3 testdata/ecs/ei-type-3.json REGISTERED \ @@ -273,62 +266,62 @@ ecs_api_edp_get_producer_status 200 prod-d ENABLED for ((i=1; i<=$NUM_JOBS; i++)) do if [ $(($i%5)) -eq 0 ]; then - ecs_api_a1_put_job 201 job$i type1 $TARGET ric1 $CR_SERVICE_APP_PATH/job_status_ric1 testdata/ecs/job-template.json + ecs_api_a1_put_job 201 job$i type1 $TARGET ric1 $CR_SERVICE_APP_PATH_0/job_status_ric1 testdata/ecs/job-template.json if [ -z "$FLAT_A1_EI" ]; then ecs_api_a1_get_job_status 200 type1 job$i ENABLED else ecs_api_a1_get_job_status 200 job$i ENABLED 120 fi if [ $use_info_jobs ]; then - ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type101 $TARGET info-owner $CR_SERVICE_APP_PATH/job_status_info-owner testdata/ecs/job-template.json VALIDATE + ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type101 $TARGET info-owner $CR_SERVICE_APP_PATH_0/job_status_info-owner testdata/ecs/job-template.json VALIDATE ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 3 prod-a prod-b prod-c 120 fi fi if [ $(($i%5)) -eq 1 ]; then - ecs_api_a1_put_job 201 job$i type2 $TARGET ric1 $CR_SERVICE_APP_PATH/job_status_ric1 testdata/ecs/job-template.json + ecs_api_a1_put_job 201 job$i type2 $TARGET ric1 $CR_SERVICE_APP_PATH_0/job_status_ric1 testdata/ecs/job-template.json if [ -z "$FLAT_A1_EI" ]; then ecs_api_a1_get_job_status 200 type2 job$i ENABLED else ecs_api_a1_get_job_status 200 job$i ENABLED 120 fi if [ $use_info_jobs ]; then - ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type102 $TARGET info-owner $CR_SERVICE_APP_PATH/job_status_info-owner testdata/ecs/job-template.json VALIDATE + ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type102 $TARGET info-owner $CR_SERVICE_APP_PATH_0/job_status_info-owner testdata/ecs/job-template.json VALIDATE ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 2 prod-b prod-c 120 fi fi if [ $(($i%5)) -eq 2 ]; then - ecs_api_a1_put_job 201 job$i type3 $TARGET ric1 $CR_SERVICE_APP_PATH/job_status_ric1 testdata/ecs/job-template.json + ecs_api_a1_put_job 201 job$i type3 $TARGET ric1 $CR_SERVICE_APP_PATH_0/job_status_ric1 testdata/ecs/job-template.json if [ -z "$FLAT_A1_EI" ]; then ecs_api_a1_get_job_status 200 type3 job$i ENABLED else ecs_api_a1_get_job_status 200 job$i ENABLED 120 fi if [ $use_info_jobs ]; then - ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type103 $TARGET info-owner $CR_SERVICE_APP_PATH/job_status_info-owner testdata/ecs/job-template.json VALIDATE + ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type103 $TARGET info-owner $CR_SERVICE_APP_PATH_0/job_status_info-owner testdata/ecs/job-template.json VALIDATE ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 1 prod-c 120 fi fi if [ $(($i%5)) -eq 3 ]; then - ecs_api_a1_put_job 201 job$i type4 $TARGET ric1 $CR_SERVICE_APP_PATH/job_status_ric1 testdata/ecs/job-template.json + ecs_api_a1_put_job 201 job$i type4 $TARGET ric1 $CR_SERVICE_APP_PATH_0/job_status_ric1 testdata/ecs/job-template.json if [ -z "$FLAT_A1_EI" ]; then ecs_api_a1_get_job_status 200 type4 job$i ENABLED else ecs_api_a1_get_job_status 200 job$i ENABLED 120 fi if [ $use_info_jobs ]; then - ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type104 $TARGET info-owner $CR_SERVICE_APP_PATH/job_status_info-owner testdata/ecs/job-template.json VALIDATE + ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type104 $TARGET info-owner $CR_SERVICE_APP_PATH_0/job_status_info-owner testdata/ecs/job-template.json VALIDATE ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 1 prod-d 120 fi fi if [ $(($i%5)) -eq 4 ]; then - ecs_api_a1_put_job 201 job$i type5 $TARGET ric1 $CR_SERVICE_APP_PATH/job_status_ric1 testdata/ecs/job-template.json + ecs_api_a1_put_job 201 job$i type5 $TARGET ric1 $CR_SERVICE_APP_PATH_0/job_status_ric1 testdata/ecs/job-template.json if [ -z "$FLAT_A1_EI" ]; then ecs_api_a1_get_job_status 200 type5 job$i ENABLED else ecs_api_a1_get_job_status 200 job$i ENABLED 120 fi if [ $use_info_jobs ]; then - ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type105 $TARGET info-owner $CR_SERVICE_APP_PATH/job_status_info-owner testdata/ecs/job-template.json VALIDATE + ecs_api_idc_put_job 201 job$(($i+$NUM_JOBS)) type105 $TARGET info-owner $CR_SERVICE_APP_PATH_0/job_status_info-owner testdata/ecs/job-template.json VALIDATE ecs_api_idc_get_job_status2 200 job$(($i+$NUM_JOBS)) ENABLED 1 prod-d 120 fi fi @@ -356,10 +349,10 @@ if [ $use_info_jobs ]; then fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 20 30 + cr_equal 0 received_callbacks 20 30 else - cr_equal received_callbacks 0 30 + cr_equal 0 received_callbacks 0 30 fi @@ -381,7 +374,7 @@ fi stop_ecs -cr_api_reset +cr_api_reset 0 start_stopped_ecs @@ -401,7 +394,7 @@ if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then fi fi -cr_equal received_callbacks 0 +cr_equal 0 received_callbacks 0 for ((i=1; i<=$NUM_JOBS; i++)) do @@ -787,18 +780,18 @@ if [ $use_info_jobs ]; then fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 10 30 - cr_equal received_callbacks?id=type-status1 5 - cr_equal received_callbacks?id=type-status2 5 + cr_equal 0 received_callbacks 10 30 + cr_equal 0 received_callbacks?id=type-status1 5 + cr_equal 0 received_callbacks?id=type-status2 5 - cr_api_check_all_ecs_subscription_events 200 type-status1 \ + cr_api_check_all_ecs_subscription_events 200 0 type-status1 \ type101 testdata/ecs/info-type-1.json REGISTERED \ type102 testdata/ecs/info-type-2.json REGISTERED \ type103 testdata/ecs/info-type-3.json REGISTERED \ type104 testdata/ecs/info-type-4.json REGISTERED \ type105 testdata/ecs/info-type-5.json REGISTERED - cr_api_check_all_ecs_subscription_events 200 type-status2 \ + cr_api_check_all_ecs_subscription_events 200 0 type-status2 \ type101 testdata/ecs/info-type-1.json REGISTERED \ type102 testdata/ecs/info-type-2.json REGISTERED \ type103 testdata/ecs/info-type-3.json REGISTERED \ @@ -806,7 +799,7 @@ if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then type105 testdata/ecs/info-type-5.json REGISTERED else - cr_equal received_callbacks 0 30 + cr_equal 0 received_callbacks 0 30 fi check_ecs_logs diff --git a/test/auto-test/FTC2001.sh b/test/auto-test/FTC2001.sh index f1948179..e7d511fd 100755 --- a/test/auto-test/FTC2001.sh +++ b/test/auto-test/FTC2001.sh @@ -38,17 +38,6 @@ SUPPORTED_PROFILES="ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-RELEASE ORAN- SUPPORTED_RUNMODES="DOCKER KUBE" . ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/ecs_api_functions.sh -. ../common/prodstub_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/http_proxy_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh setup_testenvironment @@ -64,7 +53,7 @@ use_ecs_rest_https use_prod_stub_https if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else echo "PMS VERSION 2 (V2) is required" exit 1 @@ -102,7 +91,7 @@ else consul_config_app ".consul_config.json" fi -start_cr +start_cr 1 start_prod_stub @@ -144,7 +133,7 @@ done #Check the number of types api_equal json:policy-types 2 300 -api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH/1" +api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH_0/1" # Create policies in STD for ((i=1; i<=$STD_NUM_RICS; i++)) @@ -182,8 +171,8 @@ fi TARGET1="$RIC_SIM_HTTPX://$RIC_G1_1:$RIC_SIM_PORT/datadelivery" TARGET2="$RIC_SIM_HTTPX://$RIC_G1_1:$RIC_SIM_PORT/datadelivery" -STATUS1="$CR_SERVICE_APP_PATH/job1-status" -STATUS2="$CR_SERVICE_APP_PATH/job2-status" +STATUS1="$CR_SERVICE_APP_PATH_0/job1-status" +STATUS2="$CR_SERVICE_APP_PATH_0/job2-status" prodstub_arm_producer 200 prod-a prodstub_arm_type 200 prod-a type1 @@ -195,7 +184,7 @@ ecs_api_service_status 200 if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then #Type registration status callbacks - TYPESTATUS1="$CR_SERVICE_APP_PATH/type-status1" + TYPESTATUS1="$CR_SERVICE_APP_PATH_0/type-status1" ecs_api_idc_put_subscription 201 subscription-id-1 owner1 $TYPESTATUS1 @@ -270,17 +259,17 @@ else fi if [[ "$ECS_FEATURE_LEVEL" == *"TYPE-SUBSCRIPTIONS"* ]]; then - cr_equal received_callbacks 3 30 - cr_api_check_all_ecs_subscription_events 200 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED - cr_api_check_all_ecs_events 200 job1-status DISABLED - cr_api_check_all_ecs_events 200 job2-status DISABLED + cr_equal 0 received_callbacks 3 30 + cr_api_check_all_ecs_subscription_events 200 0 type-status1 type1 testdata/ecs/ei-type-1.json REGISTERED + cr_api_check_all_ecs_events 200 0 job1-status DISABLED + cr_api_check_all_ecs_events 200 0 job2-status DISABLED else - cr_equal received_callbacks 2 30 - cr_api_check_all_ecs_events 200 job1-status DISABLED - cr_api_check_all_ecs_events 200 job2-status DISABLED + cr_equal 0 received_callbacks 2 30 + cr_api_check_all_ecs_events 200 0 job1-status DISABLED + cr_api_check_all_ecs_events 200 0 job2-status DISABLED fi -cr_contains_str remote_hosts $HTTP_PROXY_APP_NAME +cr_contains_str 0 remote_hosts $HTTP_PROXY_APP_NAME check_policy_agent_logs check_ecs_logs diff --git a/test/auto-test/FTC2002.sh b/test/auto-test/FTC2002.sh index 321dd24a..1b057639 100755 --- a/test/auto-test/FTC2002.sh +++ b/test/auto-test/FTC2002.sh @@ -31,11 +31,7 @@ SUPPORTED_PROFILES="ONAP-ISTANBUL" #Supported run modes SUPPORTED_RUNMODES="DOCKER" -. ../common/testcase_common.sh $@ -. ../common/controller_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/http_proxy_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment diff --git a/test/auto-test/FTC2003.sh b/test/auto-test/FTC2003.sh index 6e22ced1..ae0fbb60 100755 --- a/test/auto-test/FTC2003.sh +++ b/test/auto-test/FTC2003.sh @@ -38,12 +38,6 @@ SUPPORTED_PROFILES="ORAN-E-RELEASE" SUPPORTED_RUNMODES="DOCKER KUBE" . ../common/testcase_common.sh $@ -. ../common/ecs_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/http_proxy_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/dmaapadp_api_functions.sh setup_testenvironment @@ -66,7 +60,7 @@ start_kube_proxy start_http_proxy -start_cr +start_cr 1 start_ecs NOPROXY $SIM_GROUP/$ECS_COMPOSE_DIR/$ECS_CONFIG_FILE @@ -92,7 +86,7 @@ ecs_api_edp_get_producer_ids_2 200 NOTYPE DmaapGenericInfoProducer for ((i=1; i<=$NUM_JOBS; i++)) do - ecs_api_idc_put_job 201 joby$i ExampleInformationType $CR_SERVICE_MR_PATH/joby-data$i info-ownery$i $CR_SERVICE_MR_PATH/job_status_info-ownery$i testdata/dmaap-adapter/job-template.json + ecs_api_idc_put_job 201 joby$i ExampleInformationType $CR_SERVICE_MR_PATH_0/joby-data$i info-ownery$i $CR_SERVICE_MR_PATH_0/job_status_info-ownery$i testdata/dmaap-adapter/job-template.json done for ((i=1; i<=$NUM_JOBS; i++)) @@ -105,20 +99,20 @@ done mr_api_send_json "/events/unauthenticated.dmaapadp.json" '{"msg":"msg-1"}' mr_api_send_json "/events/unauthenticated.dmaapadp.json" '{"msg":"msg-3"}' -cr_equal received_callbacks $(($NUM_JOBS*2)) 60 +cr_equal 0 received_callbacks $(($NUM_JOBS*2)) 60 for ((i=1; i<=$NUM_JOBS; i++)) do - cr_equal received_callbacks?id=joby-data$i 2 + cr_equal 0 received_callbacks?id=joby-data$i 2 done for ((i=1; i<=$NUM_JOBS; i++)) do - cr_api_check_single_genric_json_event 200 joby-data$i '{"msg":"msg-1"}' - cr_api_check_single_genric_json_event 200 joby-data$i '{"msg":"msg-3"}' + cr_api_check_single_genric_json_event 200 0 joby-data$i '{"msg":"msg-1"}' + cr_api_check_single_genric_json_event 200 0 joby-data$i '{"msg":"msg-3"}' done -cr_contains_str remote_hosts $HTTP_PROXY_APP_NAME +cr_contains_str 0 remote_hosts $HTTP_PROXY_APP_NAME #### TEST COMPLETE #### diff --git a/test/auto-test/FTC300.sh b/test/auto-test/FTC300.sh index 4503c88b..232e5a84 100755 --- a/test/auto-test/FTC300.sh +++ b/test/auto-test/FTC300.sh @@ -37,16 +37,7 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -109,7 +100,7 @@ for __httpx in $TESTED_PROTOCOLS ; do start_mr - start_cr + start_cr 1 if [ $RUNMODE == "DOCKER" ]; then start_consul_cbs @@ -156,13 +147,13 @@ for __httpx in $TESTED_PROTOCOLS ; do api_equal json:policy_types 2 120 #Wait for the agent to refresh types from the simulator fi - api_put_service 201 "serv1" 3600 "$CR_SERVICE_APP_PATH/1" + api_put_service 201 "serv1" 3600 "$CR_SERVICE_APP_PATH_0/1" START_ID=2000 NUM_POLICIES=10000 # Must be at least 100 if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi diff --git a/test/auto-test/FTC3000.sh b/test/auto-test/FTC3000.sh index 4c261b4c..a1c4fcaa 100755 --- a/test/auto-test/FTC3000.sh +++ b/test/auto-test/FTC3000.sh @@ -39,21 +39,6 @@ SUPPORTED_PROFILES="ORAN-E-RELEASE" SUPPORTED_RUNMODES="DOCKER KUBE" . ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/ecs_api_functions.sh -. ../common/prodstub_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/rapp_catalogue_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/http_proxy_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh -. ../common/dmaapmed_api_functions.sh -. ../common/dmaapadp_api_functions.sh setup_testenvironment @@ -62,7 +47,13 @@ setup_testenvironment #Local vars in test script ########################## FLAT_A1_EI="1" -NUM_JOBS=100 # Mediator and adapter gets same number of jobs +NUM_CR=10 # Number of callback receivers, divide all callbacks to this number of servers - for load sharing +## Note: The number jobs must be a multiple of the number of CRs in order to calculate the number of expected event in each CR +NUM_JOBS=200 # Mediator and adapter gets same number of jobs for every type + +if [ $NUM_JOBS -lt $NUM_CR ]; then + __log_conf_fail_general "Number of jobs: $NUM_JOBS must be greater then the number of CRs: $NUM_CR" +fi clean_environment @@ -75,7 +66,7 @@ use_dmaapmed_https start_kube_proxy -start_cr +start_cr $NUM_CR start_ecs NOPROXY $SIM_GROUP/$ECS_COMPOSE_DIR/$ECS_CONFIG_FILE @@ -103,27 +94,36 @@ ecs_api_edp_get_producer_ids_2 200 NOTYPE DmaapGenericInfoProducer DMaaP_Mediato start_timer "Create adapter jobs: $NUM_JOBS" for ((i=1; i<=$NUM_JOBS; i++)) do - ecs_api_idc_put_job 201 job-adp-$i ExampleInformationType $CR_SERVICE_MR_PATH/job-adp-data$i"?storeas=md5" info-owner-adp-$i $CR_SERVICE_APP_PATH/job_status_info-owner-adp-$i testdata/dmaap-adapter/job-template.json + cr_index=$(($i%$NUM_CR)) + service_mr="CR_SERVICE_MR_PATH_"$cr_index + service_app="CR_SERVICE_APP_PATH_"$cr_index + ecs_api_idc_put_job 201 job-adp-$i ExampleInformationType ${!service_mr}/job-adp-data$i"?storeas=md5" info-owner-adp-$i ${!service_app}/job_status_info-owner-adp-$i testdata/dmaap-adapter/job-template.json done -print_timer "Create adapter jobs: $NUM_JOBS" +print_timer # Create jobs for adapter kafka - CR stores data as MD5 hash start_timer "Create adapter (kafka) jobs: $NUM_JOBS" for ((i=1; i<=$NUM_JOBS; i++)) do - ecs_api_idc_put_job 201 job-adp-kafka-$i ExampleInformationTypeKafka $CR_SERVICE_TEXT_PATH/job-adp-kafka-data$i"?storeas=md5" info-owner-adp-kafka-$i $CR_SERVICE_APP_PATH/job_status_info-owner-adp-kafka-$i testdata/dmaap-adapter/job-template-1-kafka.json + cr_index=$(($i%$NUM_CR)) + service_text="CR_SERVICE_TEXT_PATH_"$cr_index + service_app="CR_SERVICE_APP_PATH_"$cr_index + ecs_api_idc_put_job 201 job-adp-kafka-$i ExampleInformationTypeKafka ${!service_text}/job-adp-kafka-data$i"?storeas=md5" info-owner-adp-kafka-$i ${!service_app}/job_status_info-owner-adp-kafka-$i testdata/dmaap-adapter/job-template-1-kafka.json done -print_timer "Create adapter (kafka) jobs: $NUM_JOBS" +print_timer # Create jobs for mediator - CR stores data as MD5 hash start_timer "Create mediator jobs: $NUM_JOBS" for ((i=1; i<=$NUM_JOBS; i++)) do - ecs_api_idc_put_job 201 job-med-$i STD_Fault_Messages $CR_SERVICE_MR_PATH/job-med-data$i"?storeas=md5" info-owner-med-$i $CR_SERVICE_APP_PATH/job_status_info-owner-med-$i testdata/dmaap-adapter/job-template.json + cr_index=$(($i%$NUM_CR)) + service_mr="CR_SERVICE_MR_PATH_"$cr_index + service_app="CR_SERVICE_APP_PATH_"$cr_index + ecs_api_idc_put_job 201 job-med-$i STD_Fault_Messages ${!service_mr}/job-med-data$i"?storeas=md5" info-owner-med-$i ${!service_app}/job_status_info-owner-med-$i testdata/dmaap-adapter/job-template.json done -print_timer "Create mediator jobs: $NUM_JOBS" +print_timer # Check job status for ((i=1; i<=$NUM_JOBS; i++)) @@ -134,109 +134,155 @@ do done -EXPECTED_DATA_DELIV=0 +EXPECTED_DATA_DELIV=0 #Total delivered msg per CR +DATA_DELIV_JOBS=0 #Total delivered msg per job per CR mr_api_generate_json_payload_file 1 ./tmp/data_for_dmaap_test.json mr_api_generate_text_payload_file 1 ./tmp/data_for_dmaap_test.txt ## Send json file via message-router to adapter - -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) - +DATA_DELIV_JOBS=5 #Each job will eventuall get 2 msgs +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_json_file "/events/unauthenticated.dmaapadp.json" ./tmp/data_for_dmaap_test.json -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_json_file "/events/unauthenticated.dmaapadp.json" ./tmp/data_for_dmaap_test.json -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_json_file "/events/unauthenticated.dmaapadp.json" ./tmp/data_for_dmaap_test.json -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_json_file "/events/unauthenticated.dmaapadp.json" ./tmp/data_for_dmaap_test.json -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_json_file "/events/unauthenticated.dmaapadp.json" ./tmp/data_for_dmaap_test.json -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done # Check received data callbacks from adapter for ((i=1; i<=$NUM_JOBS; i++)) do - cr_api_check_single_genric_event_md5_file 200 job-adp-data$i ./tmp/data_for_dmaap_test.json - cr_api_check_single_genric_event_md5_file 200 job-adp-data$i ./tmp/data_for_dmaap_test.json - cr_api_check_single_genric_event_md5_file 200 job-adp-data$i ./tmp/data_for_dmaap_test.json - cr_api_check_single_genric_event_md5_file 200 job-adp-data$i ./tmp/data_for_dmaap_test.json - cr_api_check_single_genric_event_md5_file 200 job-adp-data$i ./tmp/data_for_dmaap_test.json + cr_index=$(($i%$NUM_CR)) + cr_api_check_single_genric_event_md5_file 200 $cr_index job-adp-data$i ./tmp/data_for_dmaap_test.json + cr_api_check_single_genric_event_md5_file 200 $cr_index job-adp-data$i ./tmp/data_for_dmaap_test.json + cr_api_check_single_genric_event_md5_file 200 $cr_index job-adp-data$i ./tmp/data_for_dmaap_test.json + cr_api_check_single_genric_event_md5_file 200 $cr_index job-adp-data$i ./tmp/data_for_dmaap_test.json + cr_api_check_single_genric_event_md5_file 200 $cr_index job-adp-data$i ./tmp/data_for_dmaap_test.json done ## Send text file via message-router to adapter kafka -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) - +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_text_file "/events/unauthenticated.dmaapadp_kafka.text" ./tmp/data_for_dmaap_test.txt -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_text_file "/events/unauthenticated.dmaapadp_kafka.text" ./tmp/data_for_dmaap_test.txt -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_text_file "/events/unauthenticated.dmaapadp_kafka.text" ./tmp/data_for_dmaap_test.txt -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_text_file "/events/unauthenticated.dmaapadp_kafka.text" ./tmp/data_for_dmaap_test.txt -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_text_file "/events/unauthenticated.dmaapadp_kafka.text" ./tmp/data_for_dmaap_test.txt -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done # Check received data callbacks from adapter kafka for ((i=1; i<=$NUM_JOBS; i++)) do - cr_api_check_single_genric_event_md5_file 200 job-adp-kafka-data$i ./tmp/data_for_dmaap_test.txt - cr_api_check_single_genric_event_md5_file 200 job-adp-kafka-data$i ./tmp/data_for_dmaap_test.txt - cr_api_check_single_genric_event_md5_file 200 job-adp-kafka-data$i ./tmp/data_for_dmaap_test.txt - cr_api_check_single_genric_event_md5_file 200 job-adp-kafka-data$i ./tmp/data_for_dmaap_test.txt - cr_api_check_single_genric_event_md5_file 200 job-adp-kafka-data$i ./tmp/data_for_dmaap_test.txt + cr_index=$(($i%$NUM_CR)) + cr_api_check_single_genric_event_md5_file 200 $cr_index job-adp-kafka-data$i ./tmp/data_for_dmaap_test.txt + cr_api_check_single_genric_event_md5_file 200 $cr_index job-adp-kafka-data$i ./tmp/data_for_dmaap_test.txt + cr_api_check_single_genric_event_md5_file 200 $cr_index job-adp-kafka-data$i ./tmp/data_for_dmaap_test.txt + cr_api_check_single_genric_event_md5_file 200 $cr_index job-adp-kafka-data$i ./tmp/data_for_dmaap_test.txt + cr_api_check_single_genric_event_md5_file 200 $cr_index job-adp-kafka-data$i ./tmp/data_for_dmaap_test.txt done ## Send json file via message-router to mediator -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) - +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_json_file "/events/unauthenticated.dmaapmed.json" ./tmp/data_for_dmaap_test.json -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_json_file "/events/unauthenticated.dmaapmed.json" ./tmp/data_for_dmaap_test.json -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_json_file "/events/unauthenticated.dmaapmed.json" ./tmp/data_for_dmaap_test.json -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_json_file "/events/unauthenticated.dmaapmed.json" ./tmp/data_for_dmaap_test.json -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done -EXPECTED_DATA_DELIV=$(($NUM_JOBS+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS/$NUM_CR+$EXPECTED_DATA_DELIV)) mr_api_send_json_file "/events/unauthenticated.dmaapmed.json" ./tmp/data_for_dmaap_test.json -cr_equal received_callbacks $EXPECTED_DATA_DELIV 200 +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done # Check received data callbacks from mediator for ((i=1; i<=$NUM_JOBS; i++)) do - cr_api_check_single_genric_event_md5_file 200 job-med-data$i ./tmp/data_for_dmaap_test.json - cr_api_check_single_genric_event_md5_file 200 job-med-data$i ./tmp/data_for_dmaap_test.json - cr_api_check_single_genric_event_md5_file 200 job-med-data$i ./tmp/data_for_dmaap_test.json - cr_api_check_single_genric_event_md5_file 200 job-med-data$i ./tmp/data_for_dmaap_test.json - cr_api_check_single_genric_event_md5_file 200 job-med-data$i ./tmp/data_for_dmaap_test.json + cr_index=$(($i%$NUM_CR)) + cr_api_check_single_genric_event_md5_file 200 $cr_index job-med-data$i ./tmp/data_for_dmaap_test.json + cr_api_check_single_genric_event_md5_file 200 $cr_index job-med-data$i ./tmp/data_for_dmaap_test.json + cr_api_check_single_genric_event_md5_file 200 $cr_index job-med-data$i ./tmp/data_for_dmaap_test.json + cr_api_check_single_genric_event_md5_file 200 $cr_index job-med-data$i ./tmp/data_for_dmaap_test.json + cr_api_check_single_genric_event_md5_file 200 $cr_index job-med-data$i ./tmp/data_for_dmaap_test.json done @@ -244,64 +290,83 @@ done mr_api_send_json "/events/unauthenticated.dmaapadp.json" '{"msg":"msg-1"}' mr_api_send_json "/events/unauthenticated.dmaapadp.json" '{"msg":"msg-3"}' +DATA_DELIV_JOBS=7 #Each job will eventuall get 5+2 msgs + # Wait for data recetption, adapter -EXPECTED_DATA_DELIV=$(($NUM_JOBS*2+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS*2/$NUM_CR+$EXPECTED_DATA_DELIV)) start_timer "Data delivery adapter, 2 json per job" -cr_equal received_callbacks $EXPECTED_DATA_DELIV 100 -print_timer "Data delivery adapter, 2 json per job" +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done +print_timer # Send small text via message-routere to adapter mr_api_send_text "/events/unauthenticated.dmaapadp_kafka.text" 'Message-------1' mr_api_send_text "/events/unauthenticated.dmaapadp_kafka.text" 'Message-------3' # Wait for data recetption, adapter kafka -EXPECTED_DATA_DELIV=$(($NUM_JOBS*2+$EXPECTED_DATA_DELIV)) -start_timer "Data delivery adapte kafkar, 2 strings per job" -cr_equal received_callbacks $EXPECTED_DATA_DELIV 100 -print_timer "Data delivery adapte kafkar, 2 strings per job" +EXPECTED_DATA_DELIV=$(($NUM_JOBS*2/$NUM_CR+$EXPECTED_DATA_DELIV)) +start_timer "Data delivery adapter kafka, 2 strings per job" +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 60 +done +print_timer # Send small json via message-router to mediator mr_api_send_json "/events/unauthenticated.dmaapmed.json" '{"msg":"msg-0"}' mr_api_send_json "/events/unauthenticated.dmaapmed.json" '{"msg":"msg-2"}' # Wait for data reception, mediator -EXPECTED_DATA_DELIV=$(($NUM_JOBS*2+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS*2/$NUM_CR+$EXPECTED_DATA_DELIV)) start_timer "Data delivery mediator, 2 json per job" -cr_equal received_callbacks $EXPECTED_DATA_DELIV 100 -print_timer "Data delivery mediator, 2 json per job" +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 100 +done +print_timer # Check received number of messages for mediator and adapter callbacks for ((i=1; i<=$NUM_JOBS; i++)) do - cr_equal received_callbacks?id=job-med-data$i 7 - cr_equal received_callbacks?id=job-adp-data$i 7 - cr_equal received_callbacks?id=job-adp-kafka-data$i 7 + cr_index=$(($i%$NUM_CR)) + cr_equal $cr_index received_callbacks?id=job-med-data$i $DATA_DELIV_JOBS + cr_equal $cr_index received_callbacks?id=job-adp-data$i $DATA_DELIV_JOBS + cr_equal $cr_index received_callbacks?id=job-adp-kafka-data$i $DATA_DELIV_JOBS done # Check received data and order for mediator and adapter callbacks for ((i=1; i<=$NUM_JOBS; i++)) do - cr_api_check_single_genric_event_md5 200 job-med-data$i '{"msg":"msg-0"}' - cr_api_check_single_genric_event_md5 200 job-med-data$i '{"msg":"msg-2"}' - cr_api_check_single_genric_event_md5 200 job-adp-data$i '{"msg":"msg-1"}' - cr_api_check_single_genric_event_md5 200 job-adp-data$i '{"msg":"msg-3"}' - cr_api_check_single_genric_event_md5 200 job-adp-kafka-data$i 'Message-------1' - cr_api_check_single_genric_event_md5 200 job-adp-kafka-data$i 'Message-------3' + cr_index=$(($i%$NUM_CR)) + cr_api_check_single_genric_event_md5 200 $cr_index job-med-data$i '{"msg":"msg-0"}' + cr_api_check_single_genric_event_md5 200 $cr_index job-med-data$i '{"msg":"msg-2"}' + cr_api_check_single_genric_event_md5 200 $cr_index job-adp-data$i '{"msg":"msg-1"}' + cr_api_check_single_genric_event_md5 200 $cr_index job-adp-data$i '{"msg":"msg-3"}' + cr_api_check_single_genric_event_md5 200 $cr_index job-adp-kafka-data$i 'Message-------1' + cr_api_check_single_genric_event_md5 200 $cr_index job-adp-kafka-data$i 'Message-------3' done # Set delay in the callback receiver to slow down callbacks SEC_DELAY=2 -cr_delay_callback 200 $SEC_DELAY +for ((i=0; i<$NUM_CR; i++)) +do + cr_delay_callback 200 $i $SEC_DELAY +done # Send small json via message-router to adapter mr_api_send_json "/events/unauthenticated.dmaapadp.json" '{"msg":"msg-5"}' mr_api_send_json "/events/unauthenticated.dmaapadp.json" '{"msg":"msg-7"}' # Wait for data recetption, adapter -EXPECTED_DATA_DELIV=$(($NUM_JOBS*2+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS*2/$NUM_CR+$EXPECTED_DATA_DELIV)) start_timer "Data delivery adapter with $SEC_DELAY seconds delay in consumer, 2 json per job" -cr_equal received_callbacks $EXPECTED_DATA_DELIV $(($NUM_JOBS+300)) -print_timer "Data delivery adapter with $SEC_DELAY seconds delay in consumer, 2 json per job" +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 100 +done +print_timer # Send small text via message-router to adapter kafka @@ -309,10 +374,13 @@ mr_api_send_text "/events/unauthenticated.dmaapadp_kafka.text" 'Message-------5' mr_api_send_text "/events/unauthenticated.dmaapadp_kafka.text" 'Message-------7' # Wait for data recetption, adapter kafka -EXPECTED_DATA_DELIV=$(($NUM_JOBS*2+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS*2/$NUM_CR+$EXPECTED_DATA_DELIV)) start_timer "Data delivery adapter kafka with $SEC_DELAY seconds delay in consumer, 2 strings per job" -cr_equal received_callbacks $EXPECTED_DATA_DELIV $(($NUM_JOBS+300)) -print_timer "Data delivery adapter with kafka $SEC_DELAY seconds delay in consumer, 2 strings per job" +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 100 +done +print_timer # Send small json via message-router to mediator @@ -320,28 +388,33 @@ mr_api_send_json "/events/unauthenticated.dmaapmed.json" '{"msg":"msg-4"}' mr_api_send_json "/events/unauthenticated.dmaapmed.json" '{"msg":"msg-6"}' # Wait for data reception, mediator -EXPECTED_DATA_DELIV=$(($NUM_JOBS*2+$EXPECTED_DATA_DELIV)) +EXPECTED_DATA_DELIV=$(($NUM_JOBS*2/$NUM_CR+$EXPECTED_DATA_DELIV)) start_timer "Data delivery mediator with $SEC_DELAY seconds delay in consumer, 2 json per job" -cr_equal received_callbacks $EXPECTED_DATA_DELIV 1000 -print_timer "Data delivery mediator with $SEC_DELAY seconds delay in consumer, 2 json per job" +for ((i=0; i<$NUM_CR; i++)) +do + cr_equal $i received_callbacks $EXPECTED_DATA_DELIV 100 +done +print_timer # Check received number of messages for mediator and adapter callbacks for ((i=1; i<=$NUM_JOBS; i++)) do - cr_equal received_callbacks?id=job-med-data$i 9 - cr_equal received_callbacks?id=job-adp-data$i 9 - cr_equal received_callbacks?id=job-adp-kafka-data$i 9 + cr_index=$(($i%$NUM_CR)) + cr_equal $cr_index received_callbacks?id=job-med-data$i 9 + cr_equal $cr_index received_callbacks?id=job-adp-data$i 9 + cr_equal $cr_index received_callbacks?id=job-adp-kafka-data$i 9 done # Check received data and order for mediator and adapter callbacks for ((i=1; i<=$NUM_JOBS; i++)) do - cr_api_check_single_genric_event_md5 200 job-med-data$i '{"msg":"msg-4"}' - cr_api_check_single_genric_event_md5 200 job-med-data$i '{"msg":"msg-6"}' - cr_api_check_single_genric_event_md5 200 job-adp-data$i '{"msg":"msg-5"}' - cr_api_check_single_genric_event_md5 200 job-adp-data$i '{"msg":"msg-7"}' - cr_api_check_single_genric_event_md5 200 job-adp-kafka-data$i 'Message-------5' - cr_api_check_single_genric_event_md5 200 job-adp-kafka-data$i 'Message-------7' + cr_index=$(($i%$NUM_CR)) + cr_api_check_single_genric_event_md5 200 $cr_index job-med-data$i '{"msg":"msg-4"}' + cr_api_check_single_genric_event_md5 200 $cr_index job-med-data$i '{"msg":"msg-6"}' + cr_api_check_single_genric_event_md5 200 $cr_index job-adp-data$i '{"msg":"msg-5"}' + cr_api_check_single_genric_event_md5 200 $cr_index job-adp-data$i '{"msg":"msg-7"}' + cr_api_check_single_genric_event_md5 200 $cr_index job-adp-kafka-data$i 'Message-------5' + cr_api_check_single_genric_event_md5 200 $cr_index job-adp-kafka-data$i 'Message-------7' done #### TEST COMPLETE #### diff --git a/test/auto-test/FTC310.sh b/test/auto-test/FTC310.sh index e017643a..53437e8e 100755 --- a/test/auto-test/FTC310.sh +++ b/test/auto-test/FTC310.sh @@ -28,15 +28,7 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R #Supported run modes SUPPORTED_RUNMODES="DOCKER" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -62,7 +54,7 @@ for consul_conf in $TESTED_VARIANTS ; do # Create service to be able to receive events when rics becomes available # Must use rest towards the agent since dmaap is not configured yet - api_put_service 201 "ric-registration" 0 "$CR_SERVICE_APP_PATH/ric-registration" + api_put_service 201 "ric-registration" 0 "$CR_SERVICE_APP_PATH_0/ric-registration" # Start one RIC of each type start_ric_simulators ricsim_g1 1 OSC_2.1.0 @@ -73,7 +65,7 @@ for consul_conf in $TESTED_VARIANTS ; do start_mr - start_cr + start_cr 1 start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE @@ -93,9 +85,9 @@ for consul_conf in $TESTED_VARIANTS ; do if [ "$PMS_VERSION" == "V2" ]; then api_equal json:rics 3 300 - cr_equal received_callbacks 3 120 + cr_equal 0 received_callbacks 3 120 - cr_api_check_all_sync_events 200 ric-registration ricsim_g1_1 ricsim_g2_1 ricsim_g3_1 + cr_api_check_all_sync_events 200 0 ric-registration ricsim_g1_1 ricsim_g2_1 ricsim_g3_1 else api_equal json:rics 2 300 fi @@ -114,9 +106,9 @@ for consul_conf in $TESTED_VARIANTS ; do if [ "$PMS_VERSION" == "V2" ]; then api_equal json:rics 4 120 - cr_equal received_callbacks 4 120 + cr_equal 0 received_callbacks 4 120 - cr_api_check_all_sync_events 200 ric-registration ricsim_g2_2 + cr_api_check_all_sync_events 200 0 ric-registration ricsim_g2_2 else api_equal json:rics 3 120 fi @@ -138,7 +130,7 @@ for consul_conf in $TESTED_VARIANTS ; do if [ "$PMS_VERSION" == "V2" ]; then api_equal json:rics 3 120 - cr_equal received_callbacks 4 120 + cr_equal 0 received_callbacks 4 120 else api_equal json:rics 2 120 fi diff --git a/test/auto-test/FTC350.sh b/test/auto-test/FTC350.sh index 25bdc4ce..31e40ab9 100755 --- a/test/auto-test/FTC350.sh +++ b/test/auto-test/FTC350.sh @@ -32,16 +32,7 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -75,7 +66,7 @@ for interface in $TESTED_VARIANTS ; do start_ric_simulators ricsim_g1 $NUM_RICS_2 OSC_2.1.0 - start_cr + start_cr 1 start_mr @@ -108,7 +99,7 @@ for interface in $TESTED_VARIANTS ; do # Create service to be able to receive events when rics becomes available # Must use rest towards the agent since dmaap is not configured yet - api_put_service 201 "ric-registration" 0 "$CR_SERVICE_APP_PATH/ric-registration" + api_put_service 201 "ric-registration" 0 "$CR_SERVICE_APP_PATH_0/ric-registration" #Load first config if [ $RUNMODE == "KUBE" ]; then @@ -126,8 +117,8 @@ for interface in $TESTED_VARIANTS ; do api_equal json:rics 8 300 if [ "$PMS_VERSION" == "V2" ]; then - cr_equal received_callbacks?id=ric-registration 8 120 - cr_api_check_all_sync_events 200 ric-registration ricsim_g1_1 ricsim_g1_2 ricsim_g1_3 ricsim_g1_4 ricsim_g1_5 ricsim_g1_6 ricsim_g1_7 ricsim_g1_8 + cr_equal 0 received_callbacks?id=ric-registration 8 120 + cr_api_check_all_sync_events 200 0 ric-registration ricsim_g1_1 ricsim_g1_2 ricsim_g1_3 ricsim_g1_4 ricsim_g1_5 ricsim_g1_6 ricsim_g1_7 ricsim_g1_8 fi api_get_rics 200 NOTYPE "ricsim_g1_1:me1_ricsim_g1_1,me2_ricsim_g1_1:NOTYPE:???? \ @@ -205,8 +196,8 @@ for interface in $TESTED_VARIANTS ; do ricsim_g1_8:me1_ricsim_g1_8,me2_ricsim_g1_8:4,5:???? " if [ "$PMS_VERSION" == "V2" ]; then - cr_equal received_callbacks?id=ric-registration 16 120 - cr_api_check_all_sync_events 200 ric-registration ricsim_g1_1 ricsim_g1_2 ricsim_g1_3 ricsim_g1_4 ricsim_g1_5 ricsim_g1_6 ricsim_g1_7 ricsim_g1_8 + cr_equal 0 received_callbacks?id=ric-registration 16 120 + cr_api_check_all_sync_events 200 0 ric-registration ricsim_g1_1 ricsim_g1_2 ricsim_g1_3 ricsim_g1_4 ricsim_g1_5 ricsim_g1_6 ricsim_g1_7 ricsim_g1_8 fi #Load config with all rics @@ -219,8 +210,8 @@ for interface in $TESTED_VARIANTS ; do api_equal json:rics 10 120 if [ "$PMS_VERSION" == "V2" ]; then - cr_equal received_callbacks?id=ric-registration 18 120 - cr_api_check_all_sync_events 200 ric-registration ricsim_g1_9 ricsim_g1_10 + cr_equal 0 received_callbacks?id=ric-registration 18 120 + cr_api_check_all_sync_events 200 0 ric-registration ricsim_g1_9 ricsim_g1_10 fi sim_put_policy_type 201 ricsim_g1_9 5 testdata/OSC/sim_5.json @@ -269,8 +260,8 @@ for interface in $TESTED_VARIANTS ; do ricsim_g1_10:me1_ricsim_g1_10,me2_ricsim_g1_10:NOTYPE:???? " if [ "$PMS_VERSION" == "V2" ]; then - cr_equal received_callbacks?id=ric-registration 19 120 - cr_api_check_all_sync_events 200 ric-registration ricsim_g1_9 + cr_equal 0 received_callbacks?id=ric-registration 19 120 + cr_api_check_all_sync_events 200 0 ric-registration ricsim_g1_9 fi #No policy type in sim #10 @@ -281,10 +272,10 @@ for interface in $TESTED_VARIANTS ; do api_equal json:policy_types 5 fi - api_put_service 201 "serv1" 3600 "$CR_SERVICE_APP_PATH/serv1" + api_put_service 201 "serv1" 3600 "$CR_SERVICE_APP_PATH_0/serv1" if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi @@ -301,8 +292,8 @@ for interface in $TESTED_VARIANTS ; do api_equal json:rics 8 120 if [ "$PMS_VERSION" == "V2" ]; then - cr_equal received_callbacks?id=ric-registration 19 120 - cr_api_check_all_sync_events 200 ric-registration EMPTY + cr_equal 0 received_callbacks?id=ric-registration 19 120 + cr_api_check_all_sync_events 200 0 ric-registration EMPTY fi if [ "$PMS_VERSION" == "V2" ]; then diff --git a/test/auto-test/FTC800.sh b/test/auto-test/FTC800.sh index 27675beb..e509f6ce 100755 --- a/test/auto-test/FTC800.sh +++ b/test/auto-test/FTC800.sh @@ -37,16 +37,7 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -101,7 +92,7 @@ for __httpx in $TESTED_PROTOCOLS ; do start_mr - start_cr + start_cr 1 start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE @@ -151,10 +142,10 @@ for __httpx in $TESTED_PROTOCOLS ; do api_equal json:policy_types 2 300 #Wait for the agent to refresh types from the simulators fi - api_put_service 201 "serv1" 3600 "$CR_SERVICE_APP_PATH/1" + api_put_service 201 "serv1" 3600 "$CR_SERVICE_APP_PATH_0/1" if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi diff --git a/test/auto-test/FTC805.sh b/test/auto-test/FTC805.sh index 02f67584..af468144 100755 --- a/test/auto-test/FTC805.sh +++ b/test/auto-test/FTC805.sh @@ -37,15 +37,7 @@ SUPPORTED_PROFILES="ONAP-ISTANBUL ORAN-D-RELEASE ORAN-E-RELEASE" #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/cr_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -67,7 +59,7 @@ NUM_POLICIES_PER_RIC=2000 generate_policy_uuid if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi @@ -131,7 +123,7 @@ for __httpx in $TESTED_PROTOCOLS ; do consul_config_app ".consul_config.json" fi - start_cr + start_cr 1 api_get_status 200 @@ -152,7 +144,7 @@ for __httpx in $TESTED_PROTOCOLS ; do api_equal json:policy_types 1 300 #Wait for the agent to refresh types from the simulator fi - api_put_service 201 "serv1" 0 "$CR_SERVICE_APP_PATH/1" + api_put_service 201 "serv1" 0 "$CR_SERVICE_APP_PATH_0/1" echo "Check the number of types in the agent for each ric is 1" for ((i=1; i<=$NUM_RICS; i++)) @@ -180,7 +172,7 @@ for __httpx in $TESTED_PROTOCOLS ; do sim_equal ricsim_g1_$i num_instances $NUM_POLICIES_PER_RIC done - api_get_services 200 "serv1" "serv1" 0 "$CR_SERVICE_APP_PATH/1" + api_get_services 200 "serv1" "serv1" 0 "$CR_SERVICE_APP_PATH_0/1" stop_policy_agent @@ -217,7 +209,7 @@ for __httpx in $TESTED_PROTOCOLS ; do print_timer "Restore $((NUM_POLICIES_PER_RIC*$NUM_RICS)) polices after restart over $interface using "$__httpx - api_get_services 200 "serv1" "serv1" 0 "$CR_SERVICE_APP_PATH/1" + api_get_services 200 "serv1" "serv1" 0 "$CR_SERVICE_APP_PATH_0/1" start_timer "Delete $((NUM_POLICIES_PER_RIC*$NUM_RICS)) polices over $interface using "$__httpx @@ -247,7 +239,7 @@ for __httpx in $TESTED_PROTOCOLS ; do sleep_wait 200 - api_get_services 200 "serv1" "serv1" 0 "$CR_SERVICE_APP_PATH/1" + api_get_services 200 "serv1" "serv1" 0 "$CR_SERVICE_APP_PATH_0/1" api_equal json:policies 0 diff --git a/test/auto-test/FTC810.sh b/test/auto-test/FTC810.sh index 02b8db98..ad71f464 100755 --- a/test/auto-test/FTC810.sh +++ b/test/auto-test/FTC810.sh @@ -37,16 +37,7 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -97,7 +88,7 @@ fi start_mr -start_cr +start_cr 1 start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE @@ -197,7 +188,7 @@ do done echo "Register a service" -api_put_service 201 "serv1" 0 "$CR_SERVICE_APP_PATH/1" +api_put_service 201 "serv1" 0 "$CR_SERVICE_APP_PATH_0/1" TEST_DURATION=$((24*3600*$DAYS)) TEST_START=$SECONDS @@ -207,7 +198,7 @@ AGENT_INTERFACES="REST REST_PARALLEL DMAAP DMAAP-BATCH" MR_MESSAGES=0 if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi diff --git a/test/auto-test/FTC850.sh b/test/auto-test/FTC850.sh index a5f19782..bd61b3af 100755 --- a/test/auto-test/FTC850.sh +++ b/test/auto-test/FTC850.sh @@ -37,16 +37,7 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R #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/consul_cbs_functions.sh -. ../common/cr_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment @@ -67,7 +58,7 @@ NUM_POLICIES_PER_RIC=500 generate_policy_uuid if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi @@ -135,7 +126,7 @@ for __httpx in $TESTED_PROTOCOLS ; do start_mr # Not used, but removes error messages from the agent log - start_cr + start_cr 1 api_get_status 200 @@ -156,7 +147,7 @@ for __httpx in $TESTED_PROTOCOLS ; do api_equal json:policy_types 1 300 #Wait for the agent to refresh types from the simulator fi - api_put_service 201 "serv1" 600 "$CR_SERVICE_APP_PATH/1" + api_put_service 201 "serv1" 600 "$CR_SERVICE_APP_PATH_0/1" echo "Check the number of types in the agent for each ric is 1" for ((i=1; i<=$NUM_RICS; i++)) diff --git a/test/auto-test/FTC900.sh b/test/auto-test/FTC900.sh index e698f621..886b6648 100755 --- a/test/auto-test/FTC900.sh +++ b/test/auto-test/FTC900.sh @@ -38,15 +38,6 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R 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/consul_cbs_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh -. ../common/cr_api_functions.sh setup_testenvironment @@ -184,10 +175,10 @@ fi # Create policies use_agent_rest_http -api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH/1" +api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH_0/1" if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi diff --git a/test/auto-test/FTC_HELM_E_RELEASE.sh b/test/auto-test/FTC_HELM_E_RELEASE.sh index 71a5d50c..54f3e4d4 100755 --- a/test/auto-test/FTC_HELM_E_RELEASE.sh +++ b/test/auto-test/FTC_HELM_E_RELEASE.sh @@ -35,18 +35,6 @@ SUPPORTED_PROFILES="ORAN-E-RELEASE" SUPPORTED_RUNMODES="KUBE" . ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/ecs_api_functions.sh -. ../common/prodstub_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/rapp_catalogue_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/dmaapmed_api_functions.sh -. ../common/dmaapadp_api_functions.sh setup_testenvironment @@ -108,7 +96,7 @@ start_sdnc start_policy_agent -start_cr +start_cr 1 start_prod_stub @@ -240,16 +228,16 @@ else api_equal json:policy_ids 0 fi -api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH/ER-app" +api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH_0/ER-app" # Create policies in STD for ((i=0; i<$STD_NUM_RICS; i++)) do ricid=$((3+$i)) generate_policy_uuid - api_put_policy 201 "Emergency-response-app" ric$ricid NOTYPE $((1100+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH/"std2" testdata/STD/pi1_template.json 1 + api_put_policy 201 "Emergency-response-app" ric$ricid NOTYPE $((1100+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH_0/"std2" testdata/STD/pi1_template.json 1 generate_policy_uuid - api_put_policy 201 "Emergency-response-app" ric$ricid NOTYPE $((1200+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH/"std2" testdata/STD/pi1_template.json 1 + api_put_policy 201 "Emergency-response-app" ric$ricid NOTYPE $((1200+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH_0/"std2" testdata/STD/pi1_template.json 1 done #Create policies in STD 2 @@ -257,9 +245,9 @@ for ((i=0; i<$STD_NUM_RICS; i++)) do ricid=$((5+$i)) generate_policy_uuid - api_put_policy 201 "Emergency-response-app" ric$ricid STD_QOS_0_2_0 $((2100+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH/"std2" testdata/STD2/pi_qos_template.json 1 + api_put_policy 201 "Emergency-response-app" ric$ricid STD_QOS_0_2_0 $((2100+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH_0/"std2" testdata/STD2/pi_qos_template.json 1 generate_policy_uuid - api_put_policy 201 "Emergency-response-app" ric$ricid STD_QOS2_0.1.0 $((2200+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH/"std2" testdata/STD2/pi_qos2_template.json 1 + api_put_policy 201 "Emergency-response-app" ric$ricid STD_QOS2_0.1.0 $((2200+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH_0/"std2" testdata/STD2/pi_qos2_template.json 1 done # Create policies in OSC @@ -267,9 +255,9 @@ for ((i=0; i<$OSC_NUM_RICS; i++)) do ricid=$((1+$i)) generate_policy_uuid - api_put_policy 201 "Emergency-response-app" ric$ricid 1 $((3100+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH/"osc" testdata/OSC/pi1_template.json 1 + api_put_policy 201 "Emergency-response-app" ric$ricid 1 $((3100+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH_0/"osc" testdata/OSC/pi1_template.json 1 generate_policy_uuid - api_put_policy 201 "Emergency-response-app" ric$ricid 2 $((3200+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH/"osc" testdata/OSC/pi2_template.json 1 + api_put_policy 201 "Emergency-response-app" ric$ricid 2 $((3200+$i)) NOTRANSIENT $CR_SERVICE_APP_PATH_0/"osc" testdata/OSC/pi2_template.json 1 done @@ -338,8 +326,8 @@ CB_SV="$PROD_STUB_SERVICE_PATH$PROD_STUB_SUPERVISION_CALLBACK" TARGET1="$RIC_SIM_HTTPX://a1-sim-std2-0.a1-sim:$RIC_SIM_PORT/datadelivery" TARGET2="$RIC_SIM_HTTPX://a1-sim-std2-1.a1-sim:$RIC_SIM_PORT/datadelivery" -STATUS1="$CR_SERVICE_APP_PATH/job1-status" -STATUS2="$CR_SERVICE_APP_PATH/job2-status" +STATUS1="$CR_SERVICE_APP_PATH_0/job1-status" +STATUS2="$CR_SERVICE_APP_PATH_0/job2-status" prodstub_arm_producer 200 prod-a prodstub_arm_type 200 prod-a type1 @@ -420,12 +408,12 @@ NUM_JOBS=5 for ((i=1; i<=$NUM_JOBS; i++)) do - ecs_api_idc_put_job 201 jobx$i STD_Fault_Messages $CR_SERVICE_MR_PATH/jobx-data$i info-ownerx$i $CR_SERVICE_MR_PATH/job_status_info-ownerx$i testdata/dmaap-adapter/job-template.json + ecs_api_idc_put_job 201 jobx$i STD_Fault_Messages $CR_SERVICE_MR_PATH_0/jobx-data$i info-ownerx$i $CR_SERVICE_MR_PATH_0/job_status_info-ownerx$i testdata/dmaap-adapter/job-template.json done for ((i=1; i<=$NUM_JOBS; i++)) do - ecs_api_idc_put_job 201 joby$i ExampleInformationType $CR_SERVICE_MR_PATH/joby-data$i info-ownery$i $CR_SERVICE_MR_PATH/job_status_info-ownery$i testdata/dmaap-adapter/job-template.json + ecs_api_idc_put_job 201 joby$i ExampleInformationType $CR_SERVICE_MR_PATH_0/joby-data$i info-ownery$i $CR_SERVICE_MR_PATH_0/job_status_info-ownery$i testdata/dmaap-adapter/job-template.json done for ((i=1; i<=$NUM_JOBS; i++)) @@ -438,19 +426,19 @@ mr_api_send_json "/events/unauthenticated.dmaapadp.json" '{"msg":"msg-1"}' mr_api_send_json "/events/unauthenticated.dmaapmed.json" '{"msg":"msg-2"}' mr_api_send_json "/events/unauthenticated.dmaapadp.json" '{"msg":"msg-3"}' -cr_equal received_callbacks $(($NUM_JOBS*2*2)) 60 +cr_equal 0 received_callbacks $(($NUM_JOBS*2*2)) 60 for ((i=1; i<=$NUM_JOBS; i++)) do - cr_equal received_callbacks?id=jobx-data$i 2 - cr_equal received_callbacks?id=joby-data$i 2 + cr_equal 0 received_callbacks?id=jobx-data$i 2 + cr_equal 0 received_callbacks?id=joby-data$i 2 done for ((i=1; i<=$NUM_JOBS; i++)) do - cr_api_check_single_genric_json_event 200 jobx-data$i '{"msg":"msg-0"}' - cr_api_check_single_genric_json_event 200 jobx-data$i '{"msg":"msg-2"}' - cr_api_check_single_genric_json_event 200 joby-data$i '{"msg":"msg-1"}' - cr_api_check_single_genric_json_event 200 joby-data$i '{"msg":"msg-3"}' + cr_api_check_single_genric_json_event 200 0 jobx-data$i '{"msg":"msg-0"}' + cr_api_check_single_genric_json_event 200 0 jobx-data$i '{"msg":"msg-2"}' + cr_api_check_single_genric_json_event 200 0 joby-data$i '{"msg":"msg-1"}' + cr_api_check_single_genric_json_event 200 0 joby-data$i '{"msg":"msg-3"}' done diff --git a/test/auto-test/ONAP_UC.sh b/test/auto-test/ONAP_UC.sh index 03697bcd..5d230345 100755 --- a/test/auto-test/ONAP_UC.sh +++ b/test/auto-test/ONAP_UC.sh @@ -38,15 +38,6 @@ SUPPORTED_PROFILES="ONAP-HONOLULU ONAP-ISTANBUL" 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 @@ -62,7 +53,7 @@ use_simulator_https use_mr_https if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else echo "Version V2 of PMS is needed, exiting..." exit 1 @@ -212,7 +203,7 @@ for interface in $TESTED_VARIANTS ; do # Create policies use_agent_rest_http - api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH/1" + 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++)) diff --git a/test/auto-test/PM_DEMO.sh b/test/auto-test/PM_DEMO.sh index 20a02cbf..f3d5dd44 100755 --- a/test/auto-test/PM_DEMO.sh +++ b/test/auto-test/PM_DEMO.sh @@ -38,15 +38,6 @@ SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-R 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 @@ -61,7 +52,7 @@ use_sdnc_https use_simulator_https if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else notificationurl="" fi @@ -210,7 +201,7 @@ fi # Create policies use_agent_rest_http -api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH/1" +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++)) diff --git a/test/auto-test/PM_EI_DEMO.sh b/test/auto-test/PM_EI_DEMO.sh index c93a6d77..deff4600 100755 --- a/test/auto-test/PM_EI_DEMO.sh +++ b/test/auto-test/PM_EI_DEMO.sh @@ -38,19 +38,6 @@ SUPPORTED_PROFILES="ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-RELEASE ORAN- SUPPORTED_RUNMODES="DOCKER KUBE" . ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/ecs_api_functions.sh -. ../common/prodstub_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/rapp_catalogue_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/http_proxy_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh setup_testenvironment @@ -73,7 +60,7 @@ fi if [ "$PMS_VERSION" == "V2" ]; then - notificationurl=$CR_SERVICE_APP_PATH"/test" + notificationurl=$CR_SERVICE_APP_PATH_0"/test" else echo "PMS VERSION 2 (V2) is required" exit 1 @@ -113,7 +100,7 @@ else consul_config_app ".consul_config.json" fi -start_cr +start_cr 1 start_prod_stub @@ -168,7 +155,7 @@ done #Check the number of types api_equal json:policy-types 2 300 -api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH/1" +api_put_service 201 "Emergency-response-app" 0 "$CR_SERVICE_APP_PATH_0/1" # Create policies in STD for ((i=1; i<=$STD_NUM_RICS; i++)) @@ -205,8 +192,8 @@ fi TARGET1="$RIC_SIM_HTTPX://$RIC_G1_1:$RIC_SIM_PORT/datadelivery" TARGET2="$RIC_SIM_HTTPX://$RIC_G1_1:$RIC_SIM_PORT/datadelivery" -STATUS1="$CR_SERVICE_APP_PATH/callbacks/job1-status" -STATUS2="$CR_SERVICE_APP_PATH/callbacks/job2-status" +STATUS1="$CR_SERVICE_APP_PATH_0/callbacks/job1-status" +STATUS2="$CR_SERVICE_APP_PATH_0/callbacks/job2-status" prodstub_arm_producer 200 prod-a prodstub_arm_type 200 prod-a type1 diff --git a/test/auto-test/README.md b/test/auto-test/README.md index 1f8ef5d6..c914c674 100644 --- a/test/auto-test/README.md +++ b/test/auto-test/README.md @@ -127,8 +127,7 @@ SUPPORTED_RUNMODES= CONDITIONALLY_IGNORED_IMAGES= -. ../common/testcase_common.sh $@ -< other scripts need to be sourced for specific interfaces> +. ../common/testcase_common.sh $@ setup_testenvironment diff --git a/test/auto-test/startMR.sh b/test/auto-test/startMR.sh index 27bdb4e5..d2d0e9a8 100755 --- a/test/auto-test/startMR.sh +++ b/test/auto-test/startMR.sh @@ -38,17 +38,7 @@ SUPPORTED_PROFILES="ONAP-HONOLULU ONAP-ISTANBUL ORAN-D-RELEASE ORAN-E-RELEASE" #Supported run modes SUPPORTED_RUNMODES="DOCKER KUBE" -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/consul_cbs_functions.sh -. ../common/control_panel_api_functions.sh -. ../common/controller_api_functions.sh -. ../common/cr_api_functions.sh -. ../common/mr_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/http_proxy_api_functions.sh -. ../common/kube_proxy_api_functions.sh -. ../common/gateway_api_functions.sh +. ../common/testcase_common.sh $@ setup_testenvironment diff --git a/test/common/README.md b/test/common/README.md index 3577cfa6..11e2a978 100644 --- a/test/common/README.md +++ b/test/common/README.md @@ -203,17 +203,6 @@ Print the value of the timer (in seconds) previously started by 'start_timer'. ( | --------- | ----------- | | `` | Any text message to be printed along with the timer result.(It is good practice to use same args for this function as for the `start_timer`) | -## Function: print_and_reset_timer ## - -Print the value of the timer (in seconds) previously started by 'start_timer'. Also reset the timer to 0. The result of the timer as well as the args to the function will also be printed in the test report. -| arg list | -|--| -| `` | - -| parameter | description | -| --------- | ----------- | -| `` | Any text message to be printed along with the timer result.(It is good practice to use same args for this function as for the `start_timer`) | - ## Function: deviation ## Mark a test as a deviation from the requirements. The list of deviations will be printed in the test report. diff --git a/test/common/cbs_api_functions.sh b/test/common/cbs_api_functions.sh new file mode 100644 index 00000000..f08b250a --- /dev/null +++ b/test/common/cbs_api_functions.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# ============LICENSE_START=============================================== +# Copyright (C) 2021 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. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END================================================= +# + +# Functions for CBS is included in consul_api_functions.sh + + + diff --git a/test/common/clean_kube.sh b/test/common/clean_kube.sh index 405c194a..a3a3e5b0 100755 --- a/test/common/clean_kube.sh +++ b/test/common/clean_kube.sh @@ -90,7 +90,7 @@ __kube_delete_all_resources() { if [ $? -eq 0 ] && [ ! -z "$result" ]; then for resid in $result; do echo " Deleting $restype $resid in namespace $namespace with label autotest " - kubectl delete $restype $resid -n $namespace 1> /dev/null 2> /dev/null + kubectl delete --grace-period=1 $restype $resid -n $namespace 1> /dev/null 2> /dev/null done fi done @@ -104,7 +104,7 @@ __kube_delete_all_pv() { if [ $? -eq 0 ] && [ ! -z "$result" ]; then for resid in $result; do echo " Deleting $restype $resid with label autotest " - kubectl delete $restype $resid 1> /dev/null 2> /dev/null + kubectl delete --grace-period=1 $restype $resid 1> /dev/null 2> /dev/null done fi done @@ -119,7 +119,7 @@ __kube_wait_for_delete() { if [ $? -eq 0 ] && [ ! -z "$result" ]; then for resid in $result; do echo " Deleting $restype $resid in namespace $namespace with label autotest " - kubectl delete $restype $resid -n $namespace #1> /dev/null 2> /dev/null + kubectl delete --grace-period=1 $restype $resid -n $namespace #1> /dev/null 2> /dev/null echo -ne " Waiting for $restype $resid in namespace $namespace with label autotest to be deleted..."$SAMELINE T_START=$SECONDS result="dummy" @@ -147,7 +147,7 @@ __kube_wait_for_delete_pv() { if [ $? -eq 0 ] && [ ! -z "$result" ]; then for resid in $result; do echo " Deleting $restype $resid with label autotest " - kubectl delete $restype $resid -n $namespace #1> /dev/null 2> /dev/null + kubectl delete --grace-period=1 $restype $resid -n $namespace #1> /dev/null 2> /dev/null echo -ne " Waiting for $restype $resid with label autotest to be deleted..."$SAMELINE T_START=$SECONDS result="dummy" diff --git a/test/common/consul_cbs_functions.sh b/test/common/consul_api_functions.sh similarity index 68% rename from test/common/consul_cbs_functions.sh rename to test/common/consul_api_functions.sh index cd1b16c0..af85ff34 100644 --- a/test/common/consul_cbs_functions.sh +++ b/test/common/consul_api_functions.sh @@ -235,123 +235,6 @@ consul_config_app() { } -# Function to perpare the consul configuration according to the current simulator configuration -# args: SDNC|NOSDNC -# (Function for test scripts) -prepare_consul_config() { - echo -e $BOLD"Prepare Consul config"$EBOLD - - echo " Writing consul config for "$POLICY_AGENT_APP_NAME" to file: "$2 - - if [ $# != 2 ]; then - ((RES_CONF_FAIL++)) - __print_err "need two args, SDNC|NOSDNC " $@ - exit 1 - fi - - if [ $1 == "SDNC" ]; then - echo -e " Config$BOLD including SDNC$EBOLD configuration" - elif [ $1 == "NOSDNC" ]; then - echo -e " Config$BOLD excluding SDNC$EBOLD configuration" - else - ((RES_CONF_FAIL++)) - __print_err "need two args, SDNC|NOSDNC " $@ - exit 1 - fi - - config_json="\n {" - if [ $1 == "SDNC" ]; then - config_json=$config_json"\n \"controller\": [" - config_json=$config_json"\n {" - config_json=$config_json"\n \"name\": \"$SDNC_APP_NAME\"," - config_json=$config_json"\n \"baseUrl\": \"$SDNC_SERVICE_PATH\"," - config_json=$config_json"\n \"userName\": \"$SDNC_USER\"," - config_json=$config_json"\n \"password\": \"$SDNC_PWD\"" - config_json=$config_json"\n }" - config_json=$config_json"\n ]," - fi - - config_json=$config_json"\n \"streams_publishes\": {" - config_json=$config_json"\n \"dmaap_publisher\": {" - config_json=$config_json"\n \"type\": \"message-router\"," - config_json=$config_json"\n \"dmaap_info\": {" - config_json=$config_json"\n \"topic_url\": \"$MR_SERVICE_PATH$MR_WRITE_URL\"" - config_json=$config_json"\n }" - config_json=$config_json"\n }" - config_json=$config_json"\n }," - config_json=$config_json"\n \"streams_subscribes\": {" - config_json=$config_json"\n \"dmaap_subscriber\": {" - config_json=$config_json"\n \"type\": \"message-router\"," - config_json=$config_json"\n \"dmaap_info\": {" - config_json=$config_json"\n \"topic_url\": \"$MR_SERVICE_PATH$MR_READ_URL\"" - config_json=$config_json"\n }" - config_json=$config_json"\n }" - config_json=$config_json"\n }," - - config_json=$config_json"\n \"ric\": [" - - if [ $RUNMODE == "KUBE" ]; then - result=$(kubectl get pods -n $KUBE_A1SIM_NAMESPACE -o jsonpath='{.items[?(@.metadata.labels.autotest=="RICSIM")].metadata.name}') - rics="" - ric_cntr=0 - if [ $? -eq 0 ] && [ ! -z "$result" ]; then - for im in $result; do - if [[ $im != *"-0" ]]; then - ric_subdomain=$(kubectl get pod $im -n $KUBE_A1SIM_NAMESPACE -o jsonpath='{.spec.subdomain}') - rics=$rics" "$im"."$ric_subdomain"."$KUBE_A1SIM_NAMESPACE - let ric_cntr=ric_cntr+1 - fi - done - fi - if [ $ric_cntr -eq 0 ]; then - echo $YELLOW"Warning: No rics found for the configuration"$EYELLOW - fi - else - rics=$(docker ps --filter "name=$RIC_SIM_PREFIX" --filter "network=$DOCKER_SIM_NWNAME" --filter "status=running" --format {{.Names}}) - if [ $? -ne 0 ] || [ -z "$rics" ]; then - echo -e $RED" FAIL - the names of the running RIC Simulator cannot be retrieved." $ERED - ((RES_CONF_FAIL++)) - return 1 - fi - fi - cntr=0 - for ric in $rics; do - if [ $cntr -gt 0 ]; then - config_json=$config_json"\n ," - fi - config_json=$config_json"\n {" - if [ $RUNMODE == "KUBE" ]; then - ric_id=${ric%.*.*} #extract pod id from full hosthame - ric_id=$(echo "$ric_id" | tr '-' '_') - else - ric_id=$ric - fi - echo " Found a1 sim: "$ric_id - config_json=$config_json"\n \"name\": \"$ric_id\"," - config_json=$config_json"\n \"baseUrl\": \"$RIC_SIM_HTTPX://$ric:$RIC_SIM_PORT\"," - if [ $1 == "SDNC" ]; then - config_json=$config_json"\n \"controller\": \"$SDNC_APP_NAME\"," - fi - config_json=$config_json"\n \"managedElementIds\": [" - config_json=$config_json"\n \"me1_$ric_id\"," - config_json=$config_json"\n \"me2_$ric_id\"" - config_json=$config_json"\n ]" - config_json=$config_json"\n }" - let cntr=cntr+1 - done - - config_json=$config_json"\n ]" - config_json=$config_json"\n}" - - if [ $RUNMODE == "KUBE" ]; then - config_json="{\"config\":"$config_json"}" - fi - - printf "$config_json">$2 - - echo "" -} - # Start Consul and CBS # args: - # (Function for test scripts) diff --git a/test/common/control_panel_api_functions.sh b/test/common/cp_api_functions.sh similarity index 100% rename from test/common/control_panel_api_functions.sh rename to test/common/cp_api_functions.sh diff --git a/test/common/cr_api_functions.sh b/test/common/cr_api_functions.sh index a537bc85..a9acd6e5 100644 --- a/test/common/cr_api_functions.sh +++ b/test/common/cr_api_functions.sh @@ -94,9 +94,14 @@ __CR_kube_delete_all() { # args: __CR_store_docker_logs() { if [ $RUNMODE == "KUBE" ]; then - kubectl logs -l "autotest=CR" -n $KUBE_SIM_NAMESPACE --tail=-1 > $1$2_cr.log 2>&1 + for podname in $(kubectl get pods -n $KUBE_SIM_NAMESPACE -l "autotest=CR" -o custom-columns=":metadata.name"); do + kubectl logs -n $KUBE_SIM_NAMESPACE $podname --tail=-1 > $1$2_$podname.log 2>&1 + done else - docker logs $CR_APP_NAME > $1$2_cr.log 2>&1 + crs=$(docker ps --filter "name=$CR_APP_NAME" --filter "network=$DOCKER_SIM_NWNAME" --filter "status=running" --format {{.Names}}) + for crid in $crs; do + docker logs $crid > $1$2_$crid.log 2>&1 + done fi } @@ -112,11 +117,14 @@ __CR_initial_setup() { # This function is called for apps managed by the test script as well as for prestarted apps. # args: - __CR_statisics_setup() { - if [ $RUNMODE == "KUBE" ]; then - echo "CR $CR_APP_NAME $KUBE_SIM_NAMESPACE" - else - echo "CR $CR_APP_NAME" - fi + for ((CR_INSTANCE=MAX_CR_APP_COUNT; CR_INSTANCE>0; CR_INSTANCE-- )); do + if [ $RUNMODE == "KUBE" ]; then + CR_INSTANCE_KUBE=$(($CR_INSTANCE-1)) + echo -n " CR-$CR_INSTANCE_KUBE $CR_APP_NAME-$CR_INSTANCE_KUBE $KUBE_SIM_NAMESPACE " + else + echo -n " CR_$CR_INSTANCE ${CR_APP_NAME}_cr_$CR_INSTANCE " + fi + done } ####################################################### @@ -125,6 +133,10 @@ __CR_statisics_setup() { ### CR functions ################ +#Var to hold the current number of CR instances +CR_APP_COUNT=1 +MAX_CR_APP_COUNT=10 + # Set http as the protocol to use for all communication to the Dmaap adapter # args: - # (Function for test scripts) @@ -142,25 +154,30 @@ use_cr_https() { # Setup paths to svc/container for internal and external access # args: __cr_set_protocoll() { + echo -e $BOLD"$CR_DISPLAY_NAME protocol setting"$EBOLD echo -e " Using $BOLD http $EBOLD towards $CR_DISPLAY_NAME" - ## Access to Dmaap adapter - - # CR_SERVICE_PATH is the base path to cr - CR_SERVICE_PATH=$1"://"$CR_APP_NAME":"$2 # docker access, container->container and script->container via proxy - if [ $RUNMODE == "KUBE" ]; then - CR_SERVICE_PATH=$1"://"$CR_APP_NAME.$KUBE_SIM_NAMESPACE":"$3 # kube access, pod->svc and script->svc via proxy - fi - # Service paths are used in test script to provide callbacck urls to app - CR_SERVICE_MR_PATH=$CR_SERVICE_PATH$CR_APP_CALLBACK_MR #Only for messages from dmaap adapter/mediator - CR_SERVICE_TEXT_PATH=$CR_SERVICE_PATH$CR_APP_CALLBACK_TEXT #Callbacks for text payload - CR_SERVICE_APP_PATH=$CR_SERVICE_PATH$CR_APP_CALLBACK #For general callbacks from apps - - # CR_ADAPTER used for switching between REST and DMAAP (only REST supported currently) - CR_ADAPTER_TYPE="REST" - CR_ADAPTER=$CR_SERVICE_PATH - + for ((CR_INSTANCE=0; CR_INSTANCE<$MAX_CR_APP_COUNT; CR_INSTANCE++ )); do + CR_DOCKER_INSTANCE=$(($CR_INSTANCE+1)) + # CR_SERVICE_PATH is the base path to cr + __CR_SERVICE_PATH=$1"://"$CR_APP_NAME"_cr_"${CR_DOCKER_INSTANCE}":"$2 # docker access, container->container and script->container via proxy + if [ $RUNMODE == "KUBE" ]; then + __CR_SERVICE_PATH=$1"://"$CR_APP_NAME"-"$CR_INSTANCE.$CR_APP_NAME"."$KUBE_SIM_NAMESPACE":"$3 # kube access, pod->svc and script->svc via proxy + fi + export CR_SERVICE_PATH"_"${CR_INSTANCE}=$__CR_SERVICE_PATH + # Service paths are used in test script to provide callbacck urls to app + export CR_SERVICE_MR_PATH"_"${CR_INSTANCE}=$__CR_SERVICE_PATH$CR_APP_CALLBACK_MR #Only for messages from dmaap adapter/mediator + export CR_SERVICE_TEXT_PATH"_"${CR_INSTANCE}=$__CR_SERVICE_PATH$CR_APP_CALLBACK_TEXT #Callbacks for text payload + export CR_SERVICE_APP_PATH"_"${CR_INSTANCE}=$__CR_SERVICE_PATH$CR_APP_CALLBACK #For general callbacks from apps + + if [ $CR_INSTANCE -eq 0 ]; then + # CR_ADAPTER used for switching between REST and DMAAP (only REST supported currently) + # CR_ADDAPTER need to be set before each call to CR....only set for instance 0 here + CR_ADAPTER_TYPE="REST" + CR_ADAPTER=$__CR_SERVICE_PATH + fi + done echo "" } @@ -179,15 +196,27 @@ __cr_export_vars() { export CR_INTERNAL_SECURE_PORT export CR_EXTERNAL_PORT export CR_EXTERNAL_SECURE_PORT + + export CR_APP_COUNT } # Start the Callback reciver in the simulator group -# args: - +# args: # (Function for test scripts) start_cr() { echo -e $BOLD"Starting $CR_DISPLAY_NAME"$EBOLD + if [ $# -ne 1 ]; then + echo -e $RED" Number of CR instances missing, usage: start_cr "$ERED + exit 1 + fi + if [ $1 -lt 1 ] || [ $1 -gt 10 ]; then + echo -e $RED" Number of CR shall be 1...10, usage: start_cr "$ERED + exit 1 + fi + export CR_APP_COUNT=$1 + if [ $RUNMODE == "KUBE" ]; then # Check if app shall be fully managed by the test script @@ -235,15 +264,13 @@ start_cr() { fi - __check_service_start $CR_APP_NAME $CR_SERVICE_PATH$CR_ALIVE_URL + for ((CR_INSTANCE=0; CR_INSTANCE<$CR_APP_COUNT; CR_INSTANCE++ )); do + __dynvar="CR_SERVICE_PATH_"$CR_INSTANCE + __cr_app_name=$CR_APP_NAME"-"$CR_INSTANCE + __check_service_start $__cr_app_name ${!__dynvar}$CR_ALIVE_URL + result=$(__do_curl ${!__dynvar}/reset) + done - echo -ne " Service $CR_APP_NAME - reset "$SAMELINE - result=$(__do_curl CR $CR_SERVICE_PATH/reset) - if [ $? -ne 0 ]; then - echo -e " Service $CR_APP_NAME - reset $RED Failed $ERED - will continue" - else - echo -e " Service $CR_APP_NAME - reset $GREEN OK $EGREEN" - fi else # Check if docker app shall be fully managed by the test script __check_included_image 'CR' @@ -255,65 +282,124 @@ start_cr() { __cr_export_vars - __start_container $CR_COMPOSE_DIR "" NODOCKERARGS 1 $CR_APP_NAME + app_data="" + cntr=1 + while [ $cntr -le $CR_APP_COUNT ]; do + app=$CR_APP_NAME"_cr_"$cntr + app_data="$app_data $app" + let cntr=cntr+1 + done + + echo "COMPOSE_PROJECT_NAME="$CR_APP_NAME > $SIM_GROUP/$CR_COMPOSE_DIR/.env + + __start_container $CR_COMPOSE_DIR "" NODOCKERARGS $CR_APP_COUNT $app_data - __check_service_start $CR_APP_NAME $CR_SERVICE_PATH$CR_ALIVE_URL + cntr=1 #Counter for docker instance, starts on 1 + cntr2=0 #Couter for env var name, starts with 0 to be compablible with kube + while [ $cntr -le $CR_APP_COUNT ]; do + app=$CR_APP_NAME"_cr_"$cntr + __dynvar="CR_SERVICE_PATH_"$cntr2 + __check_service_start $app ${!__dynvar}$CR_ALIVE_URL + let cntr=cntr+1 + let cntr2=cntr2+1 + done fi echo "" } +#Convert a cr path id to the value of the environment var holding the url +# arg: +# returns: +__cr_get_service_path(){ + if [ $# -ne 1 ]; then + echo "DUMMY" + return 1 + fi + if [ $1 -lt 0 ] || [ $1 -ge $MAX_CR_APP_COUNT ]; then + echo "DUMMY" + return 1 + fi + __dynvar="CR_SERVICE_PATH_"$1 + echo ${!__dynvar} + return 0 +} # Tests if a variable value in the CR is equal to a target value and and optional timeout. # Arg: - This test set pass or fail depending on if the variable is # equal to the target or not. -# Arg: - This test waits up to the timeout seconds +# Arg: - This test waits up to the timeout seconds # before setting pass or fail depending on if the variable value becomes equal to the target # value or not. # (Function for test scripts) cr_equal() { - if [ $# -eq 2 ] || [ $# -eq 3 ]; then - __var_test "CR" "$CR_SERVICE_PATH/counter/" $1 "=" $2 $3 + if [ $# -eq 3 ] || [ $# -eq 4 ]; then + CR_SERVICE_PATH=$(__cr_get_service_path $1) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ + return 1 + fi + __var_test "CR" "$CR_SERVICE_PATH/counter/" $2 "=" $3 $4 else - __print_err "Wrong args to cr_equal, needs two or three args: [ timeout ]" $@ + __print_err "Wrong args to cr_equal, needs three or four args: [ timeout ]" $@ fi } # Tests if a variable value in the CR contains the target string and and optional timeout # Arg: - This test set pass or fail depending on if the variable contains # the target or not. -# Arg: - This test waits up to the timeout seconds +# Arg: - This test waits up to the timeout seconds # before setting pass or fail depending on if the variable value contains the target # value or not. # (Function for test scripts) cr_contains_str() { - if [ $# -eq 2 ] || [ $# -eq 3 ]; then - __var_test "CR" "$CR_SERVICE_PATH/counter/" $1 "contain_str" $2 $3 + if [ $# -eq 3 ] || [ $# -eq 4 ]; then + CR_SERVICE_PATH=$(__cr_get_service_path $1) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ + return 1 + fi + __var_test "CR" "$CR_SERVICE_PATH/counter/" $2 "contain_str" $3 $4 return 0 else - __print_err "needs two or three args: [ timeout ]" + __print_err "needs two or three args: [ timeout ]" return 1 fi } # Read a variable value from CR sim and send to stdout. Arg: cr_read() { + CR_SERVICE_PATH=$(__cr_get_service_path $1) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ + return 1 + fi echo "$(__do_curl $CR_SERVICE_PATH/counter/$1)" } # Function to configure write delay on callbacks # Delay given in seconds. -# arg +# arg # (Function for test scripts) cr_delay_callback() { __log_conf_start $@ - if [ $# -ne 2 ]; then - __print_err " ]" $@ + if [ $# -ne 3 ]; then + __print_err " ]" $@ return 1 fi - res="$(__do_curl_to_api CR POST /forcedelay?delay=$2)" + CR_SERVICE_PATH=$(__cr_get_service_path $2) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ + return 1 + fi + + res="$(__do_curl_to_api CR POST /forcedelay?delay=$3)" status=${res:${#res}-3} if [ $status -ne 200 ]; then @@ -326,7 +412,7 @@ cr_delay_callback() { } # CR API: Check the contents of all current ric sync events for one id from PMS -# [ EMPTY | ( )+ ] +# [ EMPTY | ( )+ ] # (Function for test scripts) cr_api_check_all_sync_events() { __log_test_start $@ @@ -336,12 +422,19 @@ cr_api_check_all_sync_events() { return 1 fi - if [ $# -lt 2 ]; then - __print_err " [ EMPTY | ( )+ ]" $@ + if [ $# -lt 3 ]; then + __print_err " [ EMPTY | ( )+ ]" $@ return 1 fi - query="/get-all-events/"$2 + CR_SERVICE_PATH=$(__cr_get_service_path $2) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ + return 1 + fi + + query="/get-all-events/"$3 res="$(__do_curl_to_api CR GET $query)" status=${res:${#res}-3} @@ -350,15 +443,15 @@ cr_api_check_all_sync_events() { return 1 fi - if [ $# -gt 2 ]; then + if [ $# -gt 3 ]; then body=${res:0:${#res}-3} - if [ $# -eq 3 ] && [ $3 == "EMPTY" ]; then + if [ $# -eq 4 ] && [ $4 == "EMPTY" ]; then targetJson="[" else targetJson="[" - arr=(${@:3}) + arr=(${@:4}) - for ((i=0; i<$(($#-2)); i=i+1)); do + for ((i=0; i<$(($#-3)); i=i+1)); do if [ "$targetJson" != "[" ]; then targetJson=$targetJson"," @@ -381,17 +474,24 @@ cr_api_check_all_sync_events() { } # CR API: Check the contents of all current status events for one id from ECS -# [ EMPTY | ( )+ ] +# [ EMPTY | ( )+ ] # (Function for test scripts) cr_api_check_all_ecs_events() { __log_test_start $@ - if [ $# -lt 2 ]; then - __print_err " [ EMPTY | ( )+ ]" $@ + if [ $# -lt 3 ]; then + __print_err " [ EMPTY | ( )+ ]" $@ return 1 fi - query="/get-all-events/"$2 + CR_SERVICE_PATH=$(__cr_get_service_path $2) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ + return 1 + fi + + query="/get-all-events/"$3 res="$(__do_curl_to_api CR GET $query)" status=${res:${#res}-3} @@ -400,15 +500,15 @@ cr_api_check_all_ecs_events() { return 1 fi - if [ $# -gt 2 ]; then + if [ $# -gt 3 ]; then body=${res:0:${#res}-3} - if [ $# -eq 3 ] && [ $3 == "EMPTY" ]; then + if [ $# -eq 4 ] && [ $4 == "EMPTY" ]; then targetJson="[" else targetJson="[" - arr=(${@:3}) + arr=(${@:4}) - for ((i=0; i<$(($#-2)); i=i+1)); do + for ((i=0; i<$(($#-3)); i=i+1)); do if [ "$targetJson" != "[" ]; then targetJson=$targetJson"," @@ -431,29 +531,36 @@ cr_api_check_all_ecs_events() { } # CR API: Check the contents of all current type subscription events for one id from ECS -# [ EMPTY | ( )+ ] +# [ EMPTY | ( )+ ] # (Function for test scripts) cr_api_check_all_ecs_subscription_events() { __log_test_start $@ - #Valid number of parameter 2,3,7,11 + #Valid number of parameter 3,4,8,12 paramError=1 - if [ $# -eq 2 ]; then + if [ $# -eq 3 ]; then paramError=0 fi - if [ $# -eq 3 ] && [ "$3" == "EMPTY" ]; then + if [ $# -eq 4 ] && [ "$4" == "EMPTY" ]; then paramError=0 fi - variablecount=$(($#-2)) - if [ $# -gt 3 ] && [ $(($variablecount%3)) -eq 0 ]; then + variablecount=$(($#-3)) + if [ $# -gt 4 ] && [ $(($variablecount%3)) -eq 0 ]; then paramError=0 fi if [ $paramError -eq 1 ]; then - __print_err " [ EMPTY | ( )+ ]" $@ + __print_err " [ EMPTY | ( )+ ]" $@ + return 1 + fi + + CR_SERVICE_PATH=$(__cr_get_service_path $2) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ return 1 fi - query="/get-all-events/"$2 + query="/get-all-events/"$3 res="$(__do_curl_to_api CR GET $query)" status=${res:${#res}-3} @@ -462,12 +569,12 @@ cr_api_check_all_ecs_subscription_events() { return 1 fi - if [ $# -gt 2 ]; then + if [ $# -gt 3 ]; then body=${res:0:${#res}-3} targetJson="[" - if [ $# -gt 3 ]; then - arr=(${@:3}) - for ((i=0; i<$(($#-3)); i=i+3)); do + if [ $# -gt 4 ]; then + arr=(${@:4}) + for ((i=0; i<$(($#-4)); i=i+3)); do if [ "$targetJson" != "[" ]; then targetJson=$targetJson"," fi @@ -497,11 +604,23 @@ cr_api_check_all_ecs_subscription_events() { # CR API: Reset all events and counters -# Arg: - +# Arg: # (Function for test scripts) cr_api_reset() { __log_conf_start $@ + if [ $# -ne 0 ]; then + __print_err "" $@ + return 1 + fi + + CR_SERVICE_PATH=$(__cr_get_service_path $1) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ + return 1 + fi + res="$(__do_curl_to_api CR GET /reset)" status=${res:${#res}-3} @@ -516,17 +635,24 @@ cr_api_reset() { # CR API: Check the contents of all json events for path -# (EMPTY | + ) +# (EMPTY | + ) # (Function for test scripts) cr_api_check_all_genric_json_events() { __log_test_start $@ - if [ $# -lt 3 ]; then - __print_err " (EMPTY | + )" $@ + if [ $# -lt 4 ]; then + __print_err " (EMPTY | + )" $@ + return 1 + fi + + CR_SERVICE_PATH=$(__cr_get_service_path $2) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ return 1 fi - query="/get-all-events/"$2 + query="/get-all-events/"$3 res="$(__do_curl_to_api CR GET $query)" status=${res:${#res}-3} @@ -537,7 +663,8 @@ cr_api_check_all_genric_json_events() { body=${res:0:${#res}-3} targetJson="[" - if [ $3 != "EMPTY" ]; then + if [ $4 != "EMPTY" ]; then + shift shift shift while [ $# -gt 0 ]; do @@ -563,19 +690,25 @@ cr_api_check_all_genric_json_events() { } - # CR API: Check a single (oldest) json event (or none if empty) for path -# (EMPTY | ) +# (EMPTY | ) # (Function for test scripts) cr_api_check_single_genric_json_event() { __log_test_start $@ - if [ $# -ne 3 ]; then - __print_err " (EMPTY | )" $@ + if [ $# -ne 4 ]; then + __print_err " (EMPTY | )" $@ return 1 fi - query="/get-event/"$2 + CR_SERVICE_PATH=$(__cr_get_service_path $2) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ + return 1 + fi + + query="/get-event/"$3 res="$(__do_curl_to_api CR GET $query)" status=${res:${#res}-3} @@ -584,7 +717,7 @@ cr_api_check_single_genric_json_event() { return 1 fi body=${res:0:${#res}-3} - targetJson=$3 + targetJson=$4 if [ $targetJson == "EMPTY" ] && [ ${#body} -ne 0 ]; then __log_test_fail_body @@ -605,17 +738,24 @@ cr_api_check_single_genric_json_event() { # CR API: Check a single (oldest) json in md5 format (or none if empty) for path. # Note that if a json message is given, it shall be compact, no ws except inside string. # The MD5 will generate different hash if ws is present or not in otherwise equivalent json -# arg: (EMPTY | ) +# arg: (EMPTY | ) # (Function for test scripts) cr_api_check_single_genric_event_md5() { __log_test_start $@ - if [ $# -ne 3 ]; then - __print_err " (EMPTY | )" $@ + if [ $# -ne 4 ]; then + __print_err " (EMPTY | )" $@ + return 1 + fi + + CR_SERVICE_PATH=$(__cr_get_service_path $2) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ return 1 fi - query="/get-event/"$2 + query="/get-event/"$3 res="$(__do_curl_to_api CR GET $query)" status=${res:${#res}-3} @@ -624,7 +764,7 @@ cr_api_check_single_genric_event_md5() { return 1 fi body=${res:0:${#res}-3} - if [ $3 == "EMPTY" ]; then + if [ $4 == "EMPTY" ]; then if [ ${#body} -ne 0 ]; then __log_test_fail_body return 1 @@ -635,11 +775,11 @@ cr_api_check_single_genric_event_md5() { fi command -v md5 > /dev/null # Mac if [ $? -eq 0 ]; then - targetMd5=$(echo -n "$3" | md5) + targetMd5=$(echo -n "$4" | md5) else command -v md5sum > /dev/null # Linux if [ $? -eq 0 ]; then - targetMd5=$(echo -n "$3" | md5sum | cut -d' ' -f 1) # Need to cut additional info printed by cmd + targetMd5=$(echo -n "$4" | md5sum | cut -d' ' -f 1) # Need to cut additional info printed by cmd else __log_test_fail_general "Command md5 nor md5sum is available" return 1 @@ -661,17 +801,24 @@ cr_api_check_single_genric_event_md5() { # CR API: Check a single (oldest) event in md5 format (or none if empty) for path. # Note that if a file with json message is given, the json shall be compact, no ws except inside string and not newlines. # The MD5 will generate different hash if ws/newlines is present or not in otherwise equivalent json -# arg: (EMPTY | ) +# arg: (EMPTY | ) # (Function for test scripts) cr_api_check_single_genric_event_md5_file() { __log_test_start $@ - if [ $# -ne 3 ]; then - __print_err " (EMPTY | )" $@ + if [ $# -ne 4 ]; then + __print_err " (EMPTY | )" $@ + return 1 + fi + + CR_SERVICE_PATH=$(__cr_get_service_path $2) + CR_ADAPTER=$CR_SERVICE_PATH + if [ $? -ne 0 ]; then + __print_err " missing or incorrect" $@ return 1 fi - query="/get-event/"$2 + query="/get-event/"$3 res="$(__do_curl_to_api CR GET $query)" status=${res:${#res}-3} @@ -680,7 +827,7 @@ cr_api_check_single_genric_event_md5_file() { return 1 fi body=${res:0:${#res}-3} - if [ $3 == "EMPTY" ]; then + if [ $4 == "EMPTY" ]; then if [ ${#body} -ne 0 ]; then __log_test_fail_body return 1 @@ -690,12 +837,12 @@ cr_api_check_single_genric_event_md5_file() { fi fi - if [ ! -f $3 ]; then + if [ ! -f $4 ]; then __log_test_fail_general "File $3 does not exist" return 1 fi - filedata=$(cat $3) + filedata=$(cat $4) command -v md5 > /dev/null # Mac if [ $? -eq 0 ]; then diff --git a/test/common/dmaapmr_api_functions.sh b/test/common/dmaapmr_api_functions.sh new file mode 100644 index 00000000..d0f3f0ce --- /dev/null +++ b/test/common/dmaapmr_api_functions.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# ============LICENSE_START=============================================== +# Copyright (C) 2021 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. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END================================================= +# + +# Functions for DMAAPMR is included in mr_api_functions.sh + + + diff --git a/test/common/genstat.sh b/test/common/genstat.sh index 3c329d9b..2adce1f2 100755 --- a/test/common/genstat.sh +++ b/test/common/genstat.sh @@ -31,7 +31,7 @@ print_usage() { echo "or" echo "Usage: genstat.sh KUBE [ ]*" } - +DD=$@ STARTTIME=-1 if [ $# -lt 4 ]; then @@ -66,7 +66,8 @@ else fi -echo "Time;Name;PIDS;CPU perc;Mem perc" > $LOGFILE +echo "Name;Time;PIDS;CPU perc;Mem perc" > $LOGFILE +echo $DD >> $LOGFILE if [ "$STARTTIME" -ne -1 ]; then STARTTIME=$(($SECONDS-$STARTTIME)) diff --git a/test/common/http_proxy_api_functions.sh b/test/common/httpproxy_api_functions.sh similarity index 100% rename from test/common/http_proxy_api_functions.sh rename to test/common/httpproxy_api_functions.sh diff --git a/test/common/kube_proxy_api_functions.sh b/test/common/kubeproxy_api_functions.sh similarity index 100% rename from test/common/kube_proxy_api_functions.sh rename to test/common/kubeproxy_api_functions.sh diff --git a/test/common/mr_api_functions.sh b/test/common/mr_api_functions.sh index da3e34db..20021316 100755 --- a/test/common/mr_api_functions.sh +++ b/test/common/mr_api_functions.sh @@ -199,9 +199,9 @@ __DMAAPMR_initial_setup() { # args: - __MR_statisics_setup() { if [ $RUNMODE == "KUBE" ]; then - echo "MR $MR_STUB_APP_NAME $KUBE_ONAP_NAMESPACE" + echo "MR-STUB $MR_STUB_APP_NAME $KUBE_ONAP_NAMESPACE" else - echo "MR $MR_STUB_APP_NAME" + echo "MR-STUB $MR_STUB_APP_NAME" fi } @@ -211,9 +211,9 @@ __MR_statisics_setup() { # args: - __DMAAPMR_statisics_setup() { if [ $RUNMODE == "KUBE" ]; then - echo "" + echo "KAFKA $MR_KAFKA_APP_NAME $KUBE_ONAP_NAMESPACE MESSAGE-ROUTER $MR_DMAAP_APP_NAME $KUBE_ONAP_NAMESPACE ZOOKEEPER $MR_ZOOKEEPER_APP_NAME $KUBE_ONAP_NAMESPACE" else - echo "" + echo "KAFKA $MR_KAFKA_APP_NAME MESSAGE-ROUTER $MR_DMAAP_APP_NAME ZOOKEEPER $MR_ZOOKEEPER_APP_NAME" fi } @@ -294,12 +294,14 @@ __mr_set_protocoll() { MR_SERVICE_PATH=$MR_STUB_PATH # access container->container, docker - access pod->svc, kube MR_KAFKA_SERVICE_PATH="" + MR_ZOOKEEPER_SERVICE_PATH="" __check_included_image "DMAAPMR" if [ $? -eq 0 ]; then MR_SERVICE_PATH=$MR_DMAAP_PATH # access container->container, docker - access pod->svc, kube MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH MR_KAFKA_SERVICE_PATH=$MR_KAFKA_APP_NAME":"$MR_KAFKA_PORT + MR_ZOOKEEPER_SERVICE_PATH=$MR_ZOOKEEPER_APP_NAME":"$MR_ZOOKEEPER_PORT fi # For directing calls from script to e.g.PMS via message rounter @@ -321,12 +323,14 @@ __mr_set_protocoll() { MR_SERVICE_PATH=$MR_DMAAP_PATH MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH MR_KAFKA_SERVICE_PATH=$MR_KAFKA_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_KAFKA_PORT + MR_ZOOKEEPER_SERVICE_PATH=$MR_ZOOKEEPER_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_ZOOKEEPER_PORT fi __check_prestarted_image "DMAAPMR" if [ $? -eq 0 ]; then MR_SERVICE_PATH=$MR_DMAAP_PATH MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH MR_KAFKA_SERVICE_PATH=$MR_KAFKA_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_KAFKA_PORT + MR_ZOOKEEPER_SERVICE_PATH=$MR_ZOOKEEPER_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_ZOOKEEPER_PORT fi # For directing calls from script to e.g.PMS, via message rounter @@ -343,74 +347,6 @@ __mr_set_protocoll() { } - -# use_mr_http() { 2 3 4 5 6 7 -# __mr_set_protocoll "http" $MR_INTERNAL_PORT $MR_EXTERNAL_PORT $MR_INTERNAL_PORT $MR_EXTERNAL_PORT $MR_INTERNAL_SECURE_PORT $MR_EXT_SECURE_PORT -# } - -# use_mr_https() { -# __mr_set_protocoll "https" $MR_INTERNAL_SECURE_PORT $MR_EXTERNAL_SECURE_PORT -# } - -# # Setup paths to svc/container for internal and external access -# # args: -# __mr_set_protocoll() { -# echo -e $BOLD"$MR_STUB_DISPLAY_NAME and $MR_DMAAP_DISPLAY_NAME protocol setting"$EBOLD -# echo -e " Using $BOLD http $EBOLD towards $MR_STUB_DISPLAY_NAME and $MR_DMAAP_DISPLAY_NAME" - -# ## Access to Dmaap mediator - -# MR_HTTPX=$1 - -# # Access via test script -# MR_STUB_PATH=$MR_HTTPX"://"$MR_STUB_APP_NAME":"$2 # access from script via proxy, docker -# MR_DMAAP_PATH=$MR_HTTPX"://"$MR_DMAAP_APP_NAME":"$2 # access from script via proxy, docker -# MR_DMAAP_ADAPTER_HTTP="" # Access to dmaap mr via proyx - set only if app is included - -# MR_SERVICE_PATH=$MR_STUB_PATH # access container->container, docker - access pod->svc, kube -# __check_included_image "DMAAPMR" -# if [ $? -eq 0 ]; then -# MR_SERVICE_PATH=$MR_DMAAP_PATH # access container->container, docker - access pod->svc, kube -# MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH -# fi - -# # For directing calls from script to e.g.PMS via message rounter -# # These cases shall always go though the mr-stub -# MR_ADAPTER_HTTP="http://"$MR_STUB_APP_NAME":"$4 -# MR_ADAPTER_HTTPS="https://"$MR_STUB_APP_NAME":"$6 - -# MR_DMAAP_ADAPTER_TYPE="REST" - -# if [ $RUNMODE == "KUBE" ]; then -# MR_STUB_PATH=$MR_HTTPX"://"$MR_STUB_APP_NAME.$KUBE_ONAP_NAMESPACE":"$3 # access from script via proxy, kube -# MR_DMAAP_PATH=$MR_HTTPX"://"$MR_DMAAP_APP_NAME.$KUBE_ONAP_NAMESPACE":"$3 # access from script via proxy, kube - -# MR_SERVICE_PATH=$MR_STUB_PATH -# __check_included_image "DMAAPMR" -# if [ $? -eq 0 ]; then -# MR_SERVICE_PATH=$MR_DMAAP_PATH -# MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH -# fi -# __check_prestarted_image "DMAAPMR" -# if [ $? -eq 0 ]; then -# MR_SERVICE_PATH=$MR_DMAAP_PATH -# MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH -# fi - -# # For directing calls from script to e.g.PMS, via message rounter -# # These calls shall always go though the mr-stub -# MR_ADAPTER_HTTP="http://"$MR_STUB_APP_NAME":"$5 -# MR_ADAPTER_HTTPS="https://"$MR_STUB_APP_NAME":"$7 -# fi - -# # For calls from script to the mr-stub -# MR_STUB_ADAPTER=$MR_STUB_PATH -# MR_STUB_ADAPTER_TYPE="REST" - -# echo "" - -# } - # Export env vars for config files, docker compose and kube resources # args: - __dmaapmr_export_vars() { @@ -435,6 +371,7 @@ __dmaapmr_export_vars() { export MR_ZOOKEEPER_PORT export MR_KAFKA_SERVICE_PATH + export MR_ZOOKEEPER_SERVICE_PATH } # Export env vars for config files, docker compose and kube resources @@ -457,6 +394,7 @@ __mr_export_vars() { export MR_EXTERNAL_PORT export MR_KAFKA_SERVICE_PATH + export MR_ZOOKEEPER_SERVICE_PATH } @@ -569,37 +507,8 @@ start_mr() { __kube_create_instance app $MR_DMAAP_APP_NAME $input_yaml $output_yaml - # echo " Retrieving host and ports for service..." - # MR_DMAAP_HOST_NAME=$(__kube_get_service_host $MR_DMAAP_APP_NAME $KUBE_ONAP_NAMESPACE) - - # MR_EXT_PORT=$(__kube_get_service_port $MR_DMAAP_APP_NAME $KUBE_ONAP_NAMESPACE "http") - # MR_EXT_SECURE_PORT=$(__kube_get_service_port $MR_DMAAP_APP_NAME $KUBE_ONAP_NAMESPACE "https") - - # echo " Host IP, http port, https port: $MR_DMAAP_APP_NAME $MR_EXT_PORT $MR_EXT_SECURE_PORT" - # MR_SERVICE_PATH="" - # if [ $MR_HTTPX == "http" ]; then - # MR_DMAAP_PATH=$MR_HTTPX"://"$MR_DMAAP_HOST_NAME":"$MR_EXT_PORT - # MR_SERVICE_PATH=$MR_HTTPX"://"$MR_DMAAP_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_EXT_PORT - # else - # MR_DMAAP_PATH=$MR_HTTPX"://"$MR_DMAAP_HOST_NAME":"$MR_EXT_SECURE_PORT - # MR_SERVICE_PATH=$MR_HTTPX"://"$MR_DMAAP_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_EXT_SECURE_PORT - # fi - __check_service_start $MR_DMAAP_APP_NAME $MR_DMAAP_PATH$MR_DMAAP_ALIVE_URL - # Cannot create topics, returns 400 forever.....topics will be created during pipeclean below - #__create_topic $MR_READ_TOPIC "Topic for reading policy messages" - - #__create_topic $MR_WRITE_TOPIC "Topic for writing policy messages" - -# __dmaap_pipeclean $MR_READ_TOPIC "/events/$MR_READ_TOPIC" "/events/$MR_READ_TOPIC/users/policy-agent?timeout=1000&limit=100" -# -# __dmaap_pipeclean $MR_WRITE_TOPIC "/events/$MR_WRITE_TOPIC" "/events/$MR_WRITE_TOPIC/users/mr-stub?timeout=1000&limit=100" - - - #__dmaap_pipeclean "unauthenticated.dmaapmed.json" "/events/unauthenticated.dmaapmed.json" "/events/unauthenticated.dmaapmed.json/dmaapmediatorproducer/STD_Fault_Messages?timeout=1000&limit=100" - #__dmaap_pipeclean "unauthenticated.dmaapadp.json" "/events/unauthenticated.dmaapadp.json" "/events/unauthenticated.dmaapadp.json/dmaapadapterproducer/msgs?timeout=1000&limit=100" - if [ $# -gt 0 ]; then if [ $(($#%3)) -eq 0 ]; then while [ $# -gt 0 ]; do @@ -650,41 +559,8 @@ start_mr() { fi - # echo " Retrieving host and ports for service..." - # MR_STUB_HOST_NAME=$(__kube_get_service_host $MR_STUB_APP_NAME $KUBE_ONAP_NAMESPACE) - - # MR_EXT_PORT=$(__kube_get_service_port $MR_STUB_APP_NAME $KUBE_ONAP_NAMESPACE "http") - # MR_EXT_SECURE_PORT=$(__kube_get_service_port $MR_STUB_APP_NAME $KUBE_ONAP_NAMESPACE "https") - - # echo " Host IP, http port, https port: $MR_STUB_APP_NAME $MR_EXT_PORT $MR_EXT_SECURE_PORT" - # if [ $MR_HTTPX == "http" ]; then - # MR_STUB_PATH=$MR_HTTPX"://"$MR_STUB_HOST_NAME":"$MR_EXT_PORT - # if [ -z "$MR_SERVICE_PATH" ]; then - # MR_SERVICE_PATH=$MR_HTTPX"://"$MR_STUB_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_EXT_PORT - # fi - # else - # MR_STUB_PATH=$MR_HTTPX"://"$MR_STUB_HOST_NAME":"$MR_EXT_SECURE_PORT - # if [ -z "$MR_SERVICE_PATH" ]; then - # MR_SERVICE_PATH=$MR_HTTPX"://"$MR_STUB_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_EXT_SECURE_PORT - # fi - # fi - # MR_ADAPTER_HTTP="http://"$MR_STUB_HOST_NAME":"$MR_EXT_PORT - # MR_ADAPTER_HTTPS="https://"$MR_STUB_HOST_NAME":"$MR_EXT_SECURE_PORT - - # MR_STUB_ADAPTER=$MR_STUB_PATH - # MR_STUB_ADAPTER_TYPE="REST" - __check_service_start $MR_STUB_APP_NAME $MR_STUB_PATH$MR_STUB_ALIVE_URL - echo -ne " Service $MR_STUB_APP_NAME - reset "$SAMELINE - result=$(__do_curl $MR_STUB_PATH/reset) - if [ $? -ne 0 ]; then - echo -e " Service $MR_STUB_APP_NAME - reset $RED Failed $ERED - will continue" - else - echo -e " Service $MR_STUB_APP_NAME - reset $GREEN OK $EGREEN" - fi - - else __check_included_image 'DMAAPMR' @@ -732,16 +608,6 @@ start_mr() { __check_service_start $MR_DMAAP_APP_NAME $MR_DMAAP_PATH$MR_DMAAP_ALIVE_URL - - # Cannot create topics, returns 400 forever.....topics will be created during pipeclean below - #__create_topic $MR_READ_TOPIC "Topic for reading policy messages" - - #__create_topic $MR_WRITE_TOPIC "Topic for writing policy messages" - - #__dmaap_pipeclean $MR_READ_TOPIC "/events/$MR_READ_TOPIC" "/events/$MR_READ_TOPIC/users/policy-agent?timeout=1000&limit=100" - - #__dmaap_pipeclean $MR_WRITE_TOPIC "/events/$MR_WRITE_TOPIC" "/events/$MR_WRITE_TOPIC/users/mr-stub?timeout=1000&limit=100" - if [ $# -gt 0 ]; then if [ $(($#%3)) -eq 0 ]; then while [ $# -gt 0 ]; do @@ -755,9 +621,6 @@ start_mr() { fi fi - #__dmaap_pipeclean "unauthenticated.dmaapmed.json" "/events/unauthenticated.dmaapmed.json" "/events/unauthenticated.dmaapmed.json/dmaapmediatorproducer/STD_Fault_Messages?timeout=1000&limit=100" - #__dmaap_pipeclean "unauthenticated.dmaapadp.json" "/events/unauthenticated.dmaapadp.json" "/events/unauthenticated.dmaapadp.json/dmaapadapterproducer/msgs?timeout=1000&limit=100" - echo " Current topics:" curlString="$MR_DMAAP_PATH/topics" result=$(__do_curl "$curlString") @@ -1017,12 +880,12 @@ mr_api_generate_json_payload_file() { __log_conf_fail_general "Only size between 1k and 10000k supported" return 1 fi - echo -n "{\"a\":[" > $2 - LEN=$(($1*150)) - echo -n "\"a0\"" >> $2 + echo -n "{\"abcdefghijklmno\":[" > $2 + LEN=$(($1*100-2)) + echo -n "\""ABCDEFG"\"" >> $2 for ((idx=1; idx<$LEN; idx++)) do - echo -n ",\"a$idx\"" >> $2 + echo -n ",\"ABCDEFG\"" >> $2 done echo -n "]}" >> $2 diff --git a/test/common/gateway_api_functions.sh b/test/common/ngw_api_functions.sh similarity index 100% rename from test/common/gateway_api_functions.sh rename to test/common/ngw_api_functions.sh diff --git a/test/common/agent_api_functions.sh b/test/common/pa_api_functions.sh similarity index 93% rename from test/common/agent_api_functions.sh rename to test/common/pa_api_functions.sh index 4cedad1c..53670605 100644 --- a/test/common/agent_api_functions.sh +++ b/test/common/pa_api_functions.sh @@ -444,6 +444,122 @@ start_stopped_policy_agent() { } +# Function to perpare the consul configuration according to the current simulator configuration +# args: SDNC|NOSDNC +# (Function for test scripts) +prepare_consul_config() { + echo -e $BOLD"Prepare Consul config"$EBOLD + + echo " Writing consul config for "$POLICY_AGENT_APP_NAME" to file: "$2 + + if [ $# != 2 ]; then + ((RES_CONF_FAIL++)) + __print_err "need two args, SDNC|NOSDNC " $@ + exit 1 + fi + + if [ $1 == "SDNC" ]; then + echo -e " Config$BOLD including SDNC$EBOLD configuration" + elif [ $1 == "NOSDNC" ]; then + echo -e " Config$BOLD excluding SDNC$EBOLD configuration" + else + ((RES_CONF_FAIL++)) + __print_err "need two args, SDNC|NOSDNC " $@ + exit 1 + fi + + config_json="\n {" + if [ $1 == "SDNC" ]; then + config_json=$config_json"\n \"controller\": [" + config_json=$config_json"\n {" + config_json=$config_json"\n \"name\": \"$SDNC_APP_NAME\"," + config_json=$config_json"\n \"baseUrl\": \"$SDNC_SERVICE_PATH\"," + config_json=$config_json"\n \"userName\": \"$SDNC_USER\"," + config_json=$config_json"\n \"password\": \"$SDNC_PWD\"" + config_json=$config_json"\n }" + config_json=$config_json"\n ]," + fi + + config_json=$config_json"\n \"streams_publishes\": {" + config_json=$config_json"\n \"dmaap_publisher\": {" + config_json=$config_json"\n \"type\": \"message-router\"," + config_json=$config_json"\n \"dmaap_info\": {" + config_json=$config_json"\n \"topic_url\": \"$MR_SERVICE_PATH$MR_WRITE_URL\"" + config_json=$config_json"\n }" + config_json=$config_json"\n }" + config_json=$config_json"\n }," + config_json=$config_json"\n \"streams_subscribes\": {" + config_json=$config_json"\n \"dmaap_subscriber\": {" + config_json=$config_json"\n \"type\": \"message-router\"," + config_json=$config_json"\n \"dmaap_info\": {" + config_json=$config_json"\n \"topic_url\": \"$MR_SERVICE_PATH$MR_READ_URL\"" + config_json=$config_json"\n }" + config_json=$config_json"\n }" + config_json=$config_json"\n }," + + config_json=$config_json"\n \"ric\": [" + + if [ $RUNMODE == "KUBE" ]; then + result=$(kubectl get pods -n $KUBE_A1SIM_NAMESPACE -o jsonpath='{.items[?(@.metadata.labels.autotest=="RICSIM")].metadata.name}') + rics="" + ric_cntr=0 + if [ $? -eq 0 ] && [ ! -z "$result" ]; then + for im in $result; do + if [[ $im != *"-0" ]]; then + ric_subdomain=$(kubectl get pod $im -n $KUBE_A1SIM_NAMESPACE -o jsonpath='{.spec.subdomain}') + rics=$rics" "$im"."$ric_subdomain"."$KUBE_A1SIM_NAMESPACE + let ric_cntr=ric_cntr+1 + fi + done + fi + if [ $ric_cntr -eq 0 ]; then + echo $YELLOW"Warning: No rics found for the configuration"$EYELLOW + fi + else + rics=$(docker ps --filter "name=$RIC_SIM_PREFIX" --filter "network=$DOCKER_SIM_NWNAME" --filter "status=running" --format {{.Names}}) + if [ $? -ne 0 ] || [ -z "$rics" ]; then + echo -e $RED" FAIL - the names of the running RIC Simulator cannot be retrieved." $ERED + ((RES_CONF_FAIL++)) + return 1 + fi + fi + cntr=0 + for ric in $rics; do + if [ $cntr -gt 0 ]; then + config_json=$config_json"\n ," + fi + config_json=$config_json"\n {" + if [ $RUNMODE == "KUBE" ]; then + ric_id=${ric%.*.*} #extract pod id from full hosthame + ric_id=$(echo "$ric_id" | tr '-' '_') + else + ric_id=$ric + fi + echo " Found a1 sim: "$ric_id + config_json=$config_json"\n \"name\": \"$ric_id\"," + config_json=$config_json"\n \"baseUrl\": \"$RIC_SIM_HTTPX://$ric:$RIC_SIM_PORT\"," + if [ $1 == "SDNC" ]; then + config_json=$config_json"\n \"controller\": \"$SDNC_APP_NAME\"," + fi + config_json=$config_json"\n \"managedElementIds\": [" + config_json=$config_json"\n \"me1_$ric_id\"," + config_json=$config_json"\n \"me2_$ric_id\"" + config_json=$config_json"\n ]" + config_json=$config_json"\n }" + let cntr=cntr+1 + done + + config_json=$config_json"\n ]" + config_json=$config_json"\n}" + + if [ $RUNMODE == "KUBE" ]; then + config_json="{\"config\":"$config_json"}" + fi + + printf "$config_json">$2 + + echo "" +} # Load the the appl config for the agent into a config map agent_load_config() { diff --git a/test/common/prodstub_api_functions.sh b/test/common/prodstub_api_functions.sh index 6c3ce234..17f987ab 100644 --- a/test/common/prodstub_api_functions.sh +++ b/test/common/prodstub_api_functions.sh @@ -161,7 +161,6 @@ __prod_stub_set_protocoll() { # args: __prodstub_export_vars() { export PROD_STUB_APP_NAME - export PROD_STUB_APP_NAME_ALIAS export PROD_STUB_DISPLAY_NAME export DOCKER_SIM_NWNAME diff --git a/test/common/rapp_catalogue_api_functions.sh b/test/common/rc_api_functions.sh similarity index 100% rename from test/common/rapp_catalogue_api_functions.sh rename to test/common/rc_api_functions.sh diff --git a/test/common/ricsimulator_api_functions.sh b/test/common/ricsim_api_functions.sh similarity index 95% rename from test/common/ricsimulator_api_functions.sh rename to test/common/ricsim_api_functions.sh index 695b5358..0a1a8e36 100644 --- a/test/common/ricsimulator_api_functions.sh +++ b/test/common/ricsim_api_functions.sh @@ -96,11 +96,18 @@ __RICSIM_initial_setup() { # This function is called for apps managed by the test script as well as for prestarted apps. # args: - __RICSIM_statisics_setup() { - if [ $RUNMODE == "KUBE" ]; then - echo "" - else - echo "" - fi + for ((RICSIM_INSTANCE=10; RICSIM_INSTANCE>0; RICSIM_INSTANCE-- )); do + if [ $RUNMODE == "KUBE" ]; then + RICSIM_INSTANCE_KUBE=$(($RICSIM_INSTANCE-1)) + echo -n " RICSIM_G1_$RICSIM_INSTANCE_KUBE ${RIC_SIM_PREFIX}-g1-$RICSIM_INSTANCE_KUBE $KUBE_A1SIM_NAMESPACE " + echo -n " RICSIM_G2_$RICSIM_INSTANCE_KUBE ${RIC_SIM_PREFIX}-g2-$RICSIM_INSTANCE_KUBE $KUBE_A1SIM_NAMESPACE " + echo -n " RICSIM_G3_$RICSIM_INSTANCE_KUBE ${RIC_SIM_PREFIX}-g3-$RICSIM_INSTANCE_KUBE $KUBE_A1SIM_NAMESPACE " + else + echo -n " RICSIM_G1_$RICSIM_INSTANCE ${RIC_SIM_PREFIX}_g1_$RICSIM_INSTANCE " + echo -n " RICSIM_G2_$RICSIM_INSTANCE ${RIC_SIM_PREFIX}_g2_$RICSIM_INSTANCE " + echo -n " RICSIM_G3_$RICSIM_INSTANCE ${RIC_SIM_PREFIX}_g3_$RICSIM_INSTANCE " + fi + done } ####################################################### diff --git a/test/common/controller_api_functions.sh b/test/common/sdnc_api_functions.sh similarity index 100% rename from test/common/controller_api_functions.sh rename to test/common/sdnc_api_functions.sh diff --git a/test/common/test_env-onap-guilin.sh b/test/common/test_env-onap-guilin.sh index 6cb18f50..4ae753c2 100755 --- a/test/common/test_env-onap-guilin.sh +++ b/test/common/test_env-onap-guilin.sh @@ -215,7 +215,7 @@ MR_KAFKA_PORT=9092 # Kafka port number MR_ZOOKEEPER_APP_NAME="zookeeper" # Zookeeper app name MR_ZOOKEEPER_PORT="2181" # Zookeeper port number MR_DMAAP_HOST_MNT_DIR="/mnt" # Basedir localhost for mounted files -MR_DMAAP_HOST_CONFIG_DIR="/configs" # Config files dir on localhost +MR_DMAAP_HOST_CONFIG_DIR="/configs0" # Config files dir on localhost CR_APP_NAME="callback-receiver" # Name for the Callback receiver CR_DISPLAY_NAME="Callback Reciever" @@ -226,7 +226,7 @@ CR_INTERNAL_SECURE_PORT=8091 # Callback receiver con CR_APP_CALLBACK="/callbacks" # Url for callbacks CR_APP_CALLBACK_MR="/callbacks-mr" # Url for callbacks (data from mr which contains string encoded jsons in a json arr) CR_APP_CALLBACK_TEXT="/callbacks-text" # Url for callbacks (data containing text data) -CR_ALIVE_URL="/" # Base path for alive check +CR_ALIVE_URL="/reset" # Base path for alive check CR_COMPOSE_DIR="cr" # Dir in simulator_group for docker-compose CONSUL_HOST="consul-server" # Host name of consul diff --git a/test/common/test_env-onap-honolulu.sh b/test/common/test_env-onap-honolulu.sh index c2934206..17d738f0 100755 --- a/test/common/test_env-onap-honolulu.sh +++ b/test/common/test_env-onap-honolulu.sh @@ -259,7 +259,7 @@ MR_KAFKA_PORT=9092 # Kafka port number MR_ZOOKEEPER_APP_NAME="zookeeper" # Zookeeper app name MR_ZOOKEEPER_PORT="2181" # Zookeeper port number MR_DMAAP_HOST_MNT_DIR="/mnt" # Basedir localhost for mounted files -MR_DMAAP_HOST_CONFIG_DIR="/configs" # Config files dir on localhost +MR_DMAAP_HOST_CONFIG_DIR="/configs0" # Config files dir on localhost CR_APP_NAME="callback-receiver" # Name for the Callback receiver CR_DISPLAY_NAME="Callback Reciever" @@ -271,7 +271,7 @@ CR_APP_NAME="callback-receiver" # Name for the Callback CR_APP_CALLBACK="/callbacks" # Url for callbacks CR_APP_CALLBACK_MR="/callbacks-mr" # Url for callbacks (data from mr which contains string encoded jsons in a json arr) CR_APP_CALLBACK_TEXT="/callbacks-text" # Url for callbacks (data containing text data) -CR_ALIVE_URL="/" # Base path for alive check +CR_ALIVE_URL="/reset" # Base path for alive check CR_COMPOSE_DIR="cr" # Dir in simulator_group for docker-compose PROD_STUB_APP_NAME="producer-stub" # Name for the Producer stub diff --git a/test/common/test_env-onap-istanbul.sh b/test/common/test_env-onap-istanbul.sh index 5b111371..2a6268e7 100644 --- a/test/common/test_env-onap-istanbul.sh +++ b/test/common/test_env-onap-istanbul.sh @@ -262,7 +262,7 @@ MR_KAFKA_PORT=9092 # Kafka port number MR_ZOOKEEPER_APP_NAME="zookeeper" # Zookeeper app name MR_ZOOKEEPER_PORT="2181" # Zookeeper port number MR_DMAAP_HOST_MNT_DIR="/mnt" # Basedir localhost for mounted files -MR_DMAAP_HOST_CONFIG_DIR="/configs" # Config files dir on localhost +MR_DMAAP_HOST_CONFIG_DIR="/configs1" # Config files dir on localhost CR_APP_NAME="callback-receiver" # Name for the Callback receiver CR_DISPLAY_NAME="Callback Reciever" @@ -274,7 +274,7 @@ CR_APP_NAME="callback-receiver" # Name for the Callback CR_APP_CALLBACK="/callbacks" # Url for callbacks CR_APP_CALLBACK_MR="/callbacks-mr" # Url for callbacks (data from mr which contains string encoded jsons in a json arr) CR_APP_CALLBACK_TEXT="/callbacks-text" # Url for callbacks (data containing text data) -CR_ALIVE_URL="/" # Base path for alive check +CR_ALIVE_URL="/reset" # Base path for alive check CR_COMPOSE_DIR="cr" # Dir in simulator_group for docker-compose PROD_STUB_APP_NAME="producer-stub" # Name for the Producer stub diff --git a/test/common/test_env-oran-cherry.sh b/test/common/test_env-oran-cherry.sh index 641aabeb..513afaaa 100755 --- a/test/common/test_env-oran-cherry.sh +++ b/test/common/test_env-oran-cherry.sh @@ -262,7 +262,7 @@ MR_KAFKA_PORT=9092 # Kafka port number MR_ZOOKEEPER_APP_NAME="zookeeper" # Zookeeper app name MR_ZOOKEEPER_PORT="2181" # Zookeeper port number MR_DMAAP_HOST_MNT_DIR="/mnt" # Basedir localhost for mounted files -MR_DMAAP_HOST_CONFIG_DIR="/configs" # Config files dir on localhost +MR_DMAAP_HOST_CONFIG_DIR="/configs0" # Config files dir on localhost CR_APP_NAME="callback-receiver" # Name for the Callback receiver CR_DISPLAY_NAME="Callback Reciever" @@ -273,7 +273,7 @@ CR_INTERNAL_SECURE_PORT=8091 # Callback receiver con CR_APP_CALLBACK="/callbacks" # Url for callbacks CR_APP_CALLBACK_MR="/callbacks-mr" # Url for callbacks (data from mr which contains string encoded jsons in a json arr) CR_APP_CALLBACK_TEXT="/callbacks-text" # Url for callbacks (data containing text data) -CR_ALIVE_URL="/" # Base path for alive check +CR_ALIVE_URL="/reset" # Base path for alive check CR_COMPOSE_DIR="cr" # Dir in simulator_group for docker-compose PROD_STUB_APP_NAME="producer-stub" # Name for the Producer stub diff --git a/test/common/test_env-oran-d-release.sh b/test/common/test_env-oran-d-release.sh index 18f7e177..7e495eee 100755 --- a/test/common/test_env-oran-d-release.sh +++ b/test/common/test_env-oran-d-release.sh @@ -281,7 +281,7 @@ MR_KAFKA_PORT=9092 # Kafka port number MR_ZOOKEEPER_APP_NAME="zookeeper" # Zookeeper app name MR_ZOOKEEPER_PORT="2181" # Zookeeper port number MR_DMAAP_HOST_MNT_DIR="/mnt" # Basedir localhost for mounted files -MR_DMAAP_HOST_CONFIG_DIR="/configs" # Config files dir on localhost +MR_DMAAP_HOST_CONFIG_DIR="/configs0" # Config files dir on localhost CR_APP_NAME="callback-receiver" # Name for the Callback receiver CR_DISPLAY_NAME="Callback receiver" @@ -292,7 +292,7 @@ CR_INTERNAL_SECURE_PORT=8091 # Callback receiver con CR_APP_CALLBACK="/callbacks" # Url for callbacks CR_APP_CALLBACK_MR="/callbacks-mr" # Url for callbacks (data from mr which contains string encoded jsons in a json arr) CR_APP_CALLBACK_TEXT="/callbacks-text" # Url for callbacks (data containing text data) -CR_ALIVE_URL="/" # Base path for alive check +CR_ALIVE_URL="/reset" # Base path for alive check CR_COMPOSE_DIR="cr" # Dir in simulator_group for docker-compose PROD_STUB_APP_NAME="producer-stub" # Name for the Producer stub diff --git a/test/common/test_env-oran-e-release.sh b/test/common/test_env-oran-e-release.sh index 546e94cf..fc547feb 100755 --- a/test/common/test_env-oran-e-release.sh +++ b/test/common/test_env-oran-e-release.sh @@ -307,7 +307,7 @@ MR_KAFKA_PORT=9092 # Kafka port number MR_ZOOKEEPER_APP_NAME="zookeeper" # Zookeeper app name MR_ZOOKEEPER_PORT="2181" # Zookeeper port number MR_DMAAP_HOST_MNT_DIR="/mnt" # Basedir localhost for mounted files -MR_DMAAP_HOST_CONFIG_DIR="/configs" # Config files dir on localhost +MR_DMAAP_HOST_CONFIG_DIR="/configs1" # Config files dir on localhost CR_APP_NAME="callback-receiver" # Name for the Callback receiver CR_DISPLAY_NAME="Callback receiver" @@ -318,7 +318,7 @@ CR_INTERNAL_SECURE_PORT=8091 # Callback receiver con CR_APP_CALLBACK="/callbacks" # Url for callbacks CR_APP_CALLBACK_MR="/callbacks-mr" # Url for callbacks (data from mr which contains string encoded jsons in a json arr) CR_APP_CALLBACK_TEXT="/callbacks-text" # Url for callbacks (data containing text data) -CR_ALIVE_URL="/" # Base path for alive check +CR_ALIVE_URL="/reset" # Base path for alive check CR_COMPOSE_DIR="cr" # Dir in simulator_group for docker-compose PROD_STUB_APP_NAME="producer-stub" # Name for the Producer stub diff --git a/test/common/testcase_common.sh b/test/common/testcase_common.sh index 78eeb540..b47413a6 100755 --- a/test/common/testcase_common.sh +++ b/test/common/testcase_common.sh @@ -345,9 +345,16 @@ __log_conf_ok() { #Var for measuring execution time TCTEST_START=$SECONDS +#Vars to hold the start time and timer text for a custom timer +TC_TIMER_STARTTIME="" +TC_TIMER_TIMER_TEXT="" +TC_TIMER_CURRENT_FAILS="" # Then numer of failed test when timer starts. + # Compared with the current number of fails at timer stop + # to judge the measurement reliability + #File to save timer measurement results TIMER_MEASUREMENTS=".timer_measurement.txt" -echo -e "Activity \t Duration" > $TIMER_MEASUREMENTS +echo -e "Activity \t Duration \t Info" > $TIMER_MEASUREMENTS # If this is set, some images (control by the parameter repo-polcy) will be re-tagged and pushed to this repo before any IMAGE_REPO_ADR="" @@ -762,8 +769,21 @@ if [ ! -z "$TMP_APPS" ]; then else echo " None" fi + +echo -e $BOLD"Auto adding included apps"$EBOLD + for iapp in $INCLUDED_IMAGES; do + file_pointer=$(echo $iapp | tr '[:upper:]' '[:lower:]') + file_pointer="../common/"$file_pointer"_api_functions.sh" + echo " Auto-adding included app $iapp. Sourcing $file_pointer" + . $file_pointer + if [ ! -f "$file_pointer" ]; then + echo " Include file $file_pointer for app $iapp does not exist" + exit 1 + fi + done echo "" + # Check needed installed sw tmp=$(which python3) if [ $? -ne 0 ] || [ -z tmp ]; then @@ -1524,7 +1544,7 @@ print_result() { echo "====================================" column -t -s $'\t' $TIMER_MEASUREMENTS if [ $RES_PASS != $RES_TEST ]; then - echo -e $RED"Measurement may not be reliable when there are failed test - script timeouts may cause long measurement values"$ERED + echo -e $RED"Measurement may not be reliable when there are failed test - failures may cause long measurement values due to timeouts etc."$ERED fi echo "" @@ -1607,57 +1627,44 @@ print_result() { ##################################################################### # Start timer for time measurement -# args - (any args will be printed though) +# args: - timer value and message will be printed both on screen +# and in the timer measurement report - if at least one "print_timer is called" start_timer() { echo -e $BOLD"INFO(${BASH_LINENO[0]}): "${FUNCNAME[0]}"," $@ $EBOLD - TC_TIMER=$SECONDS + TC_TIMER_STARTTIME=$SECONDS + TC_TIMER_TIMER_TEXT="${@:1}" + if [ $# -ne 1 ]; then + __print_err "need 1 arg, " $@ + TC_TIMER_TIMER_TEXT=${FUNCNAME[0]}":"${BASH_LINENO[0]} + echo " Assigning timer name: "$TC_TIMER_TIMER_TEXT + fi + TC_TIMER_CURRENT_FAILS=$(($RES_FAIL+$RES_CONF_FAIL)) echo " Timer started: $(date)" } -# Print the value of the time (in seconds) -# args - - timer value and message will be printed both on screen -# and in the timer measurement report +# Print the running timer the value of the time (in seconds) +# Timer value and message will be printed both on screen and in the timer measurement report print_timer() { - echo -e $BOLD"INFO(${BASH_LINENO[0]}): "${FUNCNAME[0]}"," $@ $EBOLD - if [ $# -lt 1 ]; then - ((RES_CONF_FAIL++)) - __print_err "need 1 or more args, " $@ - exit 1 + echo -e $BOLD"INFO(${BASH_LINENO[0]}): "${FUNCNAME[0]}"," $TC_TIMER_TIMER_TEXT $EBOLD + if [ -z "$TC_TIMER_STARTTIME" ]; then + __print_err "timer not started" $@ + return 1 fi - duration=$(($SECONDS-$TC_TIMER)) + duration=$(($SECONDS-$TC_TIMER_STARTTIME)) if [ $duration -eq 0 ]; then duration="<1 second" else duration=$duration" seconds" fi echo " Timer duration :" $duration - - echo -e "${@:1} \t $duration" >> $TIMER_MEASUREMENTS -} - -# Print the value of the time (in seconds) and reset the timer -# args - - timer value and message will be printed both on screen -# and in the timer measurement report -print_and_reset_timer() { - echo -e $BOLD"INFO(${BASH_LINENO[0]}): "${FUNCNAME[0]}"," $@ $EBOLD - if [ $# -lt 1 ]; then - ((RES_CONF_FAIL++)) - __print_err "need 1 or more args, " $@ - exit 1 + res="-" + if [ $(($RES_FAIL+$RES_CONF_FAIL)) -ne $TC_TIMER_CURRENT_FAILS ]; then + res="Failures occured during test - timer not reliabled" fi - duration=$(($SECONDS-$TC_TIMER))" seconds" - if [ $duration -eq 0 ]; then - duration="<1 second" - else - duration=$duration" seconds" - fi - echo " Timer duration :" $duration - TC_TIMER=$SECONDS - echo " Timer reset" - - echo -e "${@:1} \t $duration" >> $TIMER_MEASUREMENTS + echo -e "$TC_TIMER_TIMER_TEXT \t $duration \t $res" >> $TIMER_MEASUREMENTS } + # Print info about a deviations from intended tests # Each deviation counted is also printed in the testreport # args @@ -1989,7 +1996,7 @@ __kube_delete_all_resources() { echo -e " Scaled $restype $resid $ns_text with label $labelname=$labelid to 0, current count=$count $GREEN OK $EGREEN" fi echo -ne " Deleting $restype $resid $ns_text with label $labelname=$labelid "$SAMELINE - kubectl delete $restype $resid $ns_flag 1> /dev/null 2> ./tmp/kubeerr + kubectl delete --grace-period=1 $restype $resid $ns_flag 1> /dev/null 2> ./tmp/kubeerr if [ $? -eq 0 ]; then echo -e " Deleted $restype $resid $ns_text with label $labelname=$labelid $GREEN OK $EGREEN" else @@ -2290,7 +2297,7 @@ clean_environment() { if [ $RUNMODE == "KUBE" ]; then __clean_kube if [ $PRE_CLEAN -eq 1 ]; then - echo " Clean docker resouces to free up resources, may take time..." + echo " Cleaning docker resouces to free up resources, may take time..." ../common/clean_docker.sh 2&>1 /dev/null echo "" fi @@ -2399,6 +2406,9 @@ __start_container() { appcount=$1 shift + envsubst < $compose_file > "gen_"$compose_file + compose_file="gen_"$compose_file + if [ "$compose_args" == "NODOCKERARGS" ]; then docker-compose -f $compose_file up -d &> .dockererr if [ $? -ne 0 ]; then diff --git a/test/cr/.gitignore b/test/cr/.gitignore index 4aa3a7ae..6409fa2a 100644 --- a/test/cr/.gitignore +++ b/test/cr/.gitignore @@ -1,2 +1,3 @@ .tmp.json -.dockererr \ No newline at end of file +.dockererr +.env \ No newline at end of file diff --git a/test/simulator-group/consul_cbs/.gitignore b/test/simulator-group/consul_cbs/.gitignore index 4aa3a7ae..7dc00c5d 100644 --- a/test/simulator-group/consul_cbs/.gitignore +++ b/test/simulator-group/consul_cbs/.gitignore @@ -1,2 +1,3 @@ .tmp.json -.dockererr \ No newline at end of file +.dockererr +gen_docker-compose* \ No newline at end of file diff --git a/test/simulator-group/control_panel/.gitignore b/test/simulator-group/control_panel/.gitignore index 4aa3a7ae..7dc00c5d 100644 --- a/test/simulator-group/control_panel/.gitignore +++ b/test/simulator-group/control_panel/.gitignore @@ -1,2 +1,3 @@ .tmp.json -.dockererr \ No newline at end of file +.dockererr +gen_docker-compose* \ No newline at end of file diff --git a/test/simulator-group/cr/.env b/test/simulator-group/cr/.env new file mode 100644 index 00000000..a64de54c --- /dev/null +++ b/test/simulator-group/cr/.env @@ -0,0 +1 @@ +COMPOSE_PROJECT_NAME=callback-receiver diff --git a/test/simulator-group/cr/.gitignore b/test/simulator-group/cr/.gitignore index 4aa3a7ae..7dc00c5d 100644 --- a/test/simulator-group/cr/.gitignore +++ b/test/simulator-group/cr/.gitignore @@ -1,2 +1,3 @@ .tmp.json -.dockererr \ No newline at end of file +.dockererr +gen_docker-compose* \ No newline at end of file diff --git a/test/simulator-group/cr/app.yaml b/test/simulator-group/cr/app.yaml index 0cb36d2a..79536623 100644 --- a/test/simulator-group/cr/app.yaml +++ b/test/simulator-group/cr/app.yaml @@ -1,5 +1,5 @@ apiVersion: apps/v1 -kind: Deployment +kind: StatefulSet metadata: name: $CR_APP_NAME namespace: $KUBE_SIM_NAMESPACE @@ -7,7 +7,8 @@ metadata: run: $CR_APP_NAME autotest: CR spec: - replicas: 1 + replicas: $CR_APP_COUNT + serviceName: $CR_APP_NAME selector: matchLabels: run: $CR_APP_NAME diff --git a/test/simulator-group/cr/docker-compose.yml b/test/simulator-group/cr/docker-compose.yml index 634a4643..3b63451b 100644 --- a/test/simulator-group/cr/docker-compose.yml +++ b/test/simulator-group/cr/docker-compose.yml @@ -21,14 +21,14 @@ networks: external: name: ${DOCKER_SIM_NWNAME} services: - callback-receiver: + cr: + scale: $CR_APP_COUNT networks: - default - container_name: ${CR_APP_NAME} image: ${CR_IMAGE} ports: - - ${CR_EXTERNAL_PORT}:${CR_INTERNAL_PORT} - - ${CR_EXTERNAL_SECURE_PORT}:${CR_INTERNAL_SECURE_PORT} + - ${CR_INTERNAL_PORT}/tcp + - ${CR_INTERNAL_SECURE_PORT}/tcp labels: - "nrttest_app=CR" - "nrttest_dp=${CR_DISPLAY_NAME}" diff --git a/test/simulator-group/cr/svc.yaml b/test/simulator-group/cr/svc.yaml index 43e532b9..0367643d 100644 --- a/test/simulator-group/cr/svc.yaml +++ b/test/simulator-group/cr/svc.yaml @@ -7,15 +7,9 @@ metadata: run: $CR_APP_NAME autotest: CR spec: - type: ClusterIP ports: - - port: $CR_EXTERNAL_PORT - targetPort: $CR_INTERNAL_PORT - protocol: TCP + - port: 80 name: http - - port: $CR_EXTERNAL_SECURE_PORT - targetPort: $CR_INTERNAL_SECURE_PORT - protocol: TCP - name: https + clusterIP: None selector: - run: $CR_APP_NAME \ No newline at end of file + run: $CR_APP_NAME diff --git a/test/simulator-group/dmaapadp/.gitignore b/test/simulator-group/dmaapadp/.gitignore index 4aa3a7ae..7dc00c5d 100644 --- a/test/simulator-group/dmaapadp/.gitignore +++ b/test/simulator-group/dmaapadp/.gitignore @@ -1,2 +1,3 @@ .tmp.json -.dockererr \ No newline at end of file +.dockererr +gen_docker-compose* \ No newline at end of file diff --git a/test/simulator-group/dmaapmed/.gitignore b/test/simulator-group/dmaapmed/.gitignore index 4aa3a7ae..7dc00c5d 100644 --- a/test/simulator-group/dmaapmed/.gitignore +++ b/test/simulator-group/dmaapmed/.gitignore @@ -1,2 +1,3 @@ .tmp.json -.dockererr \ No newline at end of file +.dockererr +gen_docker-compose* \ No newline at end of file diff --git a/test/simulator-group/dmaapmr/.gitignore b/test/simulator-group/dmaapmr/.gitignore new file mode 100644 index 00000000..7dc00c5d --- /dev/null +++ b/test/simulator-group/dmaapmr/.gitignore @@ -0,0 +1,3 @@ +.tmp.json +.dockererr +gen_docker-compose* \ No newline at end of file diff --git a/test/simulator-group/dmaapmr/app.yaml b/test/simulator-group/dmaapmr/app.yaml index a4ecc915..01c9014b 100644 --- a/test/simulator-group/dmaapmr/app.yaml +++ b/test/simulator-group/dmaapmr/app.yaml @@ -1,57 +1,58 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: $MR_DMAAP_APP_NAME + name: $MR_ZOOKEEPER_APP_NAME namespace: $KUBE_ONAP_NAMESPACE labels: - run: $MR_DMAAP_APP_NAME + run: $MR_ZOOKEEPER_APP_NAME autotest: DMAAPMR spec: - replicas: 1 selector: matchLabels: - run: $MR_DMAAP_APP_NAME + run: $MR_ZOOKEEPER_APP_NAME template: metadata: labels: - run: $MR_DMAAP_APP_NAME + run: $MR_ZOOKEEPER_APP_NAME autotest: DMAAPMR spec: containers: - - name: $MR_DMAAP_APP_NAME - image: $ONAP_DMAAPMR_IMAGE + - name: $MR_ZOOKEEPER_APP_NAME + image: $ONAP_ZOOKEEPER_IMAGE imagePullPolicy: $KUBE_IMAGE_PULL_POLICY ports: - name: http - containerPort: $MR_INTERNAL_PORT - - name: https - containerPort: $MR_INTERNAL_SECURE_PORT + containerPort: $MR_ZOOKEEPER_PORT env: - - name: enableCadi - value: 'false' + - name: ZOOKEEPER_REPLICAS + value: '1' + - name: ZOOKEEPER_TICK_TIME + value: '2000' + - name: ZOOKEEPER_SYNC_LIMIT + value: '5' + - name: ZOOKEEPER_INIT_LIMIT + value: '10' + - name: ZOOKEEPER_MAX_CLIENT_CNXNS + value: '200' + - name: ZOOKEEPER_AUTOPURGE_SNAP_RETAIN_COUNT + value: '3' + - name: ZOOKEEPER_AUTOPURGE_PURGE_INTERVAL + value: '24' + - name: ZOOKEEPER_CLIENT_PORT + value: '$MR_ZOOKEEPER_PORT' + - name: KAFKA_OPTS + value: '-Djava.security.auth.login.config=/etc/zookeeper/secrets/jaas/zk_server_jaas.conf -Dzookeeper.kerberos.removeHostFromPrincipal=true -Dzookeeper.kerberos.removeRealmFromPrincipal=true -Dzookeeper.authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider -Dzookeeper.requireClientAuthScheme=sasl' + - name: ZOOKEEPER_SERVER_ID + value: '1' volumeMounts: - - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties - subPath: MsgRtrApi.properties - name: dmaapmr-msg-rtr-api - - mountPath: /appl/dmaapMR1/bundleconfig/etc/logback.xml - subPath: logback.xml - name: dmaapmr-log-back - - mountPath: /appl/dmaapMR1/etc/cadi.properties - subPath: cadi.properties - name: dmaapmr-cadi + - mountPath: /etc/zookeeper/secrets/jaas/zk_server_jaas.conf + subPath: zk_server_jaas.conf + name: dmaapmr-zk-server-jaas volumes: - configMap: defaultMode: 420 - name: dmaapmr-msgrtrapi.properties - name: dmaapmr-msg-rtr-api - - configMap: - defaultMode: 420 - name: dmaapmr-logback.xml - name: dmaapmr-log-back - - configMap: - defaultMode: 420 - name: dmaapmr-cadi.properties - name: dmaapmr-cadi + name: dmaapmr-zk-server-jaas.conf + name: dmaapmr-zk-server-jaas --- apiVersion: apps/v1 kind: Deployment @@ -91,11 +92,9 @@ spec: - name: KAFKA_LISTENER_SECURITY_PROTOCOL_MAP value: 'INTERNAL_PLAINTEXT:PLAINTEXT,EXTERNAL_PLAINTEXT:PLAINTEXT' - name: KAFKA_ADVERTISED_LISTENERS - value: 'INTERNAL_PLAINTEXT://$MR_KAFKA_APP_NAME:$MR_KAFKA_PORT' + value: 'INTERNAL_PLAINTEXT://$MR_KAFKA_SERVICE_PATH' - name: KAFKA_LISTENERS value: 'INTERNAL_PLAINTEXT://0.0.0.0:$MR_KAFKA_PORT' - # - name: KAFKA_LISTENERS - # value: 'EXTERNAL_PLAINTEXT://0.0.0.0:9091,INTERNAL_PLAINTEXT://0.0.0.0:$MR_KAFKA_PORT' - name: KAFKA_INTER_BROKER_LISTENER_NAME value: INTERNAL_PLAINTEXT - name: KAFKA_CONFLUENT_SUPPORT_METRICS_ENABLE @@ -103,7 +102,7 @@ spec: - name: KAFKA_OPTS value: '-Djava.security.auth.login.config=/etc/kafka/secrets/jaas/zk_client_jaas.conf' - name: KAFKA_ZOOKEEPER_SET_ACL - value: 'false' + value: 'true' - name: KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR value: '1' - name: KAFKA_OFFSETS_TOPIC_NUM_PARTITIONS @@ -121,58 +120,55 @@ spec: apiVersion: apps/v1 kind: Deployment metadata: - name: $MR_ZOOKEEPER_APP_NAME + name: $MR_DMAAP_APP_NAME namespace: $KUBE_ONAP_NAMESPACE labels: - run: $MR_ZOOKEEPER_APP_NAME + run: $MR_DMAAP_APP_NAME autotest: DMAAPMR spec: replicas: 1 selector: matchLabels: - run: $MR_ZOOKEEPER_APP_NAME + run: $MR_DMAAP_APP_NAME template: metadata: labels: - run: $MR_ZOOKEEPER_APP_NAME + run: $MR_DMAAP_APP_NAME autotest: DMAAPMR spec: containers: - - name: $MR_ZOOKEEPER_APP_NAME - image: $ONAP_ZOOKEEPER_IMAGE + - name: $MR_DMAAP_APP_NAME + image: $ONAP_DMAAPMR_IMAGE imagePullPolicy: $KUBE_IMAGE_PULL_POLICY ports: - name: http - containerPort: $MR_ZOOKEEPER_PORT + containerPort: $MR_INTERNAL_PORT + - name: https + containerPort: $MR_INTERNAL_SECURE_PORT env: - - name: ZOOKEEPER_REPLICAS - value: '1' - - name: ZOOKEEPER_TICK_TIME - value: '2000' - - name: ZOOKEEPER_SYNC_LIMIT - value: '5' - - name: ZOOKEEPER_INIT_LIMIT - value: '10' - - name: ZOOKEEPER_MAX_CLIENT_CNXNS - value: '200' - - name: ZOOKEEPER_AUTOPURGE_SNAP_RETAIN_COUNT - value: '3' - - name: ZOOKEEPER_AUTOPURGE_PURGE_INTERVAL - value: '24' - - name: ZOOKEEPER_CLIENT_PORT - value: '$MR_ZOOKEEPER_PORT' - - name: KAFKA_OPTS - value: '-Djava.security.auth.login.config=/etc/zookeeper/secrets/jaas/zk_server_jaas.conf -Dzookeeper.kerberos.removeHostFromPrincipal=true -Dzookeeper.kerberos.removeRealmFromPrincipal=true -Dzookeeper.authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider -Dzookeeper.requireClientAuthScheme=sasl' - - name: ZOOKEEPER_SERVER_ID - value: '1' - - name: ZOOKEEPER_SASL_ENABLED + - name: enableCadi value: 'false' volumeMounts: - - mountPath: /etc/zookeeper/secrets/jaas/zk_server_jaas.conf - subPath: zk_server_jaas.conf - name: dmaapmr-zk-server-jaas + - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties + subPath: MsgRtrApi.properties + name: dmaapmr-msg-rtr-api + - mountPath: /appl/dmaapMR1/bundleconfig/etc/logback.xml + subPath: logback.xml + name: dmaapmr-log-back + - mountPath: /appl/dmaapMR1/etc/cadi.properties + subPath: cadi.properties + name: dmaapmr-cadi volumes: - configMap: defaultMode: 420 - name: dmaapmr-zk-server-jaas.conf - name: dmaapmr-zk-server-jaas \ No newline at end of file + name: dmaapmr-msgrtrapi.properties + name: dmaapmr-msg-rtr-api + - configMap: + defaultMode: 420 + name: dmaapmr-logback.xml + name: dmaapmr-log-back + - configMap: + defaultMode: 420 + name: dmaapmr-cadi.properties + name: dmaapmr-cadi + diff --git a/test/simulator-group/dmaapmr/configs0/kafka/zk_client_jaas.conf b/test/simulator-group/dmaapmr/configs0/kafka/zk_client_jaas.conf new file mode 100644 index 00000000..dca46d56 --- /dev/null +++ b/test/simulator-group/dmaapmr/configs0/kafka/zk_client_jaas.conf @@ -0,0 +1,6 @@ +Client { + org.apache.zookeeper.server.auth.DigestLoginModule required + username="kafka" + password="kafka_secret"; + }; + diff --git a/test/simulator-group/dmaapmr/mnt/mr/MsgRtrApi.properties b/test/simulator-group/dmaapmr/configs0/mr/MsgRtrApi.properties similarity index 90% rename from test/simulator-group/dmaapmr/mnt/mr/MsgRtrApi.properties rename to test/simulator-group/dmaapmr/configs0/mr/MsgRtrApi.properties index 3476d5dd..ecb3da52 100644 --- a/test/simulator-group/dmaapmr/mnt/mr/MsgRtrApi.properties +++ b/test/simulator-group/dmaapmr/configs0/mr/MsgRtrApi.properties @@ -1,7 +1,8 @@ # LICENSE_START======================================================= # org.onap.dmaap # ================================================================================ -# Copyright © 2017 AT&T Intellectual Property. All rights reserved. +# Copyright © 2020 Nordix Foundation. All rights reserved. +# Copyright © 2017 AT&T Intellectual Property. 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. @@ -34,7 +35,12 @@ ## ## Both Cambria and Kafka make use of Zookeeper. ## -config.zk.servers=zookeeper:2181 +#config.zk.servers=172.18.1.1 +#config.zk.servers={{.Values.zookeeper.name}}:{{.Values.zookeeper.port}} +config.zk.servers=$MR_ZOOKEEPER_SERVICE_PATH + +#config.zk.root=/fe3c/cambria/config + ############################################################################### ## @@ -45,7 +51,7 @@ config.zk.servers=zookeeper:2181 ## if you want to change request.required.acks it can take this one value #kafka.metadata.broker.list=localhost:9092,localhost:9093 #kafka.metadata.broker.list={{.Values.kafka.name}}:{{.Values.kafka.port}} -kafka.metadata.broker.list=message-router-kafka:9092 +kafka.metadata.broker.list=$MR_KAFKA_SERVICE_PATH ##kafka.request.required.acks=-1 #kafka.client.zookeeper=${config.zk.servers} consumer.timeout.ms=100 @@ -81,6 +87,8 @@ kafka.rebalance.max.retries=6 cambria.secureConfig.key=b/7ouTn9FfEw2PQwL0ov/Q== cambria.secureConfig.iv=wR9xP5k5vbz/xD0LmtqQLw== authentication.adminSecret=fe3cCompound +#cambria.secureConfig.key[pc569h]=YT3XPyxEmKCTLI2NK+Sjbw== +#cambria.secureConfig.iv[pc569h]=rMm2jhR3yVnU+u2V9Ugu3Q== ############################################################################### @@ -128,14 +136,13 @@ cambria.consumer.cache.touchFreqMs=120000 ## This server can report its metrics periodically on a topic. ## #metrics.send.cambria.enabled=true -#metrics.send.cambria.topic=cambria.apinode.metrics -#msgrtr.apinode.metrics.dmaap +#metrics.send.cambria.topic=cambria.apinode.metrics #msgrtr.apinode.metrics.dmaap #metrics.send.cambria.sendEverySeconds=60 cambria.consumer.cache.zkBasePath=/fe3c/cambria/consumerCache consumer.timeout=17 default.partitions=3 -default.replicas=1 +default.replicas=3 ############################################################################## #100mb maxcontentlength=10000 @@ -163,4 +170,5 @@ msgRtr.mirrormaker.consumerid=1 kafka.max.poll.interval.ms=300000 kafka.heartbeat.interval.ms=60000 kafka.session.timeout.ms=240000 -kafka.max.poll.records=1000 \ No newline at end of file +kafka.max.poll.records=1000 + diff --git a/test/simulator-group/dmaapmr/mnt/mr/cadi.properties b/test/simulator-group/dmaapmr/configs0/mr/cadi.properties similarity index 58% rename from test/simulator-group/dmaapmr/mnt/mr/cadi.properties rename to test/simulator-group/dmaapmr/configs0/mr/cadi.properties index cccfbdf9..4d28b529 100644 --- a/test/simulator-group/dmaapmr/mnt/mr/cadi.properties +++ b/test/simulator-group/dmaapmr/configs0/mr/cadi.properties @@ -1,21 +1,20 @@ -#Removed to be disable aaf in test env -#aaf_locate_url=https://aaf-onap-test.osaaf.org:8095\ +aaf_locate_url=https://aaf-locate.{{ include "common.namespace" . }}:8095 aaf_url=https://AAF_LOCATE_URL/onap.org.osaaf.aaf.service:2.1 aaf_env=DEV aaf_lur=org.onap.aaf.cadi.aaf.v2_0.AAFLurPerm -#Removed to be disable aaf in test env -# cadi_truststore=/appl/dmaapMR1/etc/org.onap.dmaap.mr.trust.jks -# cadi_truststore_password=8FyfX+ar;0$uZQ0h9*oXchNX +cadi_truststore=/appl/dmaapMR1/etc/org.onap.dmaap.mr.trust.jks +cadi_truststore_password=enc:mN6GiIzFQxKGDzAXDOs7b4j8DdIX02QrZ9QOWNRpxV3rD6whPCfizSMZkJwxi_FJ cadi_keyfile=/appl/dmaapMR1/etc/org.onap.dmaap.mr.keyfile cadi_alias=dmaapmr@mr.dmaap.onap.org cadi_keystore=/appl/dmaapMR1/etc/org.onap.dmaap.mr.p12 -cadi_keystore_password=GDQttV7)BlOvWMf6F7tz&cjy +cadi_keystore_password=enc:_JJT2gAEkRzXla5xfDIHal8pIoIB5iIos3USvZQT6sL-l14LpI5fRFR_QIGUCh5W cadi_x509_issuers=CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_7, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_9, OU=OSAAF, O=ONAP, C=US cadi_loglevel=INFO cadi_protocols=TLSv1.1,TLSv1.2 cadi_latitude=37.78187 -cadi_longitude=-122.26147 \ No newline at end of file +cadi_longitude=-122.26147 + diff --git a/test/simulator-group/dmaapmr/mnt/mr/logback.xml b/test/simulator-group/dmaapmr/configs0/mr/logback.xml similarity index 98% rename from test/simulator-group/dmaapmr/mnt/mr/logback.xml rename to test/simulator-group/dmaapmr/configs0/mr/logback.xml index f02a2db7..02499fb3 100644 --- a/test/simulator-group/dmaapmr/mnt/mr/logback.xml +++ b/test/simulator-group/dmaapmr/configs0/mr/logback.xml @@ -1,6 +1,7 @@