Runner image: use full Python installer (bundles pip + OpenSSL)

This commit is contained in:
2026-09-13 21:11:45 -04:00
parent b576ff5747
commit c9575817fe
+8 -12
View File
@@ -35,24 +35,20 @@ RUN wget -qO /usr/local/bin/act_runner \
# MSVC runtime required by PySide6's Qt DLLs (also initializes the Wine prefix). # MSVC runtime required by PySide6's Qt DLLs (also initializes the Wine prefix).
RUN xvfb-run -a winetricks --unattended vcrun2022 RUN xvfb-run -a winetricks --unattended vcrun2022
# Windows CPython 3.12 (embeddable zip — avoids the 32-bit installer bootstrap). # Windows CPython 3.12 (full installer: bundles pip + OpenSSL; needs wine32 for
RUN wget -qO /tmp/pyembed.zip \ # the 32-bit installer bootstrap, which is installed above).
"https://www.python.org/ftp/python/${PYTHON_VERSION}/python-${PYTHON_VERSION}-embed-amd64.zip" \ RUN wget -qO /tmp/python-installer.exe \
&& mkdir -p /root/.wine/drive_c/Python312 \ "https://www.python.org/ftp/python/${PYTHON_VERSION}/python-${PYTHON_VERSION}-amd64.exe" \
&& cd /root/.wine/drive_c/Python312 \ && xvfb-run -a wine /tmp/python-installer.exe \
&& unzip -q /tmp/pyembed.zip \ /quiet InstallAllUsers=1 PrependPath=1 TargetDir=C:\\Python312 Include_test=0 Include_launcher=0 Shortcuts=0 \
&& rm -f /tmp/pyembed.zip \ && rm -f /tmp/python-installer.exe \
&& printf 'python312.zip\n.\nimport site\nLib\\site-packages\n' > python312._pth \
&& wine "C:\\Python312\\python.exe" --version && wine "C:\\Python312\\python.exe" --version
# Convenience wrapper: winpython -> wine C:\Python312\python.exe # Convenience wrapper: winpython -> wine C:\Python312\python.exe
RUN printf '#!/bin/sh\nexec wine "C:\\Python312\\python.exe" "$@"\n' > /usr/local/bin/winpython \ RUN printf '#!/bin/sh\nexec wine "C:\\Python312\\python.exe" "$@"\n' > /usr/local/bin/winpython \
&& chmod +x /usr/local/bin/winpython && chmod +x /usr/local/bin/winpython
# Bootstrap pip, then pre-install the Windows build deps so CI jobs start fast. # Pre-install the Windows build deps so CI jobs start fast.
RUN wget -qO /tmp/get-pip.py https://bootstrap.pypa.io/get-pip.py \
&& wine "C:\\Python312\\python.exe" /tmp/get-pip.py \
&& rm -f /tmp/get-pip.py
COPY requirements-build.txt /tmp/requirements-build.txt COPY requirements-build.txt /tmp/requirements-build.txt
RUN winpython -m pip install --upgrade pip \ RUN winpython -m pip install --upgrade pip \
&& winpython -m pip install -r /tmp/requirements-build.txt \ && winpython -m pip install -r /tmp/requirements-build.txt \