summaryrefslogtreecommitdiffstats
path: root/deploy.sh
diff options
context:
space:
mode:
Diffstat (limited to 'deploy.sh')
-rwxr-xr-xdeploy.sh55
1 files changed, 55 insertions, 0 deletions
diff --git a/deploy.sh b/deploy.sh
new file mode 100755
index 0000000..4dc80c8
--- /dev/null
+++ b/deploy.sh
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+if [ -f "/opt/docker/docker-compose" ];
+then
+ DOCKER_COMPOSE_CMD="/opt/docker/docker-compose"
+else
+ DOCKER_COMPOSE_CMD="docker-compose"
+fi
+
+export DOCKER_REGISTRY="${DOCKER_REGISTRY:-localhost:5000}";
+export HBASE_IMAGE="${HBASE_IMAGE:-wc9368/aai-hbase-1.2.3}";
+export GREMLIN_SERVER_IMAGE="${GREMLIN_SERVER_IMAGE:-gremlin-server}";
+export AAI_HAPROXY_IMAGE="${AAI_HAPROXY_IMAGE:-aai-haproxy}";
+
+function wait_for_container() {
+
+ CONTAINER_NAME="$1";
+ START_TEXT="$2";
+
+ TIMEOUT=120
+
+ # wait for the real startup
+ AMOUNT_STARTUP=$(docker logs ${CONTAINER_NAME} 2>&1 | grep "$START_TEXT" | wc -l)
+ while [[ ${AMOUNT_STARTUP} -ne 1 ]];
+ do
+ echo "Waiting for '$CONTAINER_NAME' deployment to finish ..."
+ AMOUNT_STARTUP=$(docker logs ${CONTAINER_NAME} 2>&1 | grep "$START_TEXT" | wc -l)
+ if [ "$TIMEOUT" = "0" ];
+ then
+ echo "ERROR: $CONTAINER_NAME deployment failed."
+ exit 1
+ fi
+ let TIMEOUT-=1
+ sleep 1
+ done
+}
+
+# cleanup
+$DOCKER_COMPOSE_CMD stop
+$DOCKER_COMPOSE_CMD rm -f -v
+
+# deploy
+$DOCKER_COMPOSE_CMD up -d aai_haproxy
+
+HBASE_CONTAINER_NAME=$($DOCKER_COMPOSE_CMD up -d hbase 2>&1 | awk '{ print $2; }');
+wait_for_container $HBASE_CONTAINER_NAME '^starting regionserver';
+
+GREMLIN_CONTAINER_NAME=$($DOCKER_COMPOSE_CMD up -d gremlin 2>&1 | awk '{ print $2; }');
+wait_for_container $GREMLIN_CONTAINER_NAME 'Channel started at port 8182';
+
+RESOURCES_CONTAINER_NAME=$($DOCKER_COMPOSE_CMD up -d aai-resources 2>&1 | awk '{ print $2; }');
+wait_for_container $RESOURCES_CONTAINER_NAME '0.0.0.0:8447';
+
+$DOCKER_COMPOSE_CMD up -d aai-graph-query
+