blob: d66b0734c9048f5a5de8b223c4e2fc1184f80b35 [file] [log] [blame]
Pamela Dragoshf1f7c512017-08-03 13:31:15 +00001#!/bin/bash
2#
3# Copyright 2017 AT&T Intellectual Property. All rights reserved.
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#
17echo "This is ${WORKSPACE}/test/csit/scripts/policy/script1.sh"
ma987de38164b2017-09-28 16:33:03 -050018
19
20# the directory of the script
21DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
22echo ${DIR}
23
24# the temp directory used, within $DIR
25# omit the -p parameter to create a temporal directory in the default location
26WORK_DIR=`mktemp -d -p "$DIR"`
27echo ${WORK_DIR}
28
29cd ${WORK_DIR}
30
31# check if tmp dir was created
32if [[ ! "$WORK_DIR" || ! -d "$WORK_DIR" ]]; then
33 echo "Could not create temp dir"
34 exit 1
35fi
36
37# bring down maven
38mkdir maven
39cd maven
40curl -O http://apache.claz.org/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
41tar -xzvf apache-maven-3.3.9-bin.tar.gz
42ls -l
43export PATH=${PATH}:${WORK_DIR}/maven/apache-maven-3.3.9/bin
44${WORK_DIR}/maven/apache-maven-3.3.9/bin/mvn -v
45cd ..
46
47ifconfig
48
49if ! ifconfig eth0; then
50 if ! ifconfig ens3; then
51 echo "Could not determine IP address"
52 exit 1
53 fi
54 export IP=`ifconfig ens3 | awk -F: '/inet addr/ {gsub(/ .*/,"",$2); print $2}'`
55else
56 export IP=`ifconfig eth0 | awk -F: '/inet addr/ {gsub(/ .*/,"",$2); print $2}'`
57fi
58echo $IP
59
60if ! ifconfig docker0; then
61 if ! ifconfig ens3; then
62 echo "Could not determine IP address"
63 exit 1
64 fi
65 export DOCKER_IP_IP=`ifconfig ens3 | awk -F: '/inet addr/ {gsub(/ .*/,"",$2); print $2}'`
66else
67 export DOCKER_IP=`ifconfig docker0 | awk -F: '/inet addr/ {gsub(/ .*/,"",$2); print $2}'`
68fi
69echo $DOCKER_IP
70
71git clone http://gerrit.onap.org/r/oparent
72
mmis1b40e3b2018-03-06 16:54:14 +000073git clone http://gerrit.onap.org/r/policy/engine
74cd engine/packages/docker
75${WORK_DIR}/maven/apache-maven-3.3.9/bin/mvn prepare-package --settings ${WORK_DIR}/oparent/settings.xml
76docker build -t onap/policy/policy-pe target/policy-pe
77
78cd ${WORK_DIR}
79git clone http://gerrit.onap.org/r/policy/drools-pdp
80cd drools-pdp/packages/docker
81${WORK_DIR}/maven/apache-maven-3.3.9/bin/mvn prepare-package --settings ${WORK_DIR}/oparent/settings.xml
82docker build -t onap/policy/policy-drools target/policy-drools
83
84cd ${WORK_DIR}
ma987de38164b2017-09-28 16:33:03 -050085git clone http://gerrit.onap.org/r/policy/docker
86cd docker
87
ma987de38164b2017-09-28 16:33:03 -050088docker build -t onap/policy/policy-nexus policy-nexus
ma987de38164b2017-09-28 16:33:03 -050089
90chmod +x config/drools/drools-tweaks.sh
91
92echo $IP > config/pe/ip_addr.txt
93ls -l config/pe/ip_addr.txt
94cat config/pe/ip_addr.txt
95
96export MTU=9126
97
RAJUbb7d13c2017-10-19 15:59:57 -050098export PRELOAD_POLICIES=false
ma987de38164b2017-09-28 16:33:03 -050099docker-compose -f docker-compose-integration.yml up -d
100
Pamela Dragosh6dc696f2017-10-10 19:50:44 +0000101if [ ! $? -eq 0 ]; then
102 echo "Docker compose failed"
103 exit 1
104fi
105
ma987de38164b2017-09-28 16:33:03 -0500106docker ps
107
Pamela Dragosh6dc696f2017-10-10 19:50:44 +0000108#sleep 4m
ma987de38164b2017-09-28 16:33:03 -0500109
110POLICY_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' drools`
111echo ${POLICY_IP}
112
ma987de38164b2017-09-28 16:33:03 -0500113PDP_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' pdp`
114echo ${PDP_IP}
115
Pamela Dragosh6dc696f2017-10-10 19:50:44 +0000116PAP_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' pap`
117echo ${PAP_IP}
ma987de38164b2017-09-28 16:33:03 -0500118
Pamela Dragosh6dc696f2017-10-10 19:50:44 +0000119BRMS_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' brmsgw`
120echo ${BRMS_IP}
121
122NEXUS_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' nexus`
123echo ${NEXUS_IP}
124
125MARIADB_IP=`docker inspect --format '{{ .NetworkSettings.Networks.docker_default.IPAddress}}' mariadb`
126echo ${MARIADB_IP}
127
128${DIR}/wait_for_port.sh ${MARIADB_IP} 3306
129${DIR}/wait_for_port.sh ${PAP_IP} 9091
130${DIR}/wait_for_port.sh ${PDP_IP} 8081
131${DIR}/wait_for_port.sh ${BRMS_IP} 9989
132${DIR}/wait_for_port.sh ${NEXUS_IP} 8081
133${DIR}/wait_for_port.sh ${POLICY_IP} 6969
134
135TIME_OUT=600
ma987de38164b2017-09-28 16:33:03 -0500136INTERVAL=20
137TIME=0
138while [ "$TIME" -lt "$TIME_OUT" ]; do
139 curl -i --user healthcheck:zb!XztG34 -H "ContentType: application/json" -H "Accept: application/json" ${POLICY_IP}:6969/healthcheck && break
ma987de38164b2017-09-28 16:33:03 -0500140
Pamela Dragosh6dc696f2017-10-10 19:50:44 +0000141 echo Sleep: $INTERVAL seconds before testing if Policy is up. Total wait time up now is: $TIME seconds. Timeout is: $TIME_OUT seconds
ma987de38164b2017-09-28 16:33:03 -0500142 sleep $INTERVAL
143 TIME=$(($TIME+$INTERVAL))
144
145done
146
Pamela Dragosh6dc696f2017-10-10 19:50:44 +0000147TIME_OUT=600
ma987de38164b2017-09-28 16:33:03 -0500148INTERVAL=20
149TIME=0
150while [ "$TIME" -lt "$TIME_OUT" ]; do
151
Pamela Dragosh6dc696f2017-10-10 19:50:44 +0000152 curl -i -v -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'ClientAuth: cHl0aG9uOnRlc3Q=' -H 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' -H 'Environment: TEST' -X POST -d '{"policyName": ".*"}' http://${PDP_IP}:8081/pdp/api/getConfig && break
ma987de38164b2017-09-28 16:33:03 -0500153
154echo Sleep: $INTERVAL seconds before testing if Policy is up. Total wait time up now is: $TIME seconds. Timeout is: $TIME_OUT seconds
155 sleep $INTERVAL
156 TIME=$(($TIME+$INTERVAL))
157
158done
159
Pamela Dragosh6dc696f2017-10-10 19:50:44 +0000160#
161# Add more sleep for everything to settle
162#
163sleep 3m