summaryrefslogtreecommitdiffstats
path: root/plans/aaf/aafapi/setup.sh
blob: 6c88ceb7a9a9f7f1e50f27b3b828815ec4303f2d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
#!/bin/bash
#
# ============LICENSE_START=======================================================
# ONAP AAF
# ================================================================================
# Copyright (C) 2017 AT&T Intellectual Property. All rights
#                             reserved.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ============LICENSE_END============================================
#

echo "AAF setup.sh"
# Starting Directory
CURRENT_DIR=$(pwd)

if [ "$(uname)" = "Darwin" ]; then
  SED="sed -i .bak"
else
  SED="sed -i"
fi

# Place the scripts in run order:
source ${SCRIPTS}/common_functions.sh

# Clone AAF Authz repo
CODE_DIR="$WORKSPACE/archives/opt"
mkdir -p $CODE_DIR
cd $CODE_DIR

# Get or refresh AAF Code set
if [ -e authz ]; then
  cd authz
  git pull
else
  git clone --depth 1 http://gerrit.onap.org/r/aaf/authz -b master
  chmod -R 777 authz
  cd authz
fi


# Locate to Docker dir
cd auth/docker
if [ ! -e d.props ]; then
  cp d.props.init d.props
fi
source d.props

# Fill in anything missing
$SED "s/^LATITUDE=.*/LATITUDE=${LATITUDE:=38.0}/" d.props
$SED "s/^LONGITUDE=.*/LONGITUDE=${LONGITUDE:=-72.0}/" d.props
# For Jenkins, gotta use 10001, not 10003
DOCKER_REPOSITORY=nexus3.onap.org:10001
$SED "s/DOCKER_REPOSITORY=.*/DOCKER_REPOSITORY=$DOCKER_REPOSITORY/"  d.props

$SED "s/HOSTNAME=.*/HOSTNAME=aaf.api.simpledemo.onap.org/"  d.props
DOCKER_NAME=$(docker info | grep Name | awk '{print $2}' )
echo "Docker Name is $DOCKER_NAME"

if [ "$DOCKER_NAME" = "minikube" ]; then
  echo "Minikube IP"
  HOST_IP=$(minikube ip)
else 
  echo "Trying to get IP from Docker $DOCKER_NAME with 'ip route' method"
  # ip route get 8.8.8.8
  HOST_IP=$(ip route get 8.8.8.8 | awk '{print $7}')
  if [ -z "$HOST_IP" ]; then
     echo "Critical HOST_IP could not be obtained by 2 different methods.  Exiting..."
     exit
  fi
  echo 
fi
$SED "s/HOST_IP=.*/HOST_IP=$HOST_IP/" d.props

cat d.props

# Pull latest Dockers
AAF_DOCKER_VERSION=${VERSION}
NEXUS_USERNAME=anonymous
NEXUS_PASSWD=anonymous
echo "$NEXUS_PASSWD" | docker login -u $NEXUS_USERNAME --password-stdin $DOCKER_REPOSITORY

docker pull $DOCKER_REPOSITORY/onap/aaf/aaf_cass:$AAF_DOCKER_VERSION
docker pull $DOCKER_REPOSITORY/onap/aaf/aaf_config:$AAF_DOCKER_VERSION
docker pull $DOCKER_REPOSITORY/onap/aaf/aaf_cm:$AAF_DOCKER_VERSION
docker pull $DOCKER_REPOSITORY/onap/aaf/aaf_fs:$AAF_DOCKER_VERSION
docker pull $DOCKER_REPOSITORY/onap/aaf/aaf_gui:$AAF_DOCKER_VERSION
docker pull $DOCKER_REPOSITORY/onap/aaf/aaf_hello:$AAF_DOCKER_VERSION
docker pull $DOCKER_REPOSITORY/onap/aaf/aaf_locate:$AAF_DOCKER_VERSION
docker pull $DOCKER_REPOSITORY/onap/aaf/aaf_oauth:$AAF_DOCKER_VERSION
docker pull $DOCKER_REPOSITORY/onap/aaf/aaf_service:$AAF_DOCKER_VERSION

# Cassandra Install/Start
cd ../auth-cass/docker
echo Cassandra Install
bash ./dinstall.sh
cd -

source d.props
cat d.props

# AAF Run
bash ./drun.sh

docker images

docker ps -a

for C in aaf_service aaf_locate aaf_oauth aaf_cm aaf_gui aaf_hello aaf_fs; do
  docker logs $C
done

bash ./aaf.sh wait aaf_service

AAF_IP=$(docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' aaf_service)
echo AAF_IP=${AAF_IP}

#Pass any variables required by Robot test suites in ROBOT_VARIABLES
ROBOT_VARIABLES="-v AAF_IP:${AAF_IP}"