diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 87a9a05..09810a3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -76,9 +76,23 @@ jobs: run: pnpm --filter @groombook/e2e exec playwright install --with-deps chromium - name: Start Docker Compose stack - run: docker compose up -d --wait + run: docker compose up -d timeout-minutes: 5 + - name: Wait for services to be ready + run: | + echo "Waiting for services to become ready..." + for i in $(seq 1 30); do + if curl -sf http://localhost:8080 > /dev/null 2>&1 && curl -sf http://localhost:3000/health > /dev/null 2>&1; then + echo "Services ready after ${i} attempts" + exit 0 + fi + echo "Attempt $i/30: services not ready yet, waiting 10s..." + sleep 10 + done + echo "Warning: services may not be fully ready after 30 attempts (5m)" + timeout-minutes: 6 + - name: Run E2E tests run: pnpm --filter @groombook/e2e test env: