#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
# 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
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
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
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"
echo "############################################"
if [ "$PMS_VERSION" == "V2" ]; then
- notificationurl=$CR_SERVICE_APP_PATH"/test"
+ notificationurl=$CR_SERVICE_APP_PATH_0"/test"
else
notificationurl=""
fi
fi
if [ "$PMS_VERSION" == "V2" ]; then
- cr_equal received_callbacks 3
+ cr_equal 0 received_callbacks 3
fi
if [[ $interface = *"DMAAP"* ]]; then
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
start_mr
-start_cr
+start_cr 1
if [ $RUNMODE == "DOCKER" ]; then
start_consul_cbs
# 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
#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
#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
# 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
start_mr
- start_cr
+ start_cr 1
start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE
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
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"
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
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"
- 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
fi
if [ "$PMS_VERSION" == "V2" ]; then
- cr_equal received_callbacks 3
+ cr_equal 0 received_callbacks 3
fi
if [[ $interface = *"DMAAP"* ]]; then
#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
start_mr
-start_cr
+start_cr 1
if [ $RUNMODE == "DOCKER" ]; then
start_consul_cbs
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"
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
fi
if [ "$PMS_VERSION" == "V2" ]; then
- notificationurl=$CR_SERVICE_APP_PATH"/test"
+ notificationurl=$CR_SERVICE_APP_PATH_0"/test"
else
notificationurl=""
fi
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
#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
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"
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
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
### 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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
#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
#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
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"
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
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 \
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 \
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
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
stop_ecs
-cr_api_reset
+cr_api_reset 0
start_stopped_ecs
fi
fi
-cr_equal received_callbacks 0
+cr_equal 0 received_callbacks 0
for ((i=1; i<=$NUM_JOBS; i++))
do
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 \
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
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
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
consul_config_app ".consul_config.json"
fi
-start_cr
+start_cr 1
start_prod_stub
#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++))
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
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
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
#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
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
start_http_proxy
-start_cr
+start_cr 1
start_ecs NOPROXY $SIM_GROUP/$ECS_COMPOSE_DIR/$ECS_CONFIG_FILE
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++))
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 ####
#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
start_mr
- start_cr
+ start_cr 1
if [ $RUNMODE == "DOCKER" ]; then
start_consul_cbs
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
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
#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
start_kube_proxy
-start_cr
+start_cr $NUM_CR
start_ecs NOPROXY $SIM_GROUP/$ECS_COMPOSE_DIR/$ECS_CONFIG_FILE
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++))
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
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
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
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 ####
#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
# 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
start_mr
- start_cr
+ start_cr 1
start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE
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
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
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
#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
start_ric_simulators ricsim_g1 $NUM_RICS_2 OSC_2.1.0
- start_cr
+ start_cr 1
start_mr
# 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
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:???? \
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
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
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
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
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
#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
start_mr
- start_cr
+ start_cr 1
start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE
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
#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
generate_policy_uuid
if [ "$PMS_VERSION" == "V2" ]; then
- notificationurl=$CR_SERVICE_APP_PATH"/test"
+ notificationurl=$CR_SERVICE_APP_PATH_0"/test"
else
notificationurl=""
fi
consul_config_app ".consul_config.json"
fi
- start_cr
+ start_cr 1
api_get_status 200
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++))
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
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
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
#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
start_mr
-start_cr
+start_cr 1
start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE
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
MR_MESSAGES=0
if [ "$PMS_VERSION" == "V2" ]; then
- notificationurl=$CR_SERVICE_APP_PATH"/test"
+ notificationurl=$CR_SERVICE_APP_PATH_0"/test"
else
notificationurl=""
fi
#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
generate_policy_uuid
if [ "$PMS_VERSION" == "V2" ]; then
- notificationurl=$CR_SERVICE_APP_PATH"/test"
+ notificationurl=$CR_SERVICE_APP_PATH_0"/test"
else
notificationurl=""
fi
start_mr # Not used, but removes error messages from the agent log
- start_cr
+ start_cr 1
api_get_status 200
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++))
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
# 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
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
start_policy_agent
-start_cr
+start_cr 1
start_prod_stub
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
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
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
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
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++))
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
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
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
# 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++))
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
use_simulator_https
if [ "$PMS_VERSION" == "V2" ]; then
- notificationurl=$CR_SERVICE_APP_PATH"/test"
+ notificationurl=$CR_SERVICE_APP_PATH_0"/test"
else
notificationurl=""
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++))
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
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
consul_config_app ".consul_config.json"
fi
-start_cr
+start_cr 1
start_prod_stub
#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++))
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
CONDITIONALLY_IGNORED_IMAGES=<list of images to exclude if it does not exist in the profile file>
-. ../common/testcase_common.sh $@
-< other scripts need to be sourced for specific interfaces>
+. ../common/testcase_common.sh $@
setup_testenvironment
#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
| --------- | ----------- |
| `<timer-message-to-print>` | 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 |
-|--|
-| `<timer-message-to-print>` |
-
-| parameter | description |
-| --------- | ----------- |
-| `<timer-message-to-print>` | 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.
--- /dev/null
+#!/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
+
+
+
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
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
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"
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"
}
-# Function to perpare the consul configuration according to the current simulator configuration
-# args: SDNC|NOSDNC <output-file>
-# (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 <output-file>" $@
- 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 <output-file>" $@
- 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)
# args: <log-dir> <file-prexix>
__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
}
# 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
}
#######################################################
### 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)
# Setup paths to svc/container for internal and external access
# args: <protocol> <internal-port> <external-port>
__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 ""
}
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: <app-count>
# (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 <app-count>"$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 <app-count>"$ERED
+ exit 1
+ fi
+ export CR_APP_COUNT=$1
+
if [ $RUNMODE == "KUBE" ]; then
# Check if app shall be fully managed by the test script
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'
__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: <cr-path-id>
+# returns: <base-url-to-the-app>
+__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: <variable-name> <target-value> - This test set pass or fail depending on if the variable is
# equal to the target or not.
-# Arg: <variable-name> <target-value> <timeout-in-sec> - This test waits up to the timeout seconds
+# Arg: <cr-path-id> <variable-name> <target-value> <timeout-in-sec> - 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 "<cr-path-id> 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: <sim-param> <target-value> [ timeout ]" $@
+ __print_err "Wrong args to cr_equal, needs three or four args: <cr-path-id> <variable-name> <target-value> [ timeout ]" $@
fi
}
# Tests if a variable value in the CR contains the target string and and optional timeout
# Arg: <variable-name> <target-value> - This test set pass or fail depending on if the variable contains
# the target or not.
-# Arg: <variable-name> <target-value> <timeout-in-sec> - This test waits up to the timeout seconds
+# Arg: <cr-path-id> <variable-name> <target-value> <timeout-in-sec> - 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 "<cr-path-id> 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: <sim-param> <target-value> [ timeout ]"
+ __print_err "needs two or three args: <cr-path-id> <variable-name> <target-value> [ timeout ]"
return 1
fi
}
# Read a variable value from CR sim and send to stdout. Arg: <variable-name>
cr_read() {
+ CR_SERVICE_PATH=$(__cr_get_service_path $1)
+ CR_ADAPTER=$CR_SERVICE_PATH
+ if [ $? -ne 0 ]; then
+ __print_err "<cr-path-id> 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 <response-code> <delay-in-sec>
+# arg <response-code> <cr-path-id> <delay-in-sec>
# (Function for test scripts)
cr_delay_callback() {
__log_conf_start $@
- if [ $# -ne 2 ]; then
- __print_err "<response-code> <delay-in-sec>]" $@
+ if [ $# -ne 3 ]; then
+ __print_err "<response-code> <cr-path-id> <delay-in-sec>]" $@
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 "<cr-path-id> 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
}
# CR API: Check the contents of all current ric sync events for one id from PMS
-# <response-code> <id> [ EMPTY | ( <ric-id> )+ ]
+# <response-code> <cr-path-id> <id> [ EMPTY | ( <ric-id> )+ ]
# (Function for test scripts)
cr_api_check_all_sync_events() {
__log_test_start $@
return 1
fi
- if [ $# -lt 2 ]; then
- __print_err "<response-code> <id> [ EMPTY | ( <ric-id> )+ ]" $@
+ if [ $# -lt 3 ]; then
+ __print_err "<response-code> <cr-path-id> <id> [ EMPTY | ( <ric-id> )+ ]" $@
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 "<cr-path-id> missing or incorrect" $@
+ return 1
+ fi
+
+ query="/get-all-events/"$3
res="$(__do_curl_to_api CR GET $query)"
status=${res:${#res}-3}
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","
}
# CR API: Check the contents of all current status events for one id from ECS
-# <response-code> <id> [ EMPTY | ( <status> )+ ]
+# <response-code> <cr-path-id> <id> [ EMPTY | ( <status> )+ ]
# (Function for test scripts)
cr_api_check_all_ecs_events() {
__log_test_start $@
- if [ $# -lt 2 ]; then
- __print_err "<response-code> <id> [ EMPTY | ( <status> )+ ]" $@
+ if [ $# -lt 3 ]; then
+ __print_err "<response-code> <cr-path-id> <id> [ EMPTY | ( <status> )+ ]" $@
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 "<cr-path-id> missing or incorrect" $@
+ return 1
+ fi
+
+ query="/get-all-events/"$3
res="$(__do_curl_to_api CR GET $query)"
status=${res:${#res}-3}
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","
}
# CR API: Check the contents of all current type subscription events for one id from ECS
-# <response-code> <id> [ EMPTY | ( <type-id> <schema> <registration-status> )+ ]
+# <response-code> <cr-path-id> <id> [ EMPTY | ( <type-id> <schema> <registration-status> )+ ]
# (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 "<response-code> <id> [ EMPTY | ( <type-id> <schema> <registration-status> )+ ]" $@
+ __print_err "<response-code> <cr-path-id> <id> [ EMPTY | ( <type-id> <schema> <registration-status> )+ ]" $@
+ return 1
+ fi
+
+ CR_SERVICE_PATH=$(__cr_get_service_path $2)
+ CR_ADAPTER=$CR_SERVICE_PATH
+ if [ $? -ne 0 ]; then
+ __print_err "<cr-path-id> 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}
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
# CR API: Reset all events and counters
-# Arg: -
+# Arg: <cr-path-id>
# (Function for test scripts)
cr_api_reset() {
__log_conf_start $@
+ if [ $# -ne 0 ]; then
+ __print_err "<cr-path-id>" $@
+ return 1
+ fi
+
+ CR_SERVICE_PATH=$(__cr_get_service_path $1)
+ CR_ADAPTER=$CR_SERVICE_PATH
+ if [ $? -ne 0 ]; then
+ __print_err "<cr-path-id> missing or incorrect" $@
+ return 1
+ fi
+
res="$(__do_curl_to_api CR GET /reset)"
status=${res:${#res}-3}
# CR API: Check the contents of all json events for path
-# <response-code> <topic-url> (EMPTY | <json-msg>+ )
+# <response-code> <cr-path-id> <topic-url> (EMPTY | <json-msg>+ )
# (Function for test scripts)
cr_api_check_all_genric_json_events() {
__log_test_start $@
- if [ $# -lt 3 ]; then
- __print_err "<response-code> <topic-url> (EMPTY | <json-msg>+ )" $@
+ if [ $# -lt 4 ]; then
+ __print_err "<response-code> <cr-path-id> <topic-url> (EMPTY | <json-msg>+ )" $@
+ return 1
+ fi
+
+ CR_SERVICE_PATH=$(__cr_get_service_path $2)
+ CR_ADAPTER=$CR_SERVICE_PATH
+ if [ $? -ne 0 ]; then
+ __print_err "<cr-path-id> 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}
body=${res:0:${#res}-3}
targetJson="["
- if [ $3 != "EMPTY" ]; then
+ if [ $4 != "EMPTY" ]; then
+ shift
shift
shift
while [ $# -gt 0 ]; do
}
-
# CR API: Check a single (oldest) json event (or none if empty) for path
-# <response-code> <topic-url> (EMPTY | <json-msg> )
+# <response-code> <cr-path-id> <topic-url> (EMPTY | <json-msg> )
# (Function for test scripts)
cr_api_check_single_genric_json_event() {
__log_test_start $@
- if [ $# -ne 3 ]; then
- __print_err "<response-code> <topic-url> (EMPTY | <json-msg> )" $@
+ if [ $# -ne 4 ]; then
+ __print_err "<response-code> <cr-path-id> <topic-url> (EMPTY | <json-msg> )" $@
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 "<cr-path-id> missing or incorrect" $@
+ return 1
+ fi
+
+ query="/get-event/"$3
res="$(__do_curl_to_api CR GET $query)"
status=${res:${#res}-3}
return 1
fi
body=${res:0:${#res}-3}
- targetJson=$3
+ targetJson=$4
if [ $targetJson == "EMPTY" ] && [ ${#body} -ne 0 ]; then
__log_test_fail_body
# 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: <response-code> <topic-url> (EMPTY | <data-msg> )
+# arg: <response-code> <cr-path-id> <topic-url> (EMPTY | <data-msg> )
# (Function for test scripts)
cr_api_check_single_genric_event_md5() {
__log_test_start $@
- if [ $# -ne 3 ]; then
- __print_err "<response-code> <topic-url> (EMPTY | <data-msg> )" $@
+ if [ $# -ne 4 ]; then
+ __print_err "<response-code> <cr-path-id> <topic-url> (EMPTY | <data-msg> )" $@
+ return 1
+ fi
+
+ CR_SERVICE_PATH=$(__cr_get_service_path $2)
+ CR_ADAPTER=$CR_SERVICE_PATH
+ if [ $? -ne 0 ]; then
+ __print_err "<cr-path-id> 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}
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
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
# 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: <response-code> <topic-url> (EMPTY | <data-file> )
+# arg: <response-code> <cr-path-id> <topic-url> (EMPTY | <data-file> )
# (Function for test scripts)
cr_api_check_single_genric_event_md5_file() {
__log_test_start $@
- if [ $# -ne 3 ]; then
- __print_err "<response-code> <topic-url> (EMPTY | <data-file> )" $@
+ if [ $# -ne 4 ]; then
+ __print_err "<response-code> <cr-path-id> <topic-url> (EMPTY | <data-file> )" $@
+ return 1
+ fi
+
+ CR_SERVICE_PATH=$(__cr_get_service_path $2)
+ CR_ADAPTER=$CR_SERVICE_PATH
+ if [ $? -ne 0 ]; then
+ __print_err "<cr-path-id> 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}
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
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
--- /dev/null
+#!/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
+
+
+
echo "or"
echo "Usage: genstat.sh KUBE <start-time-seconds> <log-file> <app-short-name> <app-name> <namespace> [ <app-short-name> <app-name> <namespace> ]*"
}
-
+DD=$@
STARTTIME=-1
if [ $# -lt 4 ]; then
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))
# 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
}
# 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
}
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
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
}
-
-# 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: <protocol> <internal-port> <external-port> <mr-stub-internal-port> <mr-stub-external-port> <mr-stub-internal-secure-port> <mr-stub-external-secure-port>
-# __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() {
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
export MR_EXTERNAL_PORT
export MR_KAFKA_SERVICE_PATH
+ export MR_ZOOKEEPER_SERVICE_PATH
}
__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
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'
__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
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")
__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
}
+# Function to perpare the consul configuration according to the current simulator configuration
+# args: SDNC|NOSDNC <output-file>
+# (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 <output-file>" $@
+ 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 <output-file>" $@
+ 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() {
# args:
__prodstub_export_vars() {
export PROD_STUB_APP_NAME
- export PROD_STUB_APP_NAME_ALIAS
export PROD_STUB_DISPLAY_NAME
export DOCKER_SIM_NWNAME
# 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
}
#######################################################
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"
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
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"
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
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"
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
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"
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
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"
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
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"
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
#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=""
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
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 ""
#####################################################################
# Start timer for time measurement
-# args - (any args will be printed though)
+# args: <timer message to print> - 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, <timer message to print>" $@
+ 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 message to print> - 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, <timer message to print>" $@
- 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 message to print> - 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, <timer message to print>" $@
- 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 <deviation message to print>
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
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
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
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+.env
\ No newline at end of file
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file
--- /dev/null
+COMPOSE_PROJECT_NAME=callback-receiver
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file
apiVersion: apps/v1
-kind: Deployment
+kind: StatefulSet
metadata:
name: $CR_APP_NAME
namespace: $KUBE_SIM_NAMESPACE
run: $CR_APP_NAME
autotest: CR
spec:
- replicas: 1
+ replicas: $CR_APP_COUNT
+ serviceName: $CR_APP_NAME
selector:
matchLabels:
run: $CR_APP_NAME
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}"
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
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file
--- /dev/null
+.tmp.json
+.dockererr
+gen_docker-compose*
\ No newline at end of file
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
- 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
- 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
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
+
--- /dev/null
+Client {
+ org.apache.zookeeper.server.auth.DigestLoginModule required
+ username="kafka"
+ password="kafka_secret";
+ };
+
# 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.
##
## 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
+
###############################################################################
##
## 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
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==
###############################################################################
## 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
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
+
-#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
+
<!--
============LICENSE_START=======================================================
- Copyright © 2019 AT&T Intellectual Property. All rights reserved.
+ Copyright © 2020 Nordix Foundation. All rights reserved.
+ Copyright © 2019 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.
</root>
</configuration>
+
Server {
org.apache.zookeeper.server.auth.DigestLoginModule required
- user_kafka="kafka_secret";
-};
\ No newline at end of file
+ user_kafka=kafka_secret;
+};
+
##
## Both Cambria and Kafka make use of Zookeeper.
##
-config.zk.servers=$MR_ZOOKEEPER_APP_NAME:$MR_ZOOKEEPER_PORT
+config.zk.servers=$MR_ZOOKEEPER_SERVICE_PATH
+#$MR_ZOOKEEPER_APP_NAME:$MR_ZOOKEEPER_PORT
###############################################################################
##
## 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=$MR_KAFKA_APP_NAME:$MR_KAFKA_PORT
+kafka.metadata.broker.list=$MR_KAFKA_SERVICE_PATH
+#$MR_KAFKA_APP_NAME:$MR_KAFKA_PORT
##kafka.request.required.acks=-1
#kafka.client.zookeeper=${config.zk.servers}
consumer.timeout.ms=100
kafka.rebalance.backoff.ms=10000
kafka.rebalance.max.retries=6
-
###############################################################################
##
## Secured Config
KAFKA_ZOOKEEPER_CONNECTION_TIMEOUT_MS: 40000
KAFKA_ZOOKEEPER_SESSION_TIMEOUT_MS: 40000
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INTERNAL_PLAINTEXT:PLAINTEXT,EXTERNAL_PLAINTEXT:PLAINTEXT
- KAFKA_ADVERTISED_LISTENERS: INTERNAL_PLAINTEXT://$MR_KAFKA_APP_NAME:$MR_KAFKA_PORT
+ KAFKA_ADVERTISED_LISTENERS: INTERNAL_PLAINTEXT://$MR_KAFKA_SERVICE_PATH
KAFKA_LISTENERS: INTERNAL_PLAINTEXT://0.0.0.0:$MR_KAFKA_PORT
KAFKA_INTER_BROKER_LISTENER_NAME: INTERNAL_PLAINTEXT
KAFKA_CONFLUENT_SUPPORT_METRICS_ENABLE: 'false'
+++ /dev/null
-Client {
- org.apache.zookeeper.server.auth.DigestLoginModule required
- username="kafka"
- password="kafka_secret";
- };
\ No newline at end of file
apiVersion: v1
kind: Service
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:
type: ClusterIP
ports:
- - port: $MR_EXTERNAL_PORT
- targetPort: $MR_INTERNAL_PORT
+ - port: $MR_ZOOKEEPER_PORT
+ targetPort: $MR_ZOOKEEPER_PORT
protocol: TCP
name: http
- - port: $MR_EXTERNAL_SECURE_PORT
- targetPort: $MR_INTERNAL_SECURE_PORT
- protocol: TCP
- name: https
selector:
- run: $MR_DMAAP_APP_NAME
+ run: $MR_ZOOKEEPER_APP_NAME
---
apiVersion: v1
kind: Service
apiVersion: v1
kind: Service
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:
type: ClusterIP
ports:
- - port: $MR_ZOOKEEPER_PORT
- targetPort: $MR_ZOOKEEPER_PORT
+ - port: $MR_EXTERNAL_PORT
+ targetPort: $MR_INTERNAL_PORT
protocol: TCP
name: http
+ - port: $MR_EXTERNAL_SECURE_PORT
+ targetPort: $MR_INTERNAL_SECURE_PORT
+ protocol: TCP
+ name: https
selector:
- run: $MR_ZOOKEEPER_APP_NAME
+ run: $MR_DMAAP_APP_NAME
+
+
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file
.dockererr
+gen_docker-compose*
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file
.tmp.json
.dockererr
+gen_docker-compose*
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
services:
producer-stub:
networks:
- default:
- aliases:
- - ${PROD_STUB_APP_NAME_ALIAS}
+ - default
container_name: ${PROD_STUB_APP_NAME}
image: ${PROD_STUB_IMAGE}
ports:
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file
.tmp.json
.dockererr
.env
-fakedir
\ No newline at end of file
+fakedir
+gen_docker-compose*
\ No newline at end of file
.tmp.json
-.dockererr
\ No newline at end of file
+.dockererr
+gen_docker-compose*
\ No newline at end of file