fase(18): cli and cicd integration
This commit is contained in:
33
Dockerfile.ci
Normal file
33
Dockerfile.ci
Normal file
@@ -0,0 +1,33 @@
|
||||
# Dockerfile.ci — ABE CI image with Playwright/Chromium
|
||||
# Based on the official Playwright image which includes all browser dependencies.
|
||||
# Usage:
|
||||
# docker build -f Dockerfile.ci -t abe-ci .
|
||||
# docker run --rm -e TARGET_URL=http://host.docker.internal:3000 abe-ci \
|
||||
# npx ts-node src/cli/abe.ts explore --url $TARGET_URL --output junit
|
||||
|
||||
FROM mcr.microsoft.com/playwright:v1.40.0-jammy
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
# Install Node.js dependencies (production + dev for ts-node)
|
||||
COPY package*.json ./
|
||||
RUN npm ci
|
||||
|
||||
# Copy TypeScript source
|
||||
COPY tsconfig.json ./
|
||||
COPY src/ ./src/
|
||||
|
||||
# Build TypeScript
|
||||
RUN npm run build
|
||||
|
||||
# Default reports directory
|
||||
RUN mkdir -p /reports
|
||||
|
||||
ENV NODE_ENV=production
|
||||
ENV PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1
|
||||
|
||||
# Entrypoint: run ABE CLI
|
||||
# Override CMD to pass custom flags, e.g.:
|
||||
# docker run abe-ci node dist/cli/abe.js explore --url http://example.com
|
||||
ENTRYPOINT ["node", "dist/cli/abe.js"]
|
||||
CMD ["--help"]
|
||||
Reference in New Issue
Block a user