# syntax=docker/dockerfile:1.7
FROM ubuntu:24.04 AS builder

ARG TARGETARCH
ENV DEBIAN_FRONTEND=noninteractive \
    PIP_NO_CACHE_DIR=1 \
    PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1

RUN apt-get update && apt-get install -y --no-install-recommends \
      python3 python3-venv python3-pip python3-dev \
      build-essential ca-certificates && \
    rm -rf /var/lib/apt/lists/*

WORKDIR /workspace
COPY requirements.txt .

# Create venv and install deps
RUN python3 -m venv /opt/venv && \
    /opt/venv/bin/pip install --upgrade pip "setuptools>=68.0.0" "wheel>=0.40.0" && \
    /opt/venv/bin/pip install -r requirements.txt

# Install venv-pack and pack the venv (explicitly pass the prefix)
RUN /opt/venv/bin/pip install venv-pack && \
    /opt/venv/bin/python -m venv_pack -p /opt/venv -o /workspace/venv.tar.gz

RUN echo "Built for arch: ${TARGETARCH}"

# Export-only stage so you can grab the tarball without running a container
FROM scratch AS export
COPY --from=builder /workspace/venv.tar.gz /venv.tar.gz