FROM mcr.microsoft.com/playwright:v1.50.0-jammy WORKDIR /app # Install pnpm at workspace version RUN corepack enable && corepack prepare pnpm@9.0.0 --activate # Copy workspace root manifests so pnpm can resolve the lockfile COPY package.json pnpm-lock.yaml pnpm-workspace.yaml .npmrc* ./ # Copy all package.json files to let pnpm resolve workspace deps COPY @packages/companion-client/package.json ./@packages/companion-client/ COPY @applications/api/package.json ./@applications/api/ COPY @applications/web/package.json ./@applications/web/ COPY @tooling/e2e/package.json ./@tooling/e2e/ # Install all deps via workspace (needed for playwright and @lilith/playwright-e2e-docker) RUN pnpm install --frozen-lockfile --filter @companion/e2e... # Copy e2e test files COPY @tooling/e2e/playwright.config.ts ./@tooling/e2e/playwright.config.ts COPY @tooling/e2e/e2e ./@tooling/e2e/e2e COPY @tooling/e2e/tsconfig.json ./@tooling/e2e/tsconfig.json ENV CI=true WORKDIR /app/@tooling/e2e CMD ["npx", "playwright", "test", "--reporter=list"]