X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=test%2Fcommon%2Fmr_api_functions.sh;h=122b4124c1225a6bdc08eb8221fedbcd9a4e6e1b;hb=4dd321bda70fab4987c1ea7aa0dffc5e1eb74252;hp=da3e34db12cdebcadf0f1852308775db6d9cc21f;hpb=afe34e22e0be919b8e054826c23c551b4e493f79;p=nonrtric.git diff --git a/test/common/mr_api_functions.sh b/test/common/mr_api_functions.sh index da3e34db..122b4124 100755 --- a/test/common/mr_api_functions.sh +++ b/test/common/mr_api_functions.sh @@ -173,7 +173,7 @@ __DMAAPMR_store_docker_logs() { kubectl logs -n $KUBE_ONAP_NAMESPACE $podname --tail=-1 > $1$2_$podname.log 2>&1 done else - docker logs $MR_DMAAP_APP_NAME > $1$2mr.log 2>&1 + docker logs $MR_DMAAP_APP_NAME > $1$2_mr.log 2>&1 docker logs $MR_KAFKA_APP_NAME > $1$2_mr_kafka.log 2>&1 docker logs $MR_ZOOKEEPER_APP_NAME > $1$2_mr_zookeeper.log 2>&1 fi @@ -199,9 +199,9 @@ __DMAAPMR_initial_setup() { # args: - __MR_statisics_setup() { if [ $RUNMODE == "KUBE" ]; then - echo "MR $MR_STUB_APP_NAME $KUBE_ONAP_NAMESPACE" + echo "MR-STUB $MR_STUB_APP_NAME $KUBE_ONAP_NAMESPACE" else - echo "MR $MR_STUB_APP_NAME" + echo "MR-STUB $MR_STUB_APP_NAME" fi } @@ -211,12 +211,24 @@ __MR_statisics_setup() { # args: - __DMAAPMR_statisics_setup() { if [ $RUNMODE == "KUBE" ]; then - echo "" + echo "KAFKA $MR_KAFKA_APP_NAME $KUBE_ONAP_NAMESPACE MESSAGE-ROUTER $MR_DMAAP_APP_NAME $KUBE_ONAP_NAMESPACE ZOOKEEPER $MR_ZOOKEEPER_APP_NAME $KUBE_ONAP_NAMESPACE" else - echo "" + echo "KAFKA $MR_KAFKA_APP_NAME MESSAGE-ROUTER $MR_DMAAP_APP_NAME ZOOKEEPER $MR_ZOOKEEPER_APP_NAME" fi } +# Check application requirements, e.g. helm, the the test needs. Exit 1 if req not satisfied +# args: - +__MR_test_requirements() { + : +} + +# Check application requirements, e.g. helm, the the test needs. Exit 1 if req not satisfied +# args: - +__DMAAPMR_test_requirements() { + : +} + ####################################################### # Description of port mappings when running MR-STUB only or MR-STUB + MESSAGE-ROUTER @@ -273,7 +285,7 @@ use_mr_https() { # args: __mr_set_protocoll() { echo -e $BOLD"$MR_STUB_DISPLAY_NAME and $MR_DMAAP_DISPLAY_NAME protocol setting"$EBOLD - echo -e " Using $BOLD http $EBOLD towards $MR_STUB_DISPLAY_NAME and $MR_DMAAP_DISPLAY_NAME" + echo -e " Using $BOLD $1 $EBOLD towards $MR_STUB_DISPLAY_NAME and $MR_DMAAP_DISPLAY_NAME" ## Access to Dmaap mediator @@ -294,12 +306,14 @@ __mr_set_protocoll() { MR_SERVICE_PATH=$MR_STUB_PATH # access container->container, docker - access pod->svc, kube MR_KAFKA_SERVICE_PATH="" + MR_ZOOKEEPER_SERVICE_PATH="" __check_included_image "DMAAPMR" if [ $? -eq 0 ]; then MR_SERVICE_PATH=$MR_DMAAP_PATH # access container->container, docker - access pod->svc, kube MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH MR_KAFKA_SERVICE_PATH=$MR_KAFKA_APP_NAME":"$MR_KAFKA_PORT + MR_ZOOKEEPER_SERVICE_PATH=$MR_ZOOKEEPER_APP_NAME":"$MR_ZOOKEEPER_PORT fi # For directing calls from script to e.g.PMS via message rounter @@ -321,12 +335,14 @@ __mr_set_protocoll() { MR_SERVICE_PATH=$MR_DMAAP_PATH MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH MR_KAFKA_SERVICE_PATH=$MR_KAFKA_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_KAFKA_PORT + MR_ZOOKEEPER_SERVICE_PATH=$MR_ZOOKEEPER_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_ZOOKEEPER_PORT fi __check_prestarted_image "DMAAPMR" if [ $? -eq 0 ]; then MR_SERVICE_PATH=$MR_DMAAP_PATH MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH MR_KAFKA_SERVICE_PATH=$MR_KAFKA_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_KAFKA_PORT + MR_ZOOKEEPER_SERVICE_PATH=$MR_ZOOKEEPER_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_ZOOKEEPER_PORT fi # For directing calls from script to e.g.PMS, via message rounter @@ -343,74 +359,6 @@ __mr_set_protocoll() { } - -# use_mr_http() { 2 3 4 5 6 7 -# __mr_set_protocoll "http" $MR_INTERNAL_PORT $MR_EXTERNAL_PORT $MR_INTERNAL_PORT $MR_EXTERNAL_PORT $MR_INTERNAL_SECURE_PORT $MR_EXT_SECURE_PORT -# } - -# use_mr_https() { -# __mr_set_protocoll "https" $MR_INTERNAL_SECURE_PORT $MR_EXTERNAL_SECURE_PORT -# } - -# # Setup paths to svc/container for internal and external access -# # args: -# __mr_set_protocoll() { -# echo -e $BOLD"$MR_STUB_DISPLAY_NAME and $MR_DMAAP_DISPLAY_NAME protocol setting"$EBOLD -# echo -e " Using $BOLD http $EBOLD towards $MR_STUB_DISPLAY_NAME and $MR_DMAAP_DISPLAY_NAME" - -# ## Access to Dmaap mediator - -# MR_HTTPX=$1 - -# # Access via test script -# MR_STUB_PATH=$MR_HTTPX"://"$MR_STUB_APP_NAME":"$2 # access from script via proxy, docker -# MR_DMAAP_PATH=$MR_HTTPX"://"$MR_DMAAP_APP_NAME":"$2 # access from script via proxy, docker -# MR_DMAAP_ADAPTER_HTTP="" # Access to dmaap mr via proyx - set only if app is included - -# MR_SERVICE_PATH=$MR_STUB_PATH # access container->container, docker - access pod->svc, kube -# __check_included_image "DMAAPMR" -# if [ $? -eq 0 ]; then -# MR_SERVICE_PATH=$MR_DMAAP_PATH # access container->container, docker - access pod->svc, kube -# MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH -# fi - -# # For directing calls from script to e.g.PMS via message rounter -# # These cases shall always go though the mr-stub -# MR_ADAPTER_HTTP="http://"$MR_STUB_APP_NAME":"$4 -# MR_ADAPTER_HTTPS="https://"$MR_STUB_APP_NAME":"$6 - -# MR_DMAAP_ADAPTER_TYPE="REST" - -# if [ $RUNMODE == "KUBE" ]; then -# MR_STUB_PATH=$MR_HTTPX"://"$MR_STUB_APP_NAME.$KUBE_ONAP_NAMESPACE":"$3 # access from script via proxy, kube -# MR_DMAAP_PATH=$MR_HTTPX"://"$MR_DMAAP_APP_NAME.$KUBE_ONAP_NAMESPACE":"$3 # access from script via proxy, kube - -# MR_SERVICE_PATH=$MR_STUB_PATH -# __check_included_image "DMAAPMR" -# if [ $? -eq 0 ]; then -# MR_SERVICE_PATH=$MR_DMAAP_PATH -# MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH -# fi -# __check_prestarted_image "DMAAPMR" -# if [ $? -eq 0 ]; then -# MR_SERVICE_PATH=$MR_DMAAP_PATH -# MR_DMAAP_ADAPTER_HTTP=$MR_DMAAP_PATH -# fi - -# # For directing calls from script to e.g.PMS, via message rounter -# # These calls shall always go though the mr-stub -# MR_ADAPTER_HTTP="http://"$MR_STUB_APP_NAME":"$5 -# MR_ADAPTER_HTTPS="https://"$MR_STUB_APP_NAME":"$7 -# fi - -# # For calls from script to the mr-stub -# MR_STUB_ADAPTER=$MR_STUB_PATH -# MR_STUB_ADAPTER_TYPE="REST" - -# echo "" - -# } - # Export env vars for config files, docker compose and kube resources # args: - __dmaapmr_export_vars() { @@ -435,6 +383,10 @@ __dmaapmr_export_vars() { export MR_ZOOKEEPER_PORT export MR_KAFKA_SERVICE_PATH + export MR_ZOOKEEPER_SERVICE_PATH + + export MR_KAFKA_KUBE_NODE_PORT + export MR_KAFKA_DOCKER_LOCALHOST_PORT } # Export env vars for config files, docker compose and kube resources @@ -457,6 +409,7 @@ __mr_export_vars() { export MR_EXTERNAL_PORT export MR_KAFKA_SERVICE_PATH + export MR_ZOOKEEPER_SERVICE_PATH } @@ -569,36 +522,10 @@ start_mr() { __kube_create_instance app $MR_DMAAP_APP_NAME $input_yaml $output_yaml - # echo " Retrieving host and ports for service..." - # MR_DMAAP_HOST_NAME=$(__kube_get_service_host $MR_DMAAP_APP_NAME $KUBE_ONAP_NAMESPACE) - - # MR_EXT_PORT=$(__kube_get_service_port $MR_DMAAP_APP_NAME $KUBE_ONAP_NAMESPACE "http") - # MR_EXT_SECURE_PORT=$(__kube_get_service_port $MR_DMAAP_APP_NAME $KUBE_ONAP_NAMESPACE "https") - - # echo " Host IP, http port, https port: $MR_DMAAP_APP_NAME $MR_EXT_PORT $MR_EXT_SECURE_PORT" - # MR_SERVICE_PATH="" - # if [ $MR_HTTPX == "http" ]; then - # MR_DMAAP_PATH=$MR_HTTPX"://"$MR_DMAAP_HOST_NAME":"$MR_EXT_PORT - # MR_SERVICE_PATH=$MR_HTTPX"://"$MR_DMAAP_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_EXT_PORT - # else - # MR_DMAAP_PATH=$MR_HTTPX"://"$MR_DMAAP_HOST_NAME":"$MR_EXT_SECURE_PORT - # MR_SERVICE_PATH=$MR_HTTPX"://"$MR_DMAAP_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_EXT_SECURE_PORT - # fi - __check_service_start $MR_DMAAP_APP_NAME $MR_DMAAP_PATH$MR_DMAAP_ALIVE_URL - # Cannot create topics, returns 400 forever.....topics will be created during pipeclean below - #__create_topic $MR_READ_TOPIC "Topic for reading policy messages" - - #__create_topic $MR_WRITE_TOPIC "Topic for writing policy messages" - -# __dmaap_pipeclean $MR_READ_TOPIC "/events/$MR_READ_TOPIC" "/events/$MR_READ_TOPIC/users/policy-agent?timeout=1000&limit=100" -# -# __dmaap_pipeclean $MR_WRITE_TOPIC "/events/$MR_WRITE_TOPIC" "/events/$MR_WRITE_TOPIC/users/mr-stub?timeout=1000&limit=100" - + echo " Kafka TCP node port $MR_KAFKA_KUBE_NODE_PORT" - #__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 @@ -650,41 +577,8 @@ start_mr() { fi - # echo " Retrieving host and ports for service..." - # MR_STUB_HOST_NAME=$(__kube_get_service_host $MR_STUB_APP_NAME $KUBE_ONAP_NAMESPACE) - - # MR_EXT_PORT=$(__kube_get_service_port $MR_STUB_APP_NAME $KUBE_ONAP_NAMESPACE "http") - # MR_EXT_SECURE_PORT=$(__kube_get_service_port $MR_STUB_APP_NAME $KUBE_ONAP_NAMESPACE "https") - - # echo " Host IP, http port, https port: $MR_STUB_APP_NAME $MR_EXT_PORT $MR_EXT_SECURE_PORT" - # if [ $MR_HTTPX == "http" ]; then - # MR_STUB_PATH=$MR_HTTPX"://"$MR_STUB_HOST_NAME":"$MR_EXT_PORT - # if [ -z "$MR_SERVICE_PATH" ]; then - # MR_SERVICE_PATH=$MR_HTTPX"://"$MR_STUB_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_EXT_PORT - # fi - # else - # MR_STUB_PATH=$MR_HTTPX"://"$MR_STUB_HOST_NAME":"$MR_EXT_SECURE_PORT - # if [ -z "$MR_SERVICE_PATH" ]; then - # MR_SERVICE_PATH=$MR_HTTPX"://"$MR_STUB_APP_NAME"."$KUBE_ONAP_NAMESPACE":"$MR_EXT_SECURE_PORT - # fi - # fi - # MR_ADAPTER_HTTP="http://"$MR_STUB_HOST_NAME":"$MR_EXT_PORT - # MR_ADAPTER_HTTPS="https://"$MR_STUB_HOST_NAME":"$MR_EXT_SECURE_PORT - - # MR_STUB_ADAPTER=$MR_STUB_PATH - # MR_STUB_ADAPTER_TYPE="REST" - __check_service_start $MR_STUB_APP_NAME $MR_STUB_PATH$MR_STUB_ALIVE_URL - echo -ne " Service $MR_STUB_APP_NAME - reset "$SAMELINE - result=$(__do_curl $MR_STUB_PATH/reset) - if [ $? -ne 0 ]; then - echo -e " Service $MR_STUB_APP_NAME - reset $RED Failed $ERED - will continue" - else - echo -e " Service $MR_STUB_APP_NAME - reset $GREEN OK $EGREEN" - fi - - else __check_included_image 'DMAAPMR' @@ -732,15 +626,7 @@ start_mr() { __check_service_start $MR_DMAAP_APP_NAME $MR_DMAAP_PATH$MR_DMAAP_ALIVE_URL - - # Cannot create topics, returns 400 forever.....topics will be created during pipeclean below - #__create_topic $MR_READ_TOPIC "Topic for reading policy messages" - - #__create_topic $MR_WRITE_TOPIC "Topic for writing policy messages" - - #__dmaap_pipeclean $MR_READ_TOPIC "/events/$MR_READ_TOPIC" "/events/$MR_READ_TOPIC/users/policy-agent?timeout=1000&limit=100" - - #__dmaap_pipeclean $MR_WRITE_TOPIC "/events/$MR_WRITE_TOPIC" "/events/$MR_WRITE_TOPIC/users/mr-stub?timeout=1000&limit=100" + echo " Kafka TCP node port $MR_KAFKA_DOCKER_LOCALHOST_PORT" if [ $# -gt 0 ]; then if [ $(($#%3)) -eq 0 ]; then @@ -755,13 +641,7 @@ start_mr() { fi fi - #__dmaap_pipeclean "unauthenticated.dmaapmed.json" "/events/unauthenticated.dmaapmed.json" "/events/unauthenticated.dmaapmed.json/dmaapmediatorproducer/STD_Fault_Messages?timeout=1000&limit=100" - #__dmaap_pipeclean "unauthenticated.dmaapadp.json" "/events/unauthenticated.dmaapadp.json" "/events/unauthenticated.dmaapadp.json/dmaapadapterproducer/msgs?timeout=1000&limit=100" - - echo " Current topics:" - curlString="$MR_DMAAP_PATH/topics" - result=$(__do_curl "$curlString") - echo $result | indent2 + dmaap_api_print_topics fi __mr_export_vars @@ -848,6 +728,15 @@ __dmaap_pipeclean() { return 1 } +# Helper function to list the current topics in DMAAP MR +# args: - +dmaap_api_print_topics() { + echo " Current topics:" + curlString="$MR_DMAAP_PATH/topics" + result=$(__do_curl "$curlString") + echo $result | indent2 +} + ### Generic test cases for varaible checking @@ -1017,12 +906,12 @@ mr_api_generate_json_payload_file() { __log_conf_fail_general "Only size between 1k and 10000k supported" return 1 fi - echo -n "{\"a\":[" > $2 - LEN=$(($1*150)) - echo -n "\"a0\"" >> $2 + echo -n "{\"abcdefghijklmno\":[" > $2 + LEN=$(($1*100-2)) + echo -n "\""ABCDEFG"\"" >> $2 for ((idx=1; idx<$LEN; idx++)) do - echo -n ",\"a$idx\"" >> $2 + echo -n ",\"ABCDEFG\"" >> $2 done echo -n "]}" >> $2 @@ -1030,7 +919,7 @@ mr_api_generate_json_payload_file() { return 0 } -# Create tet file for payload +# Create text file for payload # arg: mr_api_generate_text_payload_file() { __log_conf_start $@