CSIT version variance handling
[integration/csit.git] / plans / aaf / aafapi / setup.sh
index dd6cb29..d92d18b 100644 (file)
 # See the License for the specific language governing permissions and
 # limitations under the License.
 # ============LICENSE_END============================================
-# ===================================================================
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
 #
+
+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
-mkdir -p $WORKSPACE/archives/aafcsit
-cd $WORKSPACE/archives/aafcsit
-#unset http_proxy https_proxy
-git clone --depth 1 http://gerrit.onap.org/r/aaf/authz -b master
-git pull
-cd $WORKSPACE/archives/aafcsit/authz/auth/auth-service/src/main/resources/docker-compose
-pwd
-chmod -R 777 $WORKSPACE/archives/aafcsit/authz/auth/auth-service/src/main/resources/docker-compose
-
-
-# start aaf containers with docker compose and configuration from docker-compose.yml
-docker-compose up -d
-export aaf_service=$(get_docker_compose_service aaf_container)
-export cassandra_service=$(get_docker_compose_service cassandra_container)
-
-# Wait for initialization of Docker container for AAF & Cassandra
-for i in {1..12}; do
-
-       if [ $(docker inspect --format '{{ .State.Running }}' $aaf_service) ] && \
-               [ $(docker inspect --format '{{ .State.Running }}' $cassandra_service) ]
-       then
-               echo "AAF Service Running"
-               break
-       else
-               echo sleep $i
-               sleep $i
-       fi
-done
+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
+echo "Current Dir: ${PWD}"
 
-AAF_IP=$(docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $aaf_service)
-CASSANDRA_IP=$(docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $cassandra_service)
+# Locate to Docker dir
+cd auth/docker
+cp d.props.csit d.props
 
-bypass_ip_adress $AAF_IP
-bypass_ip_adress $CASSANDRA_IP
+echo "Current Dir: ${PWD}"
+source d.props
 
-echo AAF_IP=${AAF_IP}
-echo CASSANDRA_IP=${CASSANDRA_IP}
+# Fill in anything missing
+$SED "s/^LATITUDE=.*/LATITUDE=${LATITUDE:=38.0}/" d.props
+$SED "s/^LONGITUDE=.*/LONGITUDE=${LONGITUDE:=-72.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
+
+if [ -z "$SKIP_PULL" ]; then
+  # 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
+fi
+# Cassandra Install/Start
+cd ../auth-cass/docker
+echo Cassandra Install
+bash ./dinstall.sh
+cd -
 
-# Wait for initialization of docker services
-for i in {1..12}; do
-    curl -sS -m 1 ${AAF_IP}:8101 && break
-    echo sleep $i
-    sleep $i
+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
 
-#Pass any variables required by Robot test suites in ROBOT_VARIABLES
-ROBOT_VARIABLES="-v AAF_IP:${AAF_IP}"
+bash ./aaf.sh wait aaf-service
+
+AAF_IP=$(docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' aaf-service)
+echo AAF_IP=${AAF_IP}
+
+openssl s_client -connect $AAF_IP:8100
+
+export ROBOT_VARIABLES="-v AAF_IP:${AAF_IP}"