Remove dependency on vfc/db
[integration/csit.git] / plans / vfc-gvnfm-vnfres / 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 docker run -d  -p 10081:10081  -e CONSUL_IP=$MSB_CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery
27 MSB_DISCOVERY_IP=`get-instance-ip.sh msb_discovery`
28 echo MSB_DISCOVERY_IP=${MSB_DISCOVERY_IP}
29 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
30 MSB_IAG_IP=`get-instance-ip.sh msb_internal_apigateway`
31 echo MSB_IAG_IP=${MSB_IAG_IP}
32
33 # Start Mysql
34 docker run -d -p 3306:3306 --name vfc-db -v /var/lib/mysql -e MYSQL_USER="gvnfm" -e MYSQL_PASSWORD="gvnfm" -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE="gvnfm" nexus3.onap.org:10001/library/mariadb
35 VFC_DB_IP=`get-instance-ip.sh vfc-db`
36 echo VFC_DB_IP=${VFC_DB_IP}
37
38 # Start Redis
39 docker run -d -p 6379:6379 --name vfc-redis redis
40 VFC_REDIS_IP=`get-instance-ip.sh vfc-redis`
41 echo VFC_REDIS_IP=${VFC_REDIS_IP}
42
43 # Wait for initialization(8500 Consul, 10081 Service Registration & Discovery, 80 api gateway)
44 for i in {1..10}; do
45     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
46     echo sleep $i
47     sleep $i
48 done
49
50 # Wait for initialization(3306 DB)
51 for i in {1..3}; do
52     curl -sS -m 1 ${VFC_DB_IP}:3306 && break
53     echo sleep $i
54     sleep $i
55 done
56
57 # wait for container initalization
58 echo sleep 60
59 sleep 60
60
61 # start vfc-vnflcm
62 docker run -d --name vfc-vnflcm -e MSB_ADDR=${MSB_IAG_IP}:80 -e MYSQL_ADDR=${VFC_DB_IP}:3306 -e REDIS_HOST=${VFC_REDIS_IP} nexus3.onap.org:10001/onap/vfc/vnflcm
63 VNFLCM_IP=`get-instance-ip.sh vfc-vnflcm`
64
65 # Wait for initialization
66 for i in {1..10}; do
67     curl -sS -m 1 ${VNFLCM_IP}:8801 && break
68     echo sleep $i
69     sleep $i
70 done
71
72 # start vfc-vnfres
73 docker run -d --name vfc-vnfres -e MSB_ADDR=${MSB_IAG_IP}:80 -e MYSQL_ADDR=${VFC_DB_IP}:3306 -e REDIS_HOST=${VFC_REDIS_IP} nexus3.onap.org:10001/onap/vfc/vnfres
74 VNFRES_IP=`get-instance-ip.sh vfc-vnfres`
75
76 # Wait for initialization
77 for i in {1..10}; do
78     curl -sS ${VNFRES_IP}:8802 && break
79     echo sleep $i
80     sleep $i
81 done
82
83 docker cp vfc-vnfres:/service/vfc/gvnfm/vnfres/res/res/pub/config/config.py ./
84 cat config.py
85
86 docker logs vfc-vnfres
87
88 docker cp vfc-vnfres:/service/vfc/gvnfm/vnfres/res/logs/runtime_res.log ./
89 cat runtime_res.log
90
91 # Pass any variables required by Robot test suites in ROBOT_VARIABLES
92 ROBOT_VARIABLES="-v MSB_IAG_IP:${MSB_IAG_IP} -v VNFRES_IP:${VNFRES_IP} -v SCRIPTS:${SCRIPTS}"