update Environment variable for DB
[integration/csit.git] / plans / modeling-etsicatalog / 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 #login to the onap nexus docker repo
21 docker login -u docker -p docker nexus3.onap.org:10001
22
23 # start msb
24 docker run -d -p 8500:8500 --name msb_consul consul:0.9.3
25 CONSUL_IP=`get-instance-ip.sh msb_consul`
26 echo CONSUL_IP=${CONSUL_IP}
27
28 docker run -d -p 10081:10081 -e CONSUL_IP=$CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery
29 DISCOVERY_IP=`get-instance-ip.sh msb_discovery`
30 echo DISCOVERY_IP=${DISCOVERY_IP}
31
32 docker run -d -p 80:80 -e CONSUL_IP=$CONSUL_IP -e SDCLIENT_IP=$DISCOVERY_IP -e "ROUTE_LABELS=visualRange:1" --name msb_internal_apigateway nexus3.onap.org:10001/onap/msb/msb_apigateway
33 MSB_IP==`get-instance-ip.sh msb_internal_apigateway`
34 echo MSB_IP=${MSB_IP}
35
36 docker run -d -p 3306:3306 --name vfc-db -v /var/lib/mysql -e MYSQL_USER="etsicatalog" -e MYSQL_PASSWORD="etsicatalog" -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE="etsicatalog" nexus3.onap.org:10001/library/mariadb
37 DB_IP=`get-instance-ip.sh vfc-db`
38 echo DB_IP=${DB_IP}
39
40 # Wait for initialization(8500 Consul, 10081 Service Registration & Discovery, 80 api gateway)
41 for i in {1..10}; do
42     curl -sS -m 1 ${CONSUL_IP}:8500 && curl -sS -m 1 ${DISCOVERY_IP}:10081 && curl -sS -m 1 ${MSB_IP}:80 && break
43     echo sleep $i
44     sleep $i
45 done
46
47 # Wait for initialization(3306 DB)
48 for i in {1..3}; do
49     curl -sS -m 1 ${DB_IP}:3306 && break
50     echo sleep $i
51     sleep $i
52 done
53
54 # Need some time so service info can be synced from discovery to api gateway
55 echo sleep 60
56 sleep 60
57
58 # start modeling-etsicatalog
59 docker run -d --name modeling-etsicatalog -v /var/lib/mysql -e MSB_ADDR=${DISCOVERY_IP}:10081 -e DB_IP=${DB_IP} nexus3.onap.org:10001/onap/modeling/etsicatalog
60 EtsiCatalog_IP=`get-instance-ip.sh modeling-etsicatalog`
61 for i in {1..10}; do
62     curl -sS -m 1 ${EtsiCatalog_IP}:8806 && break
63     echo sleep $i
64     sleep $i
65 done
66 docker logs modeling-etsicatalog
67
68 # Pass any variables required by Robot test suites in ROBOT_VARIABLES
69 ROBOT_VARIABLES="-v MSB_IP:${MSB_IP} -v EtsiCatalog_IP:${EtsiCatalog_IP} -v MSB_DISCOVERY_IP:${DISCOVERY_IP}"