- Add supportedArchitectures (linux-x64-gnu) to pnpm-workspace.yaml so native bindings (rolldown, esbuild) are included in the lockfile for the container's platform - Add onlyBuiltDependencies: [playwright] to pnpm-workspace.yaml so build scripts run non-interactively in CI/Docker - Remove stale/redundant pnpm field from package.json (moved to pnpm-workspace.yaml per pnpm v10+ config location) - Split stencil-test into test:unit (native, fast) and test:browser (Docker, cross-browser) scripts - Set ENV CI=true in Dockerfile.test to avoid interactive TTY prompts during pnpm install - Remove anonymous node_modules volumes from docker-compose.test.yaml to prevent stale volume state from surviving image rebuilds - Add root-level test:unit / test:component / test scripts to orchestrate native unit tests and Dockerized cross-browser tests
24 lines
418 B
Docker
24 lines
418 B
Docker
FROM mcr.microsoft.com/playwright:v1.61.1-noble
|
|
|
|
RUN corepack enable && corepack prepare pnpm@10 --activate
|
|
|
|
ENV CI=true
|
|
|
|
WORKDIR /app
|
|
|
|
COPY . .
|
|
|
|
RUN rm -rf node_modules packages/**/node_modules
|
|
|
|
RUN rm -f pnpm-lock.yaml
|
|
|
|
ENV PNPM_CONFIG_SUPPORTED_ARCHITECTURES="current,linux-x64-gnu"
|
|
|
|
RUN pnpm install
|
|
|
|
WORKDIR /app/packages/luna-charts
|
|
|
|
RUN pnpm add -D @rolldown/binding-linux-x64-gnu
|
|
|
|
CMD ["pnpm", "test:browser"]
|