blob: 6e00c9d976fda11ffe549bc014f20818f412d47e [file] [log] [blame]
BjornMagnussonXA70e878f2020-05-11 14:11:30 +02001#!/bin/bash
BjornMagnussonXA80a92002020-03-19 14:31:06 +01002
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
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
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=================================================
18#
19
BjornMagnussonXA4207b832020-11-03 09:52:49 +010020TC_ONELINE_DESCR="Resync 10000 policies using OSC and STD interface"
BjornMagnussonXA80a92002020-03-19 14:31:06 +010021
BjornMagnussonXAf38e1e82020-10-11 23:05:02 +020022#App names to include in the test, space separated list
23INCLUDED_IMAGES="CBS CONSUL CP CR MR PA RICSIM SDNC"
BjornMagnussonXAbbd2e9d2020-05-27 21:24:06 +020024
BjornMagnussonXA80a92002020-03-19 14:31:06 +010025. ../common/testcase_common.sh $@
26. ../common/agent_api_functions.sh
27. ../common/ricsimulator_api_functions.sh
28
29#### TEST BEGIN ####
30
BjornMagnussonXAad047782020-06-08 15:54:11 +020031generate_uuid
32
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020033# Tested variants of REST/DMAAP/SDNC config
34TESTED_VARIANTS="REST DMAAP REST+SDNC DMAAP+SDNC DMAAP_BATCH DMAAP_BATCH+SDNC"
35#Test agent and simulator protocol versions (others are http only)
36TESTED_PROTOCOLS="HTTP HTTPS"
37for __httpx in $TESTED_PROTOCOLS ; do
38 for interface in $TESTED_VARIANTS ; do
BjornMagnussonXA80a92002020-03-19 14:31:06 +010039
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020040 echo "#####################################################################"
41 echo "#####################################################################"
42 echo "### Testing agent: "$interface" and "$__httpx
43 echo "#####################################################################"
44 echo "#####################################################################"
BjornMagnussonXA80a92002020-03-19 14:31:06 +010045
BjornMagnussonXA496156d2020-08-10 14:16:24 +020046 if [ $__httpx == "HTTPS" ]; then
BjornMagnussonXA496156d2020-08-10 14:16:24 +020047 CR_PATH="https://$CR_APP_NAME:$CR_EXTERNAL_SECURE_PORT/callbacks"
48 use_cr_https
BjornMagnussonXAbf3700b2020-10-05 08:39:40 +020049 use_simulator_https
50 use_mr_https
51 if [[ $interface = *"SDNC"* ]]; then
52 use_sdnc_https
53 fi
54 if [[ $interface = *"DMAAP"* ]]; then
55 use_agent_dmaap_https
56 else
57 use_agent_rest_https
58 fi
BjornMagnussonXA496156d2020-08-10 14:16:24 +020059 else
BjornMagnussonXA496156d2020-08-10 14:16:24 +020060 CR_PATH="http://$CR_APP_NAME:$CR_EXTERNAL_PORT/callbacks"
61 use_cr_http
BjornMagnussonXAbf3700b2020-10-05 08:39:40 +020062 use_simulator_http
63 use_mr_http
64 if [[ $interface = *"SDNC"* ]]; then
65 use_sdnc_http
66 fi
67 if [[ $interface = *"DMAAP"* ]]; then
68 use_agent_dmaap_http
69 else
70 use_agent_rest_http
71 fi
BjornMagnussonXA496156d2020-08-10 14:16:24 +020072 fi
BjornMagnussonXA80a92002020-03-19 14:31:06 +010073
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020074 # Clean container and start all needed containers #
75 clean_containers
BjornMagnussonXA80a92002020-03-19 14:31:06 +010076
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020077 start_ric_simulators ricsim_g1 4 OSC_2.1.0
BjornMagnussonXA80a92002020-03-19 14:31:06 +010078
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020079 start_ric_simulators ricsim_g2 4 STD_1.1.3
BjornMagnussonXA80a92002020-03-19 14:31:06 +010080
BjornMagnussonXA4207b832020-11-03 09:52:49 +010081 if [ "$PMS_VERSION" == "V2" ]; then
82 start_ric_simulators ricsim_g3 4 STD_2.0.0
83 fi
84
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020085 start_mr
BjornMagnussonXA80a92002020-03-19 14:31:06 +010086
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020087 start_cr
BjornMagnussonXA80a92002020-03-19 14:31:06 +010088
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020089 start_consul_cbs
BjornMagnussonXA80a92002020-03-19 14:31:06 +010090
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020091 if [[ $interface = *"SDNC"* ]]; then
92 start_sdnc
BjornMagnussonXAbf3700b2020-10-05 08:39:40 +020093 prepare_consul_config SDNC ".consul_config.json"
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020094 else
95 prepare_consul_config NOSDNC ".consul_config.json"
96 fi
BjornMagnussonXA80a92002020-03-19 14:31:06 +010097
BjornMagnussonXA70e878f2020-05-11 14:11:30 +020098 consul_config_app ".consul_config.json"
BjornMagnussonXA80a92002020-03-19 14:31:06 +010099
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200100 start_control_panel
BjornMagnussonXA80a92002020-03-19 14:31:06 +0100101
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200102 start_policy_agent
BjornMagnussonXA80a92002020-03-19 14:31:06 +0100103
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200104 set_agent_debug
BjornMagnussonXA80a92002020-03-19 14:31:06 +0100105
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200106 api_get_status 200
BjornMagnussonXA80a92002020-03-19 14:31:06 +0100107
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200108 sim_print ricsim_g1_1 interface
BjornMagnussonXA80a92002020-03-19 14:31:06 +0100109
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200110 sim_print ricsim_g2_1 interface
BjornMagnussonXA80a92002020-03-19 14:31:06 +0100111
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100112 if [ "$PMS_VERSION" == "V2" ]; then
113 sim_print ricsim_g3_1 interface
114 fi
115
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200116 sim_put_policy_type 201 ricsim_g1_1 1 testdata/OSC/sim_1.json
117
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100118 if [ "$PMS_VERSION" == "V2" ]; then
119 api_equal json:policy-types 2 120 #Wait for the agent to refresh types from the simulator
120 else
121 api_equal json:policy_types 2 120 #Wait for the agent to refresh types from the simulator
122 fi
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200123
BjornMagnussonXAbbd2e9d2020-05-27 21:24:06 +0200124 api_put_service 201 "serv1" 3600 "$CR_PATH/1"
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200125
126 START_ID=2000
127 NUM_POLICIES=10000
128
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100129 if [ "$PMS_VERSION" == "V2" ]; then
130 notificationurl="http://localhost:80"
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200131 else
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100132 notificationurl=""
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200133 fi
134
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100135 if [[ $interface == *"BATCH"* ]]; then
136 api_put_policy_batch 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES
137 else
138 api_put_policy 201 "serv1" ricsim_g1_1 1 $START_ID NOTRANSIENT $notificationurl testdata/OSC/pi1_template.json $NUM_POLICIES
139 fi
140
141 sim_equal ricsim_g1_1 num_instances $NUM_POLICIES
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200142
143 sim_post_delete_instances 200 ricsim_g1_1
144
145 sim_equal ricsim_g1_1 num_instances 0
146
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100147 sim_equal ricsim_g1_1 num_instances $NUM_POLICIES 300
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200148
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100149 START_ID2=$(($START_ID+$NUM_POLICIES))
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200150
151 if [[ $interface == *"BATCH"* ]]; then
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100152 api_put_policy_batch 201 "serv1" ricsim_g2_1 NOTYPE $START_ID2 NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200153 else
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100154 api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE $START_ID2 NOTRANSIENT $notificationurl testdata/STD/pi1_template.json $NUM_POLICIES
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200155 fi
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100156 sim_equal ricsim_g2_1 num_instances $NUM_POLICIES
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200157
158 sim_post_delete_instances 200 ricsim_g2_1
159
160 sim_equal ricsim_g2_1 num_instances 0
161
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100162 sim_equal ricsim_g2_1 num_instances $NUM_POLICIES 300
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200163
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100164 api_delete_policy 204 $(($START_ID+47))
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200165
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100166 api_delete_policy 204 $(($START_ID+$NUM_POLICIES-39))
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200167
168 sim_post_delete_instances 200 ricsim_g1_1
169
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100170 sim_equal ricsim_g1_1 num_instances $(($NUM_POLICIES-2)) 300
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200171
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100172 api_delete_policy 204 $(($START_ID2+37))
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200173
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100174 api_delete_policy 204 $(($START_ID2+$NUM_POLICIES-93))
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200175
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100176 api_delete_policy 204 $(($START_ID2+$NUM_POLICIES-91))
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200177
178 sim_post_delete_instances 200 ricsim_g2_1
179
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100180 sim_equal ricsim_g1_1 num_instances $(($NUM_POLICIES-2)) 300
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200181
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100182 sim_equal ricsim_g2_1 num_instances $(($NUM_POLICIES-3)) 300
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200183
BjornMagnussonXA4207b832020-11-03 09:52:49 +0100184 api_equal json:policies $(($NUM_POLICIES-2+$NUM_POLICIES-3))
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200185
BjornMagnussonXAbbd2e9d2020-05-27 21:24:06 +0200186 check_policy_agent_logs
187
188 store_logs "${__httpx}__${interface}"
189
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200190 done
191
192done
BjornMagnussonXA80a92002020-03-19 14:31:06 +0100193
194
BjornMagnussonXA80a92002020-03-19 14:31:06 +0100195#### TEST COMPLETE ####
196
BjornMagnussonXA80a92002020-03-19 14:31:06 +0100197
BjornMagnussonXA70e878f2020-05-11 14:11:30 +0200198print_result
199
200auto_clean_containers