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