e66102c6703324328daf344fa06cbb79d9ce99d1
[integration/csit.git] / plans / policy / xacml-pdp / setup.sh
1 #!/bin/bash
2 # ============LICENSE_START=======================================================
3 #  Copyright (C) 2019 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 #
17 # SPDX-License-Identifier: Apache-2.0
18 # ============LICENSE_END=========================================================
19
20 source ${SCRIPTS}/policy/config/policy-csit.conf
21 export POLICY_MARIADB_VER
22 echo ${GERRIT_BRANCH}
23 echo ${POLICY_MARIADB_VER}
24
25 echo "Uninstall docker-py and reinstall docker."
26 pip uninstall -y docker-py
27 pip uninstall -y docker
28 pip install -U docker==2.7.0
29
30 # the directory of the script
31 DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
32 echo ${DIR}
33
34 # the temp directory used, within $DIR
35 # omit the -p parameter to create a temporal directory in the default location
36 WORK_DIR=`mktemp -d -p "$DIR"`
37 echo ${WORK_DIR}
38
39 cd ${WORK_DIR}
40
41 # check if tmp dir was created
42 if [[ ! "$WORK_DIR" || ! -d "$WORK_DIR" ]]; then
43     echo "Could not create temp dir"
44     exit 1
45 fi
46
47 # bring down maven
48 mkdir maven
49 cd maven
50 # download maven from automatically selected mirror server
51 curl -vLO  "https://www.apache.org/dyn/mirrors/mirrors.cgi?cca2=us&preferred=http://apache.claz.org/&action=download&filename=maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz"
52 if ! tar -xzvf apache-maven-3.3.9-bin.tar.gz ; then
53     echo "Installation of maven has failed!"
54     exit 1
55 fi
56 ls -l
57 export PATH=${PATH}:${WORK_DIR}/maven/apache-maven-3.3.9/bin
58 ${WORK_DIR}/maven/apache-maven-3.3.9/bin/mvn -v
59 cd ..
60
61 git clone http://gerrit.onap.org/r/oparent
62 git clone --depth 1 https://gerrit.onap.org/r/policy/models -b ${GERRIT_BRANCH}
63 cd models/models-sim/models-sim-dmaap
64 ${WORK_DIR}/maven/apache-maven-3.3.9/bin/mvn clean install -DskipTests  --settings ${WORK_DIR}/oparent/settings.xml
65 bash ./src/main/package/docker/docker_build.sh
66 cd ${WORKSPACE}
67 rm -rf ${WORK_DIR}
68 sleep 3
69
70
71
72 sudo apt-get -y install libxml2-utils
73 POLICY_API_VERSION_EXTRACT="$(curl -q --silent https://git.onap.org/policy/api/plain/pom.xml?h=${GERRIT_BRANCH} | xmllint --xpath '/*[local-name()="project"]/*[local-name()="version"]/text()' -)"
74 export POLICY_API_VERSION="${POLICY_API_VERSION_EXTRACT:0:3}-SNAPSHOT-latest"
75 POLICY_PAP_VERSION_EXTRACT="$(curl -q --silent https://git.onap.org/policy/pap/plain/pom.xml?h=${GERRIT_BRANCH} | xmllint --xpath '/*[local-name()="project"]/*[local-name()="version"]/text()' -)"
76 export POLICY_PAP_VERSION="${POLICY_PAP_VERSION_EXTRACT:0:3}-SNAPSHOT-latest"
77 POLICY_XACML_PDP_VERSION_EXTRACT="$(curl -q --silent https://git.onap.org/policy/xacml-pdp/plain/pom.xml?h=${GERRIT_BRANCH} | xmllint --xpath '/*[local-name()="project"]/*[local-name()="version"]/text()' -)"
78 export POLICY_XACML_PDP_VERSION="${POLICY_XACML_PDP_VERSION_EXTRACT:0:3}-SNAPSHOT-latest"
79
80 echo ${POLICY_API_VERSION}
81 echo ${POLICY_PAP_VERSION}
82 echo ${POLICY_XACML_PDP_VERSION}
83 # Adding this waiting container due to race condition between pap and mariadb
84 docker-compose -f ${WORKSPACE}/scripts/policy/policy-xacml-pdp/docker-compose-pdpx.yml run --rm start_dependencies
85
86 #Configure the database
87 docker exec -it mariadb  chmod +x /docker-entrypoint-initdb.d/db.sh
88 docker exec -it mariadb  /docker-entrypoint-initdb.d/db.sh
89
90 # now bring everything else up
91 docker-compose -f ${WORKSPACE}/scripts/policy/policy-xacml-pdp/docker-compose-pdpx.yml run --rm start_all
92
93 unset http_proxy https_proxy
94
95 POLICY_API_IP=`get-instance-ip.sh policy-api`
96 MARIADB_IP=`get-instance-ip.sh mariadb`
97 POLICY_PDPX_IP=`get-instance-ip.sh policy-xacml-pdp`
98 DMAAP_IP=`get-instance-ip.sh dmaap-simulator`
99 POLICY_PAP_IP=`get-instance-ip.sh policy-pap`
100
101
102 echo PDP IP IS ${POLICY_PDPX_IP}
103 echo API IP IS ${POLICY_API_IP}
104 echo PAP IP IS ${POLICY_PAP_IP}
105 echo MARIADB IP IS ${MARIADB_IP}
106 echo DMAAP_IP IS ${DMAAP_IP}
107
108 ROBOT_VARIABLES="-v POLICY_PDPX_IP:${POLICY_PDPX_IP} -v POLICY_API_IP:${POLICY_API_IP} -v POLICY_PAP_IP:${POLICY_PAP_IP}"