From b02b6ceaebc83bfc04545dd547f6c8758a7d2658 Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Thu, 29 Aug 2024 10:21:54 +0200 Subject: [PATCH] OZG-6301: OZG-6468: Fix health checks. Fix startup dependencies. --- alfa-client/apps/alfa-e2e/docker-compose.yml | 39 +++++++++++++++++-- .../apps/alfa-e2e/start-e2e-environment.sh | 26 ++++++------- 2 files changed, 48 insertions(+), 17 deletions(-) diff --git a/alfa-client/apps/alfa-e2e/docker-compose.yml b/alfa-client/apps/alfa-e2e/docker-compose.yml index f2bb797d43..3308cfaeb2 100644 --- a/alfa-client/apps/alfa-e2e/docker-compose.yml +++ b/alfa-client/apps/alfa-e2e/docker-compose.yml @@ -28,6 +28,11 @@ services: - 27018:27017 environment: - MONGODB_EXTRA_FLAGS=--profile=2 + healthcheck: + test: echo 'db.runCommand("ping").ok' | mongosh localhost:27017/test --quiet + interval: 10s + timeout: 10s + retries: 5 vorgang-manager: image: docker.ozg-sh.de/vorgang-manager:${VORGANG_MANAGER_DOCKER_IMAGE:-snapshot-latest} @@ -105,6 +110,7 @@ services: depends_on: - vorgang-manager - user-manager + - zufi-manager elastic: image: docker.elastic.co/elasticsearch/elasticsearch:8.3.2 @@ -162,7 +168,8 @@ services: - 9092:8080 - 9000:9000 depends_on: - - mongodb + mongodb: + condition: service_healthy zufi-manager-pvog: #TODO Ändere mich auf snapshot-latest @@ -175,8 +182,10 @@ services: - OZGCLOUD_PVOG_ENDPOINTS_VERWALTUNGSOBJEKTE_PATH=/v2/verwaltungsobjekte - OZGCLOUD_PVOG_URL=http://smocker:8080 depends_on: - - mongodb - - smocker + mongodb: + condition: service_healthy + smocker-curl: + condition: service_completed_successfully zufi-manager: #TODO Ändere mich auf snapshot-latest @@ -189,10 +198,32 @@ services: ports: - 19090:9190 depends_on: - - zufi-manager-pvog + mongodb: + condition: service_healthy + zufi-manager-pvog: + condition: service_completed_successfully smocker: image: thiht/smocker ports: - 7080:8080 - 7081:8081 + healthcheck: + test: [ + 'CMD-SHELL', + "wget --spider localhost:8081/version", + ] + interval: 5s + timeout: 5s + retries: 5 + + smocker-curl: + image: alpine/curl + volumes: + - ./src/fixtures/smocker:/mocks:ro + command: > + sh -c "curl -X POST http://smocker:8081/mocks -H 'Content-Type: application/x-yaml' --data-binary @/mocks/pvog-mock.yaml && + curl -X POST http://smocker:8081/mocks -H 'Content-Type: application/x-yaml' --data-binary @/mocks/mocks.yaml" + depends_on: + smocker: + condition: service_healthy \ No newline at end of file diff --git a/alfa-client/apps/alfa-e2e/start-e2e-environment.sh b/alfa-client/apps/alfa-e2e/start-e2e-environment.sh index 35b319e02a..6577b9ea43 100755 --- a/alfa-client/apps/alfa-e2e/start-e2e-environment.sh +++ b/alfa-client/apps/alfa-e2e/start-e2e-environment.sh @@ -66,7 +66,7 @@ echo echo echo "Starting VorgangManager and Alfa Server for normal operations." -$DOCKER_COMPOSE_CMD up -d vorgang-manager alfa +$DOCKER_COMPOSE_CMD up -d vorgang-manager alfa zufi-manager zufi-manager-pvog waitForServerStarted() { ($DOCKER_COMPOSE_CMD logs | awk 'BEGIN{RS="\0"} /Started AlfaServerApplication/ && /Started VorgangManagerServerApplication/ { exit 1 }') @@ -81,19 +81,19 @@ do done echo -echo -echo "Init smocker" -while [ $(curl -sw '%{http_code}' "http://localhost:7081/version" -o /dev/null) -ne 200 ]; do - echo -n "." - sleep 1 -done +#echo +#echo "Init smocker" +#while [ $(curl -sw '%{http_code}' "http://localhost:7081/version" -o /dev/null) -ne 200 ]; do +# echo -n "." +# sleep 1 +#done -curl -X POST http://localhost:7081/mocks -H 'Content-Type: application/x-yaml' --data-binary @src/fixtures/smocker/mocks.yaml -curl -X POST http://localhost:7081/mocks -H 'Content-Type: application/x-yaml' --data-binary @src/fixtures/smocker/pvog-mock.yaml +#curl -X POST http://localhost:7081/mocks -H 'Content-Type: application/x-yaml' --data-binary @src/fixtures/smocker/mocks.yaml +#curl -X POST http://localhost:7081/mocks -H 'Content-Type: application/x-yaml' --data-binary @src/fixtures/smocker/pvog-mock.yaml -echo -echo "Start Zufi" -$DOCKER_COMPOSE_CMD up zufi-manager zufi-manager-pvog --wait +#echo +#echo "Start Zufi" +#$DOCKER_COMPOSE_CMD up zufi-manager zufi-manager-pvog --wait -echo +#echo echo "done." \ No newline at end of file -- GitLab