ci: use pure python dependency management and eliminate apt package conflicts in runners
CI Test Suite / Run Component Tests & Pipeline Verification (push) Failing after 10s
CI Test Suite / Run Component Tests & Pipeline Verification (push) Failing after 10s
This commit is contained in:
@@ -21,22 +21,24 @@ jobs:
|
||||
|
||||
- name: Install Python and Build Dependencies
|
||||
run: |
|
||||
if command -v apt-get >/dev/null 2>&1; then
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
if [ -f /etc/apt/sources.list ]; then
|
||||
sed -i 's|deb.debian.org/debian-security bullseye-security|security.debian.org/debian-security bullseye-security|g' /etc/apt/sources.list 2>/dev/null || true
|
||||
fi
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get update -y || apt-get update --fix-missing -y || true
|
||||
apt-get install -y --no-install-recommends python3 python3-pip python3-venv binutils zip curl || apt-get install -y --fix-missing python3 python3-pip python3-venv binutils zip curl || true
|
||||
fi
|
||||
if ! command -v pip3 >/dev/null 2>&1 && ! python3 -m pip --version >/dev/null 2>&1; then
|
||||
if command -v curl >/dev/null 2>&1; then
|
||||
curl -sS https://bootstrap.pypa.io/get-pip.py | python3 || true
|
||||
# 1. Ensure Python3 is present; try apt-get only if missing
|
||||
if ! command -v python3 >/dev/null 2>&1; then
|
||||
if command -v apt-get >/dev/null 2>&1; then
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
apt-get update -y || true
|
||||
apt-get install -y --no-install-recommends python3 || true
|
||||
fi
|
||||
fi
|
||||
python3 -m pip install --upgrade pip --break-system-packages || python3 -m pip install --upgrade pip || true
|
||||
python3 -m pip install pyinstaller -r compilation/requirements.txt --break-system-packages || python3 -m pip install pyinstaller -r compilation/requirements.txt || pip3 install pyinstaller -r compilation/requirements.txt
|
||||
|
||||
# 2. Bootstrap pip via ensurepip or get-pip.py
|
||||
if ! python3 -m pip --version >/dev/null 2>&1; then
|
||||
python3 -m ensurepip --default-pip 2>/dev/null || (python3 -c "import urllib.request; urllib.request.urlretrieve('https://bootstrap.pypa.io/get-pip.py', '/tmp/get-pip.py')" && python3 /tmp/get-pip.py --break-system-packages 2>/dev/null || python3 /tmp/get-pip.py 2>/dev/null || true)
|
||||
fi
|
||||
|
||||
# 3. Upgrade pip and install pyinstaller + dependencies
|
||||
python3 -m pip install --upgrade pip --break-system-packages 2>/dev/null || python3 -m pip install --upgrade pip 2>/dev/null || true
|
||||
python3 -m pip install pyinstaller -r compilation/requirements.txt --break-system-packages 2>/dev/null || python3 -m pip install pyinstaller -r compilation/requirements.txt
|
||||
|
||||
|
||||
|
||||
- name: Compile Standalone Linux Binaries
|
||||
|
||||
Reference in New Issue
Block a user