Merge "Upgraded test env with Kubernetes support"
[nonrtric.git] / test / auto-test / FTC800.sh
index 92af396..0be6be8 100755 (executable)
 
 TC_ONELINE_DESCR="Create 10000 policies in sequence using http/https and Agent REST/DMAAP with/without SDNC controller"
 
-#App names to exclude checking pulling images for, space separated list
-EXCLUDED_IMAGES="ECS"
+#App names to include in the test when running docker, space separated list
+DOCKER_INCLUDED_IMAGES="CBS CONSUL CP CR MR PA RICSIM SDNC"
+
+#App names to include in the test when running kubernetes, space separated list
+KUBE_INCLUDED_IMAGES="CP CR MR PA RICSIM SDNC"
+#Prestarted app (not started by script) to include in the test when running kubernetes, space separated list
+KUBE_PRESTARTED_IMAGES=""
+
+#Supported test environment profiles
+SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU  ORAN-CHERRY ORAN-DAWN"
+#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
 
 #### TEST BEGIN ####
 
@@ -40,6 +54,7 @@ TESTED_VARIANTS="NOSDNC   SDNC"
 
 #Test agent and simulator protocol versions (others are http only)
 TESTED_PROTOCOLS="HTTP HTTPS"
+
 for __httpx in $TESTED_PROTOCOLS ; do
     for interface in $TESTED_VARIANTS ; do
 
@@ -50,15 +65,11 @@ for __httpx in $TESTED_PROTOCOLS ; do
         echo "#####################################################################"
 
         if [ $__httpx == "HTTPS" ]; then
-            # Path to callback receiver
-            CR_PATH="https://$CR_APP_NAME:$CR_EXTERNAL_SECURE_PORT/callbacks"
             use_cr_https
             use_simulator_https
             use_mr_https
             use_agent_rest_https
         else
-            # Path to callback receiver
-            CR_PATH="http://$CR_APP_NAME:$CR_EXTERNAL_PORT/callbacks"
             use_cr_http
             use_simulator_http
             use_mr_http
@@ -68,15 +79,26 @@ for __httpx in $TESTED_PROTOCOLS ; do
         # Policy instance start id
         START_ID=1
 
-        clean_containers
+        clean_environment
 
         start_ric_simulators ricsim_g1 1 OSC_2.1.0
         start_ric_simulators ricsim_g2 1 STD_1.1.3
+        if [ "$PMS_VERSION" == "V2" ]; then
+            start_ric_simulators ricsim_g3 1  STD_2.0.0
+        fi
 
         start_mr
 
         start_cr
 
+        start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/application.properties
+
+        start_policy_agent NORPOXY $SIM_GROUP/$POLICY_AGENT_COMPOSE_DIR/application.yaml
+
+        set_agent_debug
+
+        mr_equal requests_submitted 0
+
         if [[ $interface == "SDNC" ]]; then
             start_sdnc
             prepare_consul_config      SDNC    ".consul_config.json"
@@ -84,34 +106,45 @@ for __httpx in $TESTED_PROTOCOLS ; do
             prepare_consul_config      NOSDNC  ".consul_config.json"
         fi
 
-        start_consul_cbs
-
-        consul_config_app                      ".consul_config.json"
-
-        start_control_panel
-
-        start_policy_agent
-
-        set_agent_debug
+        if [ $RUNMODE == "DOCKER" ]; then
+            start_consul_cbs
+        fi
 
-        cr_equal received_callbacks 0
-        mr_equal requests_submitted 0
+        if [ $RUNMODE == "KUBE" ]; then
+            agent_load_config                       ".consul_config.json"
+        else
+            consul_config_app                      ".consul_config.json"
+        fi
 
 
         api_get_status 200
 
         sim_print ricsim_g1_1 interface
         sim_print ricsim_g2_1 interface
+        if [ "$PMS_VERSION" == "V2" ]; then
+            sim_print ricsim_g3_1 interface
+        fi
 
         sim_put_policy_type 201 ricsim_g1_1 1 testdata/OSC/sim_1.json
 
+        if [ "$PMS_VERSION" == "V2" ]; then
+            sim_put_policy_type 201 ricsim_g3_1 STD_QOS2_0.1.0 testdata/STD2/sim_qos2.json
 
-        api_equal json:policy_types 2 120  #Wait for the agent to refresh types from the simulators
+            api_equal json:policy-types 3 300  #Wait for the agent to refresh types from the simulators
+        else
+            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_PATH/1"
+        api_put_service 201 "serv1" 3600 "$CR_SERVICE_PATH/1"
+
+        if [ "$PMS_VERSION" == "V2" ]; then
+            notificationurl=$CR_SERVICE_PATH"/test"
+        else
+            notificationurl=""
+        fi
 
         start_timer "Create polices in OSC via agent REST and $interface using "$__httpx
-        api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT testdata/OSC/pi1_template.json $NUM_POLICIES
+        api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES
         print_timer "Create polices in OSC via agent REST and $interface using "$__httpx
 
         sim_equal ricsim_g1_1 num_instances $NUM_POLICIES
@@ -119,11 +152,22 @@ for __httpx in $TESTED_PROTOCOLS ; do
         START_ID=$(($START_ID+$NUM_POLICIES))
 
         start_timer "Create polices in STD via agent REST and $interface using "$__httpx
-        api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT testdata/STD/pi1_template.json $NUM_POLICIES
+        api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES
         print_timer "Create polices in STD via agent REST and $interface using "$__httpx
 
         sim_equal ricsim_g2_1 num_instances $NUM_POLICIES
 
+        if [ "$PMS_VERSION" == "V2" ]; then
+
+            START_ID=$(($START_ID+$NUM_POLICIES))
+
+            start_timer "Create polices in STD 2 via agent REST and $interface using "$__httpx
+            api_put_policy 201 "serv1" ricsim_g3_1 STD_QOS2_0.1.0 $START_ID NOTRANSIENT $notificationurl testdata/STD2/pi_qos2_template.json $NUM_POLICIES
+            print_timer "Create polices in STD via agent REST and $interface using "$__httpx
+
+            sim_equal ricsim_g3_1 num_instances $NUM_POLICIES
+        fi
+
         if [ $__httpx == "HTTPS" ]; then
             echo "Using secure ports towards dmaap"
             use_agent_dmaap_https
@@ -135,7 +179,7 @@ for __httpx in $TESTED_PROTOCOLS ; do
         START_ID=$(($START_ID+$NUM_POLICIES))
 
         start_timer "Create polices in OSC via agent DMAAP, one by one, and $interface using "$__httpx
-        api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT testdata/OSC/pi1_template.json $NUM_POLICIES
+        api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES
         print_timer "Create polices in OSC via agent DMAAP, one by one, and $interface using "$__httpx
 
         sim_equal ricsim_g1_1 num_instances $((2*$NUM_POLICIES))
@@ -143,15 +187,26 @@ for __httpx in $TESTED_PROTOCOLS ; do
         START_ID=$(($START_ID+$NUM_POLICIES))
 
         start_timer "Create polices in STD via agent DMAAP, one by one, and $interface using "$__httpx
-        api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT testdata/STD/pi1_template.json $NUM_POLICIES
+        api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES
         print_timer "Create polices in STD via agent DMAAP, one by one, and $interface using "$__httpx
 
         sim_equal ricsim_g2_1 num_instances $((2*$NUM_POLICIES))
 
+        if [ "$PMS_VERSION" == "V2" ]; then
+
+            START_ID=$(($START_ID+$NUM_POLICIES))
+
+            start_timer "Create polices in STD 2 via agent DMAAP, one by one, and $interface using "$__httpx
+            api_put_policy 201 "serv1" ricsim_g3_1 STD_QOS2_0.1.0 $START_ID NOTRANSIENT $notificationurl testdata/STD2/pi_qos2_template.json $NUM_POLICIES
+            print_timer "Create polices in STD via agent DMAAP, one by one, and $interface using "$__httpx
+
+            sim_equal ricsim_g3_1 num_instances $((2*$NUM_POLICIES))
+        fi
+
         START_ID=$(($START_ID+$NUM_POLICIES))
 
         start_timer "Create polices in OSC via agent DMAAP in batch and $interface using "$__httpx
-        api_put_policy_batch 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT testdata/OSC/pi1_template.json $NUM_POLICIES
+        api_put_policy_batch 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES
         print_timer "Create polices in OSC via agent DMAAP in batch and $interface using "$__httpx
 
         sim_equal ricsim_g1_1 num_instances $((3*$NUM_POLICIES))
@@ -159,20 +214,40 @@ for __httpx in $TESTED_PROTOCOLS ; do
         START_ID=$(($START_ID+$NUM_POLICIES))
 
         start_timer "Create polices in STD via agent DMAAP in batch and $interface using "$__httpx
-        api_put_policy_batch 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT testdata/STD/pi1_template.json $NUM_POLICIES
+        api_put_policy_batch 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES
         print_timer "Create polices in STD via agent DMAAP in batch and $interface using "$__httpx
 
         sim_equal ricsim_g2_1 num_instances $((3*$NUM_POLICIES))
 
+        if [ "$PMS_VERSION" == "V2" ]; then
+
+            START_ID=$(($START_ID+$NUM_POLICIES))
+
+            start_timer "Create polices in STD via agent DMAAP in batch and $interface using "$__httpx
+            api_put_policy_batch 201 "serv1" ricsim_g3_1 STD_QOS2_0.1.0 $START_ID NOTRANSIENT $notificationurl testdata/STD2/pi_qos2_template.json $NUM_POLICIES
+            print_timer "Create polices in STD via agent DMAAP in batch and $interface using "$__httpx
+
+            sim_equal ricsim_g3_1 num_instances $((3*$NUM_POLICIES))
+        fi
+
         if [ $interface == "SDNC" ]; then
-            sim_contains_str ricsim_g1_1 remote_hosts "a1-controller"
-            sim_contains_str ricsim_g2_1 remote_hosts "a1-controller"
+            sim_contains_str ricsim_g1_1 remote_hosts $SDNC_APP_NAME
+            sim_contains_str ricsim_g2_1 remote_hosts $SDNC_APP_NAME
+            if [ "$PMS_VERSION" == "V2" ]; then
+                sim_contains_str ricsim_g3_1 remote_hosts $SDNC_APP_NAME
+            fi
         else
-            sim_contains_str ricsim_g1_1 remote_hosts "policy-agent"
-            sim_contains_str ricsim_g2_1 remote_hosts "policy-agent"
+            sim_contains_str ricsim_g1_1 remote_hosts $POLICY_AGENT_APP_NAME
+            sim_contains_str ricsim_g2_1 remote_hosts $POLICY_AGENT_APP_NAME
+            if [ "$PMS_VERSION" == "V2" ]; then
+                sim_contains_str ricsim_g3_1 remote_hosts $POLICY_AGENT_APP_NAME
+            fi
         fi
 
         check_policy_agent_logs
+        if [[ $interface = *"SDNC"* ]]; then
+            check_sdnc_logs
+        fi
 
         store_logs          "${__httpx}__${interface}"
     done
@@ -182,4 +257,4 @@ done
 
 print_result
 
-auto_clean_containers
\ No newline at end of file
+auto_clean_environment
\ No newline at end of file