3 # ============LICENSE_START===============================================
4 # Copyright (C) 2020 Nordix Foundation. All rights reserved.
5 # ========================================================================
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
10 # http://www.apache.org/licenses/LICENSE-2.0
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 # ============LICENSE_END=================================================
20 TC_ONELINE_DESCR="Create 10000 policies in sequence using http/https and Agent REST/DMAAP with/without SDNC controller"
22 #App names to include in the test, space separated list
23 INCLUDED_IMAGES="CBS CONSUL CP CR MR PA RICSIM SDNC"
25 #SUPPORTED TEST ENV FILE
26 SUPPORTED_PROFILES="ONAP-MASTER ONAP-GUILIN ORAN-CHERRY"
28 . ../common/testcase_common.sh $@
29 . ../common/agent_api_functions.sh
30 . ../common/ricsimulator_api_functions.sh
31 . ../common/cr_api_functions.sh
37 #Local vars in test script
38 ##########################
39 # Number of policies in each sequence
42 # Tested variants of REST/DMAAP/SDNC config
43 TESTED_VARIANTS="NOSDNC SDNC"
45 #Test agent and simulator protocol versions (others are http only)
46 TESTED_PROTOCOLS="HTTP HTTPS"
48 for __httpx in $TESTED_PROTOCOLS ; do
49 for interface in $TESTED_VARIANTS ; do
51 echo "#####################################################################"
52 echo "#####################################################################"
53 echo "### Testing agent via $interface using $__httpx"
54 echo "#####################################################################"
55 echo "#####################################################################"
57 if [ $__httpx == "HTTPS" ]; then
69 # Policy instance start id
74 start_ric_simulators ricsim_g1 1 OSC_2.1.0
75 start_ric_simulators ricsim_g2 1 STD_1.1.3
76 if [ "$PMS_VERSION" == "V2" ]; then
77 start_ric_simulators ricsim_g3 1 STD_2.0.0
84 if [[ $interface == "SDNC" ]]; then
86 prepare_consul_config SDNC ".consul_config.json"
88 prepare_consul_config NOSDNC ".consul_config.json"
93 consul_config_app ".consul_config.json"
101 mr_equal requests_submitted 0
106 sim_print ricsim_g1_1 interface
107 sim_print ricsim_g2_1 interface
108 if [ "$PMS_VERSION" == "V2" ]; then
109 sim_print ricsim_g3_1 interface
112 sim_put_policy_type 201 ricsim_g1_1 1 testdata/OSC/sim_1.json
114 if [ "$PMS_VERSION" == "V2" ]; then
115 sim_put_policy_type 201 ricsim_g3_1 STD_QOS2_0.1.0 testdata/STD2/sim_qos2.json
117 api_equal json:policy-types 3 120 #Wait for the agent to refresh types from the simulators
119 api_equal json:policy_types 2 120 #Wait for the agent to refresh types from the simulators
122 api_put_service 201 "serv1" 3600 "$CR_PATH/1"
124 if [ "$PMS_VERSION" == "V2" ]; then
125 notificationurl=$CR_PATH"/test"
130 start_timer "Create polices in OSC via agent REST and $interface using "$__httpx
131 api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES
132 print_timer "Create polices in OSC via agent REST and $interface using "$__httpx
134 sim_equal ricsim_g1_1 num_instances $NUM_POLICIES
136 START_ID=$(($START_ID+$NUM_POLICIES))
138 start_timer "Create polices in STD via agent REST and $interface using "$__httpx
139 api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES
140 print_timer "Create polices in STD via agent REST and $interface using "$__httpx
142 sim_equal ricsim_g2_1 num_instances $NUM_POLICIES
144 if [ "$PMS_VERSION" == "V2" ]; then
146 START_ID=$(($START_ID+$NUM_POLICIES))
148 start_timer "Create polices in STD 2 via agent REST and $interface using "$__httpx
149 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
150 print_timer "Create polices in STD via agent REST and $interface using "$__httpx
152 sim_equal ricsim_g3_1 num_instances $NUM_POLICIES
155 if [ $__httpx == "HTTPS" ]; then
156 echo "Using secure ports towards dmaap"
157 use_agent_dmaap_https
159 echo "Using non-secure ports towards dmaap"
163 START_ID=$(($START_ID+$NUM_POLICIES))
165 start_timer "Create polices in OSC via agent DMAAP, one by one, and $interface using "$__httpx
166 api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES
167 print_timer "Create polices in OSC via agent DMAAP, one by one, and $interface using "$__httpx
169 sim_equal ricsim_g1_1 num_instances $((2*$NUM_POLICIES))
171 START_ID=$(($START_ID+$NUM_POLICIES))
173 start_timer "Create polices in STD via agent DMAAP, one by one, and $interface using "$__httpx
174 api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES
175 print_timer "Create polices in STD via agent DMAAP, one by one, and $interface using "$__httpx
177 sim_equal ricsim_g2_1 num_instances $((2*$NUM_POLICIES))
179 if [ "$PMS_VERSION" == "V2" ]; then
181 START_ID=$(($START_ID+$NUM_POLICIES))
183 start_timer "Create polices in STD 2 via agent DMAAP, one by one, and $interface using "$__httpx
184 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
185 print_timer "Create polices in STD via agent DMAAP, one by one, and $interface using "$__httpx
187 sim_equal ricsim_g3_1 num_instances $((2*$NUM_POLICIES))
190 START_ID=$(($START_ID+$NUM_POLICIES))
192 start_timer "Create polices in OSC via agent DMAAP in batch and $interface using "$__httpx
193 api_put_policy_batch 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES
194 print_timer "Create polices in OSC via agent DMAAP in batch and $interface using "$__httpx
196 sim_equal ricsim_g1_1 num_instances $((3*$NUM_POLICIES))
198 START_ID=$(($START_ID+$NUM_POLICIES))
200 start_timer "Create polices in STD via agent DMAAP in batch and $interface using "$__httpx
201 api_put_policy_batch 201 "serv1" ricsim_g2_1 NOTYPE $START_ID NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES
202 print_timer "Create polices in STD via agent DMAAP in batch and $interface using "$__httpx
204 sim_equal ricsim_g2_1 num_instances $((3*$NUM_POLICIES))
206 if [ "$PMS_VERSION" == "V2" ]; then
208 START_ID=$(($START_ID+$NUM_POLICIES))
210 start_timer "Create polices in STD via agent DMAAP in batch and $interface using "$__httpx
211 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
212 print_timer "Create polices in STD via agent DMAAP in batch and $interface using "$__httpx
214 sim_equal ricsim_g3_1 num_instances $((3*$NUM_POLICIES))
217 if [ $interface == "SDNC" ]; then
218 sim_contains_str ricsim_g1_1 remote_hosts "a1-controller"
219 sim_contains_str ricsim_g2_1 remote_hosts "a1-controller"
220 if [ "$PMS_VERSION" == "V2" ]; then
221 sim_contains_str ricsim_g3_1 remote_hosts "a1-controller"
224 sim_contains_str ricsim_g1_1 remote_hosts "policy-agent"
225 sim_contains_str ricsim_g2_1 remote_hosts "policy-agent"
226 if [ "$PMS_VERSION" == "V2" ]; then
227 sim_contains_str ricsim_g3_1 remote_hosts "policy-agent"
231 check_policy_agent_logs
232 if [[ $interface = *"SDNC"* ]]; then
236 store_logs "${__httpx}__${interface}"
240 #### TEST COMPLETE ####
244 auto_clean_containers