Files
CapaKraken/apps/web/playwright.ci.config.ts
Hartmut 931d1f5d5f
CI / Architecture Guardrails (push) Successful in 2m13s
CI / Assistant Split Regression (push) Successful in 3m42s
CI / Typecheck (push) Successful in 4m46s
CI / Lint (push) Successful in 5m43s
CI / Unit Tests (push) Successful in 8m1s
CI / Build (push) Successful in 6m6s
CI / E2E Tests (push) Failing after 4m12s
CI / Release Images (push) Has been skipped
CI / Fresh-Linux Docker Deploy (push) Failing after 3m26s
ci: bridge docker-deploy compose to gitea_gitea; bypass turbo for e2e
- docker-compose.ci.yml: attach app/postgres/redis to the external
  gitea_gitea network so the act_runner job container (which lives on
  gitea_gitea) can reach the compose services by name. Otherwise
  'localhost:3100' from the job container resolves to the job container
  itself, not the compose-network app — all health checks and smoke
  tests were hitting nothing.
- ci.yml: switch health/smoke URLs from localhost to http://app:3100
  and expose PLAYWRIGHT_BASE_URL so the smoke config can override.
- ci.yml: run E2E playwright directly via pnpm --filter, bypassing
  turbo which strict-filters PLAYWRIGHT_DATABASE_URL and friends.
- playwright.ci.config.ts: honour PLAYWRIGHT_BASE_URL env override.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-12 23:22:50 +02:00

26 lines
656 B
TypeScript

import { defineConfig, devices } from "@playwright/test";
export default defineConfig({
testDir: "./e2e",
testMatch: ["**/smoke.spec.ts"],
fullyParallel: false,
forbidOnly: true,
retries: 1,
workers: 1,
reporter: process.env["CI"]
? [["list"], ["html", { outputFolder: "playwright-report" }]]
: "list",
use: {
baseURL: process.env["PLAYWRIGHT_BASE_URL"] ?? "http://localhost:3100",
trace: "on-first-retry",
screenshot: "only-on-failure",
},
projects: [
{
name: "chromium",
use: { ...devices["Desktop Chrome"] },
},
],
// No webServer block — Docker Compose has already started the app
});