# syntax=docker/dockerfile:1
# Simple two-stage build: install dependencies, create a placeholder build artifact, provide a runtime
FROM node:lts-bookworm AS builder
ARG BUILD_BRANCH=release
ARG BUILD_VERSION=dev
ENV DEBIAN_FRONTEND=noninteractive
# Install only essential tools for building and packaging
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
git curl ca-certificates \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
# Copy only package manifests first to leverage caching
COPY package.json package-lock.json* ./
RUN npm ci
# Copy the rest of the repo
COPY . .
# Create a simple placeholder build artifact to simulate a completed build
RUN mkdir -p dist && echo "placeholder-build-artifact" > dist/BUILD_OK.txt
# Stage 2: Runtime image
FROM node:lts-bookworm-slim AS runtime
ENV DEBIAN_FRONTEND=noninteractive
# Copy the placeholder artifacts from the builder
COPY --from=builder /workspace/dist /workspace/dist
WORKDIR /workspace
# Default command keeps the container alive and prints a friendly message
CMD ["bash", "-lc", "echo 'Zen Browser build container ready (placeholder)'; tail -f /dev/null"]