fix(ci): remove CI-based E2E Tests job — use Playwright MCP instead
CI / Build (push) Successful in 21s
CI / Lint & Typecheck (push) Successful in 23s
CI / Test (push) Successful in 25s
CI / Build & Push Docker Images (push) Successful in 34s
CI / Update Infra Image Tags (push) Failing after 1s
CI / Web E2E (Dev) (push) Has been cancelled
CI / Deploy PR to groombook-dev (push) Has been cancelled
CI / Build (push) Successful in 21s
CI / Lint & Typecheck (push) Successful in 23s
CI / Test (push) Successful in 25s
CI / Build & Push Docker Images (push) Successful in 34s
CI / Update Infra Image Tags (push) Failing after 1s
CI / Web E2E (Dev) (push) Has been cancelled
CI / Deploy PR to groombook-dev (push) Has been cancelled
E2E testing moved to Playwright MCP with Shedward Scissorhands in UAT per GRO-904. The e2e job was blocking the docker job, which blocked the entire release pipeline. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -53,61 +53,6 @@ jobs:
|
|||||||
- name: Run tests
|
- name: Run tests
|
||||||
run: pnpm test
|
run: pnpm test
|
||||||
|
|
||||||
e2e:
|
|
||||||
name: E2E Tests
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
needs: [lint-typecheck, test]
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- uses: pnpm/action-setup@v4
|
|
||||||
with:
|
|
||||||
version: '9.15.4'
|
|
||||||
|
|
||||||
- uses: actions/setup-node@v4
|
|
||||||
with:
|
|
||||||
node-version: 20
|
|
||||||
cache: pnpm
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: pnpm install --frozen-lockfile
|
|
||||||
|
|
||||||
- name: Install Playwright browsers
|
|
||||||
run: pnpm --filter @groombook/e2e exec playwright install --with-deps chromium
|
|
||||||
|
|
||||||
- name: Start Docker Compose stack
|
|
||||||
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 60); do
|
|
||||||
# Poll both the web root (proves nginx + static app are up) and the
|
|
||||||
# API /health endpoint (proves the Node server is responding).
|
|
||||||
WEB_STATUS=$(curl -sf -o /dev/null -w "%{http_code}" http://localhost:8080 2>/dev/null || echo "000")
|
|
||||||
API_STATUS=$(curl -sf -o /dev/null -w "%{http_code}" http://localhost:3000/health 2>/dev/null || echo "000")
|
|
||||||
if [ "$WEB_STATUS" = "200" ] && [ "$API_STATUS" = "200" ]; then
|
|
||||||
echo "Both services healthy after ${i} attempts (web=$WEB_STATUS, api=$API_STATUS)"
|
|
||||||
echo "Allowing 30s grace period for nginx to fully initialize..."
|
|
||||||
sleep 30
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
echo "Attempt $i/60: web=$WEB_STATUS api=$API_STATUS — waiting 10s..."
|
|
||||||
sleep 10
|
|
||||||
done
|
|
||||||
echo "Warning: services may not be fully ready after 60 attempts (10m)"
|
|
||||||
timeout-minutes: 12
|
|
||||||
|
|
||||||
- name: Run E2E tests
|
|
||||||
run: pnpm --filter @groombook/e2e test
|
|
||||||
env:
|
|
||||||
PLAYWRIGHT_BASE_URL: http://localhost:8080
|
|
||||||
|
|
||||||
- name: Stop Docker Compose stack
|
|
||||||
if: always()
|
|
||||||
run: docker compose down
|
|
||||||
|
|
||||||
build:
|
build:
|
||||||
name: Build
|
name: Build
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@@ -135,7 +80,7 @@ jobs:
|
|||||||
docker:
|
docker:
|
||||||
name: Build & Push Docker Images
|
name: Build & Push Docker Images
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: [build, e2e]
|
needs: [build]
|
||||||
outputs:
|
outputs:
|
||||||
tag: ${{ steps.version.outputs.tag }}
|
tag: ${{ steps.version.outputs.tag }}
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
Reference in New Issue
Block a user