diff --git a/.gitea/workflows/build-runner.yml b/.gitea/workflows/build-runner.yml index edb3924..aaa2577 100644 --- a/.gitea/workflows/build-runner.yml +++ b/.gitea/workflows/build-runner.yml @@ -39,9 +39,7 @@ jobs: DOCKER_BUILDKIT: "0" run: | IMAGE_TAG="gitea.eibl.tech/me0nline/logar-runner:latest" - echo "Pulling base codechecker-runner image..." - docker pull gitea.eibl.tech/me0nline/codechecker-runner:latest || true - echo "Building ${IMAGE_TAG} on top of codechecker-runner..." + echo "Building ${IMAGE_TAG}..." docker build \ -t "${IMAGE_TAG}" \ -f runner/Dockerfile \ diff --git a/runner/Dockerfile b/runner/Dockerfile index 5309b67..502a58c 100644 --- a/runner/Dockerfile +++ b/runner/Dockerfile @@ -1,24 +1,43 @@ -FROM gitea.eibl.tech/me0nline/codechecker-runner:latest +FROM ubuntu:22.04 LABEL maintainer="me0nline " -LABEL description="LOGAR CI/CD & Binary Release Cross-Compilation Runner (based on codechecker-runner)" +LABEL description="LOGAR Standalone CI/CD & Binary Release Runner" -USER root ENV DEBIAN_FRONTEND=noninteractive \ - PYTHONUNBUFFERED=1 + PYTHONUNBUFFERED=1 \ + LANG=C.UTF-8 \ + LC_ALL=C.UTF-8 -# Install NSIS compiler and any missing Python dev packages onto the existing runner image +# Install system utilities, Node.js (for Act / Actions), build tools, NSIS, and Python RUN apt-get update && apt-get install -y --no-install-recommends \ + ca-certificates \ + curl \ + wget \ + git \ + tar \ + gzip \ + zip \ + unzip \ + build-essential \ + gcc \ + make \ + nodejs \ + npm \ nsis \ nsis-common \ nsis-pluginapi \ + python3 \ python3-dev \ libpython3-dev \ + python3-pip \ + python3-venv \ + libffi-dev \ + libssl-dev \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* -# Install PyInstaller and LOGAR compilation tooling -RUN pip3 install --no-cache-dir --break-system-packages \ +# Install PyInstaller and LOGAR packaging requirements +RUN pip3 install --no-cache-dir \ pyinstaller \ distlib \ cryptography \ @@ -28,4 +47,8 @@ RUN pip3 install --no-cache-dir --break-system-packages \ fastapi \ uvicorn \ pydantic \ - requests 2>/dev/null || pip install --no-cache-dir pyinstaller distlib cryptography pefile cffi pgpy fastapi uvicorn pydantic requests + requests + +WORKDIR /workspace + +CMD ["/bin/bash"]