3 if [ -f "/opt/docker/docker-compose" ];
5 DOCKER_COMPOSE_CMD="/opt/docker/docker-compose -f docker-compose-app.yml"
7 DOCKER_COMPOSE_CMD="docker-compose -f docker-compose-app.yml"
10 export RESOURCES_LOGS="/opt/aai/logroot/AAI-RESOURCES";
11 export TRAVERSAL_LOGS="/opt/aai/logroot/AAI-TRAVERSAL";
12 export SEARCH_LOGS="/opt/aai/logroot/AAI-SEARCH";
13 export DATA_ROUTER_LOGS="/opt/aai/logroot/AAI-DATA-ROUTER";
14 export MODEL_LOADER_LOGS="/opt/aai/logroot/AAI-MODEL-LOADER";
15 export UI_LOGS="/opt/aai/logroot/AAI-UI";
17 if [ ! -d "$RESOURCES_LOGS" ];
19 echo "Warning: Unable to find the volume directory $RESOURCES_LOGS so creating it as regular directory";
20 mkdir -p $RESOURCES_LOGS;
23 if [ ! -d "$TRAVERSAL_LOGS" ];
25 echo "Warning: Unable to find the volume directory $TRAVERSAL_LOGS so creating it as regular directory";
26 mkdir -p $TRAVERSAL_LOGS;
29 if [ ! -d "$SEARCH_LOGS" ];
31 echo "Warning: Unable to find the volume directory $SEARCH_LOGS so creating it as regular directory";
32 mkdir -p $SEARCH_LOGS;
35 if [ ! -d "$DATA_ROUTER_LOGS" ];
37 echo "Warning: Unable to find the volume directory $DATA_ROUTER_LOGS so creating it as regular directory";
38 mkdir -p $DATA_ROUTER_LOGS;
41 if [ ! -d "$MODEL_LOADER_LOGS" ];
43 echo "Warning: Unable to find the volume directory $MODEL_LOADER_LOGS so creating it as regular directory";
44 mkdir -p $MODEL_LOADER_LOGS;
47 if [ ! -d "$UI_LOGS" ];
49 echo "Warning: Unable to find the volume directory $UI_LOGS so creating it as regular directory";
53 export MTU=$(/sbin/ifconfig | grep MTU | sed 's/.*MTU://' | sed 's/ .*//' | sort -n | head -1);
54 export DOCKER_REGISTRY="${DOCKER_REGISTRY:-localhost:5000}";
55 export AAI_HAPROXY_IMAGE="${AAI_HAPROXY_IMAGE:-aaionap/haproxy}";
57 NEXUS_USERNAME=$(cat /opt/config/nexus_username.txt)
58 NEXUS_PASSWD=$(cat /opt/config/nexus_password.txt)
59 NEXUS_DOCKER_REPO=$(cat /opt/config/nexus_docker_repo.txt)
60 DMAAP_TOPIC=$(cat /opt/config/dmaap_topic.txt)
61 DOCKER_IMAGE_VERSION=$(cat /opt/config/docker_version.txt)
62 DOCKER_REGISTRY=${NEXUS_DOCKER_REPO}
64 docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO
66 function wait_for_container() {
73 # wait for the real startup
74 AMOUNT_STARTUP=$(docker logs ${CONTAINER_NAME} 2>&1 | grep "$START_TEXT" | wc -l)
75 while [[ ${AMOUNT_STARTUP} -ne 1 ]];
77 echo "Waiting for '$CONTAINER_NAME' deployment to finish ..."
78 AMOUNT_STARTUP=$(docker logs ${CONTAINER_NAME} 2>&1 | grep "$START_TEXT" | wc -l)
79 if [ "$TIMEOUT" = "0" ];
81 echo "ERROR: $CONTAINER_NAME deployment failed."
89 function check_if_user_exists(){
93 if [ -z "$user_id" ]; then
94 echo "Needs to provide at least one argument for check_if_user_exists func";
98 id -u ${user_id} > /dev/null 2>&1 && {
106 if [ ! -d "/opt/message-router" ]; then
108 git clone http://gerrit.onap.org/r/dcae/demo/startup/message-router && \
109 cd message-router && \
113 docker pull ${DOCKER_REGISTRY}/openecomp/aai-resources:${DOCKER_IMAGE_VERSION};
114 docker tag $DOCKER_REGISTRY/openecomp/aai-resources:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/aai-resources:latest;
116 docker pull ${DOCKER_REGISTRY}/openecomp/aai-traversal:${DOCKER_IMAGE_VERSION};
117 docker tag $DOCKER_REGISTRY/openecomp/aai-traversal:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/aai-traversal:latest;
119 docker pull ${DOCKER_REGISTRY}/openecomp/search-data-service:${DOCKER_IMAGE_VERSION};
120 docker tag $DOCKER_REGISTRY/openecomp/search-data-service:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/search-data-service:latest;
122 docker pull ${DOCKER_REGISTRY}/openecomp/data-router:${DOCKER_IMAGE_VERSION};
123 docker tag $DOCKER_REGISTRY/openecomp/data-router:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/data-router:latest;
125 docker pull ${DOCKER_REGISTRY}/openecomp/model-loader:${DOCKER_IMAGE_VERSION};
126 docker tag $DOCKER_REGISTRY/openecomp/model-loader:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/model-loader:latest;
128 docker pull ${DOCKER_REGISTRY}/openecomp/sparky-be:${DOCKER_IMAGE_VERSION};
129 docker tag $DOCKER_REGISTRY/openecomp/sparky-be:$DOCKER_IMAGE_VERSION $DOCKER_REGISTRY/openecomp/sparky-be:latest;
132 $DOCKER_COMPOSE_CMD stop
133 $DOCKER_COMPOSE_CMD rm -f -v
136 USER_EXISTS=$(check_if_user_exists aaiadmin);
138 if [ "${USER_EXISTS}" -eq 0 ]; then
141 export USER_ID=$(id -u aaiadmin);
144 chown -R $USER_ID:$USER_ID $RESOURCE_LOGS $TRAVERSAL_LOGS;
146 $DOCKER_COMPOSE_CMD up -d sparky-be
148 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);
149 wait_for_container $RESOURCES_CONTAINER_NAME '0.0.0.0:8447';
151 GRAPH_CONTAINER_NAME=$($DOCKER_COMPOSE_CMD up -d aai-traversal.api.simpledemo.openecomp.org 2>&1 | grep 'Creating' | awk '{ print $2; }' | head -1);
152 wait_for_container $GRAPH_CONTAINER_NAME '0.0.0.0:8446';
155 $DOCKER_COMPOSE_CMD up -d aai.api.simpledemo.openecomp.org
156 echo "A&AI Microservices, resources and traversal, are up and running along with HAProxy";
158 docker exec -it $GRAPH_CONTAINER_NAME "/opt/app/aai-traversal/scripts/install/updateQueryData.sh" && {
159 echo "Successfully loaded the widget related data into db";
161 echo "Unable to load widget related data into db";
164 $DOCKER_COMPOSE_CMD up -d model-loader datarouter aai.searchservice.simpledemo.openecomp.org