diff --git a/.gitea/workflows/deploy.yaml b/.gitea/workflows/deploy.yaml index e0c771e..fcc5baa 100644 --- a/.gitea/workflows/deploy.yaml +++ b/.gitea/workflows/deploy.yaml @@ -37,14 +37,14 @@ jobs: - name: Wait for app to be healthy run: | - echo "Waiting up to 180s for memento-web..." + echo "Waiting up to 180s for http://192.168.1.190:3000 ..." for i in $(seq 1 36); do - STATUS=$(ssh root@192.168.1.190 "docker inspect --format='{{.State.Health.Status}}' memento-web 2>/dev/null || echo unknown") - if [ "$STATUS" = "healthy" ]; then - echo "OK - healthy after $((i * 5))s" + CODE=$(curl -s -o /dev/null -w "%{http_code}" --max-time 5 http://192.168.1.190:3000/ || echo "000") + if [ "$CODE" != "000" ] && [ "$CODE" -lt 500 ]; then + echo "OK - app responded (HTTP $CODE) after $((i * 5))s" exit 0 fi - echo " [$((i * 5))s] $STATUS" + echo " [$((i * 5))s] HTTP $CODE" sleep 5 done echo "Timeout! Derniers logs :" diff --git a/docker-compose.yml b/docker-compose.yml index 7de9c54..bfca60e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -46,7 +46,7 @@ services: condition: service_healthy restart: unless-stopped healthcheck: - test: ["CMD-SHELL", "wget -q --spider http://localhost:3000/ || exit 1"] + test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000/',r=>process.exit(r.statusCode<500?0:1)).on('error',()=>process.exit(1))"] interval: 15s timeout: 10s retries: 5