Add new appconfig for spring-boot sparky
[aai/test-config.git] / deploy_vm1.sh
index 705674b..a6c1be0 100755 (executable)
@@ -13,6 +13,9 @@ export SEARCH_LOGS="/opt/aai/logroot/AAI-SEARCH";
 export DATA_ROUTER_LOGS="/opt/aai/logroot/AAI-DATA-ROUTER";
 export MODEL_LOADER_LOGS="/opt/aai/logroot/AAI-MODEL-LOADER";
 export UI_LOGS="/opt/aai/logroot/AAI-UI";
+export CHAMP_LOGS="/opt/aai/logroot/AAI-CHAMP-SERVICE";
+export CRUD_LOGS="/opt/aai/logroot/AAI-CRUD-SERVICE";
+export BABEL_LOGS="/opt/aai/logroot/AAI-BABEL";
 
 if [ ! -d "$RESOURCES_LOGS" ];
 then
@@ -50,9 +53,28 @@ then
     mkdir -p $UI_LOGS;
 fi;
 
+if [ ! -d "$CHAMP_LOGS" ];
+then
+    echo "Warning: Unable to find the volume directory $CHAMP_LOGS so creating it as regular directory";
+    mkdir -p $CHAMP_LOGS;
+fi;
+
+if [ ! -d "$CRUD_LOGS" ];
+then
+    echo "Warning: Unable to find the volume directory $CRUD_LOGS so creating it as regular directory";
+    mkdir -p $CRUD_LOGS;
+fi;
+
+if [ ! -d "$BABEL_LOGS" ];
+then
+    echo "Warning: Unable to find the volume directory $BABEL_LOGS so creating it as regular directory";
+    mkdir -p $BABEL_LOGS;
+fi;
+
 export MTU=$(/sbin/ifconfig | grep MTU | sed 's/.*MTU://' | sed 's/ .*//' | sort -n | head -1);
 export DOCKER_REGISTRY="${DOCKER_REGISTRY:-localhost:5000}";
 export AAI_HAPROXY_IMAGE="${AAI_HAPROXY_IMAGE:-aaionap/haproxy}";
+export AAI_HAPROXY_VERSION="${AAI_HAPROXY_VERSION:-1.2.0}";
 
 NEXUS_USERNAME=$(cat /opt/config/nexus_username.txt)
 NEXUS_PASSWD=$(cat /opt/config/nexus_password.txt)
@@ -68,7 +90,7 @@ function wait_for_container() {
     CONTAINER_NAME="$1";
     START_TEXT="$2";
 
-    TIMEOUT=160
+    TIMEOUT=600
 
     # wait for the real startup
     AMOUNT_STARTUP=$(docker logs ${CONTAINER_NAME} 2>&1 | grep "$START_TEXT" | wc -l)
@@ -81,80 +103,93 @@ function wait_for_container() {
             echo "ERROR: $CONTAINER_NAME deployment failed."
             exit 1
         fi
-        let TIMEOUT-=1
-        sleep 1
+        let TIMEOUT-=5
+        sleep 5
     done
 }
 
-if [ ! -d "/opt/message-router" ]; then
-    (cd /opt && \
-        git clone http://gerrit.onap.org/r/dcae/demo/startup/message-router && \
-        cd message-router && \
-        ./deploy.sh);
-fi
+function check_if_user_exists(){
 
-docker pull ${DOCKER_REGISTRY}/openecomp/aai-resources:${DOCKER_IMAGE_VERSION};
-docker tag $DOCKER_REGISTRY/openecomp/aai-resources:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/aai-resources:latest;
+        local user_id=$1;
 
-docker pull ${DOCKER_REGISTRY}/openecomp/aai-traversal:${DOCKER_IMAGE_VERSION};
-docker tag $DOCKER_REGISTRY/openecomp/aai-traversal:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/aai-traversal:latest;
+        if [ -z "$user_id" ]; then
+                echo "Needs to provide at least one argument for check_if_user_exists func";
+                exit 1;
+        fi;
 
-docker pull ${DOCKER_REGISTRY}/openecomp/search-data-service:${DOCKER_IMAGE_VERSION};
-docker tag $DOCKER_REGISTRY/openecomp/search-data-service:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/search-data-service:latest;
+        id -u ${user_id} > /dev/null 2>&1 && {
+                echo "1";
+        } || {
+                echo "0";
+        }
+}
 
-docker pull ${DOCKER_REGISTRY}/openecomp/datarouter-service:${DOCKER_IMAGE_VERSION};
-docker tag $DOCKER_REGISTRY/openecomp/datarouter-service:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/datarouter-service:latest;
+docker pull ${DOCKER_REGISTRY}/onap/aai-resources:${DOCKER_IMAGE_VERSION};
+docker tag $DOCKER_REGISTRY/onap/aai-resources:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/onap/aai-resources:latest;
 
-docker pull ${DOCKER_REGISTRY}/openecomp/model-loader:${DOCKER_IMAGE_VERSION};
-docker tag $DOCKER_REGISTRY/openecomp/model-loader:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/model-loader:latest;
+docker pull ${DOCKER_REGISTRY}/onap/aai-traversal:${DOCKER_IMAGE_VERSION};
+docker tag $DOCKER_REGISTRY/onap/aai-traversal:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/onap/aai-traversal:latest;
 
-docker pull ${DOCKER_REGISTRY}/openecomp/sparky-be:${DOCKER_IMAGE_VERSION};
-docker tag $DOCKER_REGISTRY/openecomp/sparky-be:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/sparky:latest;
+docker pull ${DOCKER_REGISTRY}/onap/search-data-service:${DOCKER_IMAGE_VERSION};
+docker tag $DOCKER_REGISTRY/onap/search-data-service:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/onap/search-data-service:latest;
+
+docker pull ${DOCKER_REGISTRY}/onap/data-router:${DOCKER_IMAGE_VERSION};
+docker tag $DOCKER_REGISTRY/onap/data-router:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/onap/data-router:latest;
+
+docker pull ${DOCKER_REGISTRY}/onap/model-loader:${DOCKER_IMAGE_VERSION};
+docker tag $DOCKER_REGISTRY/onap/model-loader:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/onap/model-loader:latest;
+
+docker pull ${DOCKER_REGISTRY}/onap/sparky-be:${DOCKER_IMAGE_VERSION};
+docker tag $DOCKER_REGISTRY/onap/sparky-be:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/onap/sparky-be:latest;
+
+docker pull ${DOCKER_REGISTRY}/onap/champ:${DOCKER_IMAGE_VERSION};
+docker tag $DOCKER_REGISTRY/onap/champ:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/onap/champ:latest;
+
+docker pull ${DOCKER_REGISTRY}/onap/gizmo:${DOCKER_IMAGE_VERSION};
+docker tag $DOCKER_REGISTRY/onap/gizmo:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/onap/gizmo:latest;
+
+docker pull ${DOCKER_REGISTRY}/onap/babel:${DOCKER_IMAGE_VERSION};
+docker tag $DOCKER_REGISTRY/onap/babel:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/onap/babel:latest;
 
 # cleanup
 $DOCKER_COMPOSE_CMD stop
 $DOCKER_COMPOSE_CMD rm -f -v
 
-USER_ID=$(docker run -it --rm --entrypoint=id $DOCKER_REGISTRY/openecomp/aai-resources -u | sed 's/[^0-9]//g')
-GROUP_ID=$(docker run -it --rm --entrypoint=id $DOCKER_REGISTRY/openecomp/aai-resources -g | sed 's/[^0-9]//g')
 
-chown -R $USER_ID:$GROUP_ID $RESOURCES_LOGS || {
+USER_EXISTS=$(check_if_user_exists aaiadmin);
 
-    echo "Unable to change ownership of $RESOURCE_LOGS to $USER_ID:$GROUP_ID" >> /var/tmp/deploy_vm1.log;
-    echo "Trying with sudo now" >> /var/tmp/deploy_vm1.log;
+if [ "${USER_EXISTS}" -eq 0 ]; then
+        export USER_ID=9000;
+        export GROUP_ID=9000;
+else
+        export USER_ID=$(id -u aaiadmin);
+        export GROUP_ID=$(id -g aaiadmin);
+fi;
 
-    chown -R 999:999 $RESOURCES_LOGS;
+chown -R $USER_ID:$USER_ID $RESOURCE_LOGS $TRAVERSAL_LOGS;
 
-    if [ $? -ne 0 ]; then
-        echo "Unable to change ownership of $RESOURCE_LOGS to 999:999 as well" >> /var/tmp/deploy_vm1.log;
-        sudo chown -R 999:999 $RESOURCE_LOGS;
-    fi;
+$DOCKER_COMPOSE_CMD run --rm aai-resources.api.simpledemo.onap.org createDBSchema.sh
 
-};
+RESOURCES_CONTAINER_NAME=$($DOCKER_COMPOSE_CMD up -d aai-resources.api.simpledemo.onap.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1);
+wait_for_container $RESOURCES_CONTAINER_NAME 'Resources Microservice Started';
 
-chown -R $USER_ID:$GROUP_ID $TRAVERSAL_LOGS || {
+# Deploy haproxy and traversal at the same time for traversal to make updateQuery against resources using haproxy
+$DOCKER_COMPOSE_CMD up -d aai-traversal.api.simpledemo.onap.org aai.api.simpledemo.onap.org
 
-    echo "Unable to change ownership of $TRAVERSAL_LOGS to $USER_ID:$GROUP_ID" >> /var/tmp/deploy_vm1.log;
-    echo "Trying with sudo now" >> /var/tmp/deploy_vm1.log;
+sleep 3;
 
-    chown -R 999:999 $RESOURCES_LOGS;
+$DOCKER_COMPOSE_CMD run --rm aai-traversal.api.simpledemo.onap.org install/updateQueryData.sh
 
-    if [ $? -ne 0 ]; then
-        echo "Unable to change ownership of $TRAVERSAL_LOGS to 999:999 as well" >> /var/tmp/deploy_vm1.log;
-        sudo chown -R 999:999 $TRAVERSAL_LOGS;
-    fi;
+$DOCKER_COMPOSE_CMD up -d sparky-be
 
-};
+$DOCKER_COMPOSE_CMD up -d model-loader datarouter aai.searchservice.simpledemo.openecomp.org
 
-RESOURCES_CONTAINER_NAME=$($DOCKER_COMPOSE_CMD up -d aai-resources.api.simpledemo.openecomp.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1);
-wait_for_container $RESOURCES_CONTAINER_NAME '0.0.0.0:8447';
+$DOCKER_COMPOSE_CMD up -d champ-service
 
-GRAPH_CONTAINER_NAME=$($DOCKER_COMPOSE_CMD up -d aai-traversal.api.simpledemo.openecomp.org 2>&1 | grep 'Creating' | awk '{ print $2; }' | head -1);
-wait_for_container $GRAPH_CONTAINER_NAME '0.0.0.0:8446';
+$DOCKER_COMPOSE_CMD up -d crud-service
 
-# deploy
-$DOCKER_COMPOSE_CMD up -d aai.api.simpledemo.openecomp.org
+$DOCKER_COMPOSE_CMD up -d babel
 
-docker exec -it $GRAPH_CONTAINER_NAME "/opt/app/aai-traversal/scripts/install/updateQueryData.sh";
+echo "A&AI Microservices are successfully started";
 
-$DOCKER_COMPOSE_CMD up -d model-loader datarouter aai.searchservice.simpledemo.openecomp.org
+crontab < /opt/test-config/aaicrontab