2424 - name : Wait for services to be healthy
2525 run : |
2626 echo "Waiting for all services to be healthy..."
27- # Wait for services with health checks to be healthy (4 services) and all services to be up
28- timeout 300 bash -c 'until [ $(docker compose ps --format "{{.Health}}" | grep -c "healthy") -ge 4 ] && [ $(docker compose ps --format "{{.Status}}" | grep -c "Up") -ge 5 ]; do sleep 5; done'
27+ # Wait for services with health checks to be healthy (7 services) and all services to be up
28+ # Increased timeout to 10 minutes for CI environment
29+ timeout 600 bash -c 'while true; do
30+ healthy_count=$(docker compose ps --format "{{.Health}}" | grep -c "healthy" || echo "0")
31+ up_count=$(docker compose ps --format "{{.Status}}" | grep -c "Up" || echo "0")
32+ echo "Progress: $healthy_count/7 healthy, $up_count services up"
33+ if [ "$healthy_count" -ge 7 ] && [ "$up_count" -ge 7 ]; then
34+ echo "All services are healthy!"
35+ break
36+ fi
37+ sleep 5
38+ done'
2939 docker compose ps
3040
3141 - name : Test dashboard endpoints
@@ -45,15 +55,12 @@ jobs:
4555 run : |
4656 echo "=== Docker Compose Services Status ==="
4757 docker compose ps
48- echo "=== Traefik Logs ==="
49- docker compose logs traefik
50- echo "=== Sticker Award Logs ==="
51- docker compose logs sticker-award
52- echo "=== User Management Logs ==="
53- docker compose logs user-management
54- echo "=== Database Logs ==="
55- docker compose logs sticker-award-db
56- docker compose logs user-management-db
58+ echo "=== All Service Logs ==="
59+ docker compose logs --tail=50
60+ echo "=== Health Check Details ==="
61+ docker compose ps --format "table {{.Name}}\t{{.Status}}\t{{.Health}}"
62+ echo "=== Resource Usage ==="
63+ docker stats --no-stream
5764
5865 - name : Cleanup
5966 if : always()
0 commit comments