platform-codebase/features/seo/e2e/Dockerfile.e2e-admin

41 lines
1.2 KiB
Text
Executable file

# SEO Admin E2E Test Runner Dockerfile
#
# Runs Playwright tests against the admin frontend and backend services.
#
# Build from the seo directory:
# docker build -f e2e/Dockerfile.e2e-admin -t seo-admin-e2e-runner .
FROM mcr.microsoft.com/playwright:v1.57.0-noble
# Set working directory
WORKDIR /app
# Install pnpm
RUN corepack enable && corepack prepare pnpm@8.15.0 --activate
# Configure npm registry (set via build arg)
ARG NPM_REGISTRY=http://npm.nasty.sh/
RUN npm config set registry ${NPM_REGISTRY} && \
pnpm config set registry ${NPM_REGISTRY}
# Copy package files for frontend-admin (from context: codebase/features/seo/)
COPY frontend-admin/package.json ./
COPY frontend-admin/pnpm-lock.yaml* ./
# Install dependencies (including Playwright)
RUN pnpm install --frozen-lockfile || pnpm install
# Copy test files and configurations
COPY frontend-admin/e2e ./e2e
COPY frontend-admin/playwright.config.ts ./
COPY frontend-admin/playwright.docker.config.ts ./
# Set environment
ENV CI=true
ENV NODE_ENV=test
# Create test results directory
RUN mkdir -p test-results playwright-report
# Default command (override in docker-compose)
CMD ["pnpm", "exec", "playwright", "test", "--config=playwright.docker.config.ts"]