import { defineConfig, devices } from '@playwright/test' const PORT = Number(process.env.E2E_PORT ?? 3100) const baseURL = process.env.E2E_BASE_URL ?? `http://127.0.0.1:${PORT}` export default defineConfig({ testDir: './e2e', fullyParallel: true, forbidOnly: !!process.env.CI, retries: process.env.CI ? 1 : 0, reporter: process.env.CI ? [['github'], ['html', { open: 'never' }]] : 'list', use: { baseURL, locale: 'de-DE', timezoneId: 'Europe/Berlin', trace: 'on-first-retry', }, projects: [ { name: 'chromium', use: { ...devices['Desktop Chrome'] } }, { name: 'mobil', use: { ...devices['Pixel 7'] } }, ], webServer: process.env.E2E_BASE_URL ? undefined : { // Derselbe Standalone-Server, den auch das Container-Image startet. command: `pnpm build && node .next/standalone/web/server.js`, url: `${baseURL}/api/health`, reuseExistingServer: !process.env.CI, timeout: 180_000, env: { PORT: String(PORT), HOSTNAME: '127.0.0.1' }, }, })