diff options
Diffstat (limited to 'activiti-extension/src/main/docker/bin/entrypoint.sh')
-rw-r--r-- | activiti-extension/src/main/docker/bin/entrypoint.sh | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/activiti-extension/src/main/docker/bin/entrypoint.sh b/activiti-extension/src/main/docker/bin/entrypoint.sh index e6f6c96..7c5af09 100644 --- a/activiti-extension/src/main/docker/bin/entrypoint.sh +++ b/activiti-extension/src/main/docker/bin/entrypoint.sh @@ -3,13 +3,43 @@ # $1, $2, $3 etc are passed arguments # $1 is our command CMD=$1 + +if [ -z "$SERVICE_IP" ]; then + export SERVICE_IP=`hostname -i` +fi +echo "SERVICE_IP=$SERVICE_IP" + +if [ -z "$SERVICE_PORT" ]; then + export SERVICE_PORT=8080 +fi +echo "SERVICE_PORT=$SERVICE_PORT" + +if [ -z "$OPENPALETTE_MSB_IP" ]; then + echo "Missing required variable OPENPALETTE_MSB_IP: Microservices Service Bus address <ip>:<port>" + exit 1 +fi +if [ -z "$OPENPALETTE_MSB_PORT" ]; then + echo "Missing required variable OPENPALETTE_MSB_PORT: Microservices Service Bus address <ip>:<port>" + exit 1 +fi +echo "MSB_ADDR=${OPENPALETTE_MSB_IP}:${OPENPALETTE_MSB_PORT}" + +# Wait for MSB initialization +echo "Wait for MSB initialization" +for i in {1..5}; do + curl -sS -m 1 ${OPENPALETTE_MSB_IP}:${OPENPALETTE_MSB_PORT} > /dev/null && break + sleep $i +done + +curl -X POST --data '{"serviceName": "activiti-rest","version": "v1","url": "/activiti-rest/","path": "/activiti-rest/","protocol": "REST","visualRange": "1","nodes": [{"ip": "${SERVICE_IP}","port": "${SERVICE_PORT}","ttl": 0}]}' http://${OPENPALETTE_MSB_IP}:${OPENPALETTE_MSB_PORT}/api/microservices/v1/services -H "Accept: Application/json" -H "Content-Type:application/json" + case "$CMD" in "dev" ) ;; "start" ) # we can modify files here, using ENV variables passed in # "docker create" command. It can't be done during build process. - exec ./bin/startup.sh + exec ./catalina.sh run ;; * ) # Run custom command. Thanks to this line we can still use |