394a8afdec0038e8275bf6016d1846299c589e81
[integration/csit.git] / plans / vfc-nfvo-lcm / sanity-check / setup.sh
1 #!/bin/bash
2 #
3 # Copyright 2017 ZTE Corporation.
4 #
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
8 #
9 #     http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16 #
17 # Place the scripts in run order:
18 # Start all process required for executing test case
19
20 source ${SCRIPTS}/common_functions.sh
21
22 #start msb
23 docker run -d -p 8500:8500  --name msb_consul consul:0.9.3
24 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul`
25 echo MSB_CONSUL_IP=${MSB_CONSUL_IP}
26
27 docker run -d  -p 10081:10081  -e CONSUL_IP=$MSB_CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery
28 MSB_DISCOVERY_IP=`get-instance-ip.sh msb_discovery`
29 echo DISCOVERY_IP=${MSB_DISCOVERY_IP}
30
31 docker run -d -p 80:80 -e CONSUL_IP=$MSB_CONSUL_IP -e SDCLIENT_IP=$MSB_DISCOVERY_IP -e "ROUTE_LABELS=visualRange:1" --name msb_internal_apigateway nexus3.onap.org:10001/onap/msb/msb_apigateway
32 MSB_IAG_IP=`get-instance-ip.sh msb_internal_apigateway`
33 echo MSB_IAG_IP=${MSB_IAG_IP}
34
35 docker run -d -p 3306:3306 --name vfc-db -v /var/lib/mysql nexus3.onap.org:10001/onap/vfc/db
36 VFC_DB_IP=`get-instance-ip.sh vfc-db`
37 echo VFC_DB_IP=${VFC_DB_IP}
38
39 # Wait for initialization(8500 Consul, 10081 Service Registration & Discovery, 80 api gateway)
40 for i in {1..10}; do
41     curl -sS -m 1 ${MSB_CONSUL_IP}:8500 && curl -sS -m 1 ${MSB_DISCOVERY_IP}:10081 && curl -sS -m 1 ${MSB_IAG_IP}:80 && break
42     echo sleep $i
43     sleep $i
44 done
45
46 # Wait for initialization(3306 DB)
47 for i in {1..3}; do
48     curl -sS -m 1 ${VFC_DB_IP}:3306 && break
49     echo sleep $i
50     sleep $i
51 done
52
53 docker ps > ps.txt
54 cat ps.txt
55 echo "****************************"
56 docker logs -f vfc-db > db.txt &
57 cat db.txt
58
59 # Need some time so service info can be synced from discovery to api gateway
60 echo sleep 60
61 sleep 60
62
63 # start vfc-nslcm
64 docker run -d --name vfc-nslcm -v /var/lib/mysql -e MSB_ADDR=${MSB_IAG_IP}:80 -e MYSQL_ADDR=${VFC_DB_IP}:3306 -e REG_TO_MSB_WHEN_START=true nexus3.onap.org:10001/onap/vfc/nslcm
65 NSLCM_IP=`get-instance-ip.sh vfc-nslcm`
66
67 # Wait for initialization
68 for i in {1..10}; do
69     curl -sS -m 1 ${NSLCM_IP}:8403 && break
70     echo sleep $i
71     sleep $i
72 done
73
74 docker logs -f vfc-nslcm > dockerlogs.txt &
75 cat dockerlogs.txt
76
77 docker cp vfc-nslcm:/service/vfc/nfvo/lcm/logs/runtime_lcm.log ./
78 cat runtime_lcm.log
79
80 # Pass any variables required by Robot test suites in ROBOT_VARIABLES
81 ROBOT_VARIABLES="-v MSB_IAG_IP:${MSB_IAG_IP} -v NSLCM_IP:${NSLCM_IP} -v SCRIPTS:${SCRIPTS}"