[docker-compose] restart controller as a workaround for finding a healthy invoker (#34)
diff --git a/docker-compose/Makefile b/docker-compose/Makefile
index e7c04f0..7d67e68 100644
--- a/docker-compose/Makefile
+++ b/docker-compose/Makefile
@@ -45,7 +45,7 @@
./gradlew distdocker -x :core:swift3Action:distDocker -x :core:swiftAction:distDocker
.PHONY: run
-run: check-required-ports setup start-docker-compose init-couchdb init-whisk-cli
+run: check-required-ports setup start-docker-compose init-couchdb restart-controller init-whisk-cli
.PHONY: check-required-ports
check-required-ports:
@@ -66,6 +66,12 @@
.PHONY: restart
restart: stop rm start-docker-compose
+.PHONY: restart-controller
+restart-controller:
+ DOCKER_COMPOSE_HOST=$(DOCKER_HOST_IP) DOCKER_REGISTRY=$(DOCKER_REGISTRY) DOCKER_IMAGE_PREFIX=$(DOCKER_IMAGE_PREFIX) docker-compose --project-name openwhisk restart controller 2>&1 > ~/tmp/openwhisk/docker-compose.log &
+ echo "waiting until the controller recognizes a healthy invoker ... "
+ until (curl --silent http://$(DOCKER_HOST_IP):8888/invokers | grep "up"); do printf '.'; sleep 5; done
+
.PHONY: start-docker-compose
start-docker-compose:
DOCKER_COMPOSE_HOST=$(DOCKER_HOST_IP) DOCKER_REGISTRY=$(DOCKER_REGISTRY) DOCKER_IMAGE_PREFIX=$(DOCKER_IMAGE_PREFIX) docker-compose --project-name openwhisk up 2>&1 > ~/tmp/openwhisk/docker-compose.log &