ci(runner): base Dockerfile on existing codechecker-runner image for fast lightweight layer builds
This commit is contained in:
+7
-43
@@ -1,54 +1,23 @@
|
|||||||
FROM debian:bookworm-slim
|
FROM gitea.eibl.tech/me0nline/codechecker-runner:latest
|
||||||
|
|
||||||
LABEL maintainer="me0nline <me0nline@eibl.tech>"
|
LABEL maintainer="me0nline <me0nline@eibl.tech>"
|
||||||
LABEL description="LOGAR CI/CD & Binary Release Cross-Compilation Runner"
|
LABEL description="LOGAR CI/CD & Binary Release Cross-Compilation Runner (based on codechecker-runner)"
|
||||||
|
|
||||||
|
USER root
|
||||||
ENV DEBIAN_FRONTEND=noninteractive \
|
ENV DEBIAN_FRONTEND=noninteractive \
|
||||||
PYTHONUNBUFFERED=1 \
|
PYTHONUNBUFFERED=1
|
||||||
LANG=C.UTF-8 \
|
|
||||||
LC_ALL=C.UTF-8
|
|
||||||
|
|
||||||
# Install core build dependencies, NSIS compiler, and Python development packages
|
# Install NSIS compiler and any missing Python dev packages onto the existing runner image
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
build-essential \
|
|
||||||
gcc \
|
|
||||||
make \
|
|
||||||
binutils \
|
|
||||||
curl \
|
|
||||||
wget \
|
|
||||||
git \
|
|
||||||
tar \
|
|
||||||
gzip \
|
|
||||||
zip \
|
|
||||||
unzip \
|
|
||||||
ca-certificates \
|
|
||||||
nsis \
|
nsis \
|
||||||
nsis-common \
|
nsis-common \
|
||||||
nsis-pluginapi \
|
nsis-pluginapi \
|
||||||
nodejs \
|
|
||||||
npm \
|
|
||||||
python3 \
|
|
||||||
python3-dev \
|
python3-dev \
|
||||||
libpython3-dev \
|
libpython3-dev \
|
||||||
python3-pip \
|
|
||||||
python3-venv \
|
|
||||||
python3-setuptools \
|
|
||||||
python3-wheel \
|
|
||||||
libffi-dev \
|
|
||||||
libssl-dev \
|
|
||||||
&& apt-get clean \
|
&& apt-get clean \
|
||||||
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
||||||
|
|
||||||
# Verify Node.js runtime for Act / Gitea Actions
|
# Install PyInstaller and LOGAR compilation tooling
|
||||||
RUN node --version && npm --version
|
|
||||||
|
|
||||||
# Verify NSIS makensis binary
|
|
||||||
RUN which makensis && makensis -VERSION
|
|
||||||
|
|
||||||
# Verify Python and shared libraries
|
|
||||||
RUN python3 --version && python3 -c "import sys; print('Python sys.path:', sys.path)"
|
|
||||||
|
|
||||||
# Install PyInstaller and compilation dependencies system-wide
|
|
||||||
RUN pip3 install --no-cache-dir --break-system-packages \
|
RUN pip3 install --no-cache-dir --break-system-packages \
|
||||||
pyinstaller \
|
pyinstaller \
|
||||||
distlib \
|
distlib \
|
||||||
@@ -59,9 +28,4 @@ RUN pip3 install --no-cache-dir --break-system-packages \
|
|||||||
fastapi \
|
fastapi \
|
||||||
uvicorn \
|
uvicorn \
|
||||||
pydantic \
|
pydantic \
|
||||||
requests
|
requests 2>/dev/null || pip install --no-cache-dir pyinstaller distlib cryptography pefile cffi pgpy fastapi uvicorn pydantic requests
|
||||||
|
|
||||||
# Create workspace directory
|
|
||||||
WORKDIR /workspace
|
|
||||||
|
|
||||||
CMD ["/bin/bash"]
|
|
||||||
|
|||||||
Reference in New Issue
Block a user