#!/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}"