Fall back when runner lacks python venv/ensurepip.
Linux self-hosted runners without python3-venv fail job-local venv; use pip --break-system-packages so refresh can still install deps. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -38,9 +38,16 @@ jobs:
|
|||||||
PYTHON=python3
|
PYTHON=python3
|
||||||
command -v python3 >/dev/null || PYTHON=python
|
command -v python3 >/dev/null || PYTHON=python
|
||||||
command -v node >/dev/null || { echo "node/npx required for wrangler deploy"; exit 1; }
|
command -v node >/dev/null || { echo "node/npx required for wrangler deploy"; exit 1; }
|
||||||
# Job-local venv: Homebrew/PEP 668 blocks system pip install.
|
# Prefer job-local venv (PEP 668). Some runners lack ensurepip/python3-venv.
|
||||||
"$PYTHON" -m venv .venv
|
rm -rf .venv
|
||||||
.venv/bin/pip install -q -r web/requirements.txt
|
if "$PYTHON" -m venv .venv; then
|
||||||
|
.venv/bin/pip install -q -r web/requirements.txt
|
||||||
|
echo "CLIMPEROR_PY=${PWD}/.venv/bin/python" >> "$GITHUB_ENV"
|
||||||
|
else
|
||||||
|
echo "venv unavailable; pip --break-system-packages"
|
||||||
|
"$PYTHON" -m pip install -q --break-system-packages -r web/requirements.txt
|
||||||
|
echo "CLIMPEROR_PY=${PYTHON}" >> "$GITHUB_ENV"
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Refresh daily tier
|
- name: Refresh daily tier
|
||||||
env:
|
env:
|
||||||
@@ -53,7 +60,7 @@ jobs:
|
|||||||
OSS_ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
|
OSS_ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
|
||||||
run: |
|
run: |
|
||||||
set -e
|
set -e
|
||||||
.venv/bin/python web/refresh_web.py --tier daily
|
"${CLIMPEROR_PY}" web/refresh_web.py --tier daily
|
||||||
|
|
||||||
- name: Save refresh summary
|
- name: Save refresh summary
|
||||||
if: always()
|
if: always()
|
||||||
|
|||||||
@@ -37,9 +37,16 @@ jobs:
|
|||||||
PYTHON=python3
|
PYTHON=python3
|
||||||
command -v python3 >/dev/null || PYTHON=python
|
command -v python3 >/dev/null || PYTHON=python
|
||||||
command -v node >/dev/null || { echo "node/npx required for wrangler deploy"; exit 1; }
|
command -v node >/dev/null || { echo "node/npx required for wrangler deploy"; exit 1; }
|
||||||
# Job-local venv: Homebrew/PEP 668 blocks system pip install.
|
# Prefer job-local venv (PEP 668). Some runners lack ensurepip/python3-venv.
|
||||||
"$PYTHON" -m venv .venv
|
rm -rf .venv
|
||||||
.venv/bin/pip install -q -r web/requirements.txt
|
if "$PYTHON" -m venv .venv; then
|
||||||
|
.venv/bin/pip install -q -r web/requirements.txt
|
||||||
|
echo "CLIMPEROR_PY=${PWD}/.venv/bin/python" >> "$GITHUB_ENV"
|
||||||
|
else
|
||||||
|
echo "venv unavailable; pip --break-system-packages"
|
||||||
|
"$PYTHON" -m pip install -q --break-system-packages -r web/requirements.txt
|
||||||
|
echo "CLIMPEROR_PY=${PYTHON}" >> "$GITHUB_ENV"
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Refresh patch tier
|
- name: Refresh patch tier
|
||||||
env:
|
env:
|
||||||
@@ -51,7 +58,7 @@ jobs:
|
|||||||
OSS_ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
|
OSS_ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
|
||||||
run: |
|
run: |
|
||||||
set -e
|
set -e
|
||||||
.venv/bin/python web/refresh_web.py --tier patch
|
"${CLIMPEROR_PY}" web/refresh_web.py --tier patch
|
||||||
|
|
||||||
- name: Save refresh summary
|
- name: Save refresh summary
|
||||||
if: always()
|
if: always()
|
||||||
|
|||||||
@@ -36,9 +36,16 @@ jobs:
|
|||||||
PYTHON=python3
|
PYTHON=python3
|
||||||
command -v python3 >/dev/null || PYTHON=python
|
command -v python3 >/dev/null || PYTHON=python
|
||||||
command -v node >/dev/null || { echo "node/npx required for wrangler deploy"; exit 1; }
|
command -v node >/dev/null || { echo "node/npx required for wrangler deploy"; exit 1; }
|
||||||
# Job-local venv: Homebrew/PEP 668 blocks system pip install.
|
# Prefer job-local venv (PEP 668). Some runners lack ensurepip/python3-venv.
|
||||||
"$PYTHON" -m venv .venv
|
rm -rf .venv
|
||||||
.venv/bin/pip install -q -r web/requirements.txt
|
if "$PYTHON" -m venv .venv; then
|
||||||
|
.venv/bin/pip install -q -r web/requirements.txt
|
||||||
|
echo "CLIMPEROR_PY=${PWD}/.venv/bin/python" >> "$GITHUB_ENV"
|
||||||
|
else
|
||||||
|
echo "venv unavailable; pip --break-system-packages"
|
||||||
|
"$PYTHON" -m pip install -q --break-system-packages -r web/requirements.txt
|
||||||
|
echo "CLIMPEROR_PY=${PYTHON}" >> "$GITHUB_ENV"
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Refresh weekly tier
|
- name: Refresh weekly tier
|
||||||
env:
|
env:
|
||||||
@@ -51,7 +58,7 @@ jobs:
|
|||||||
OSS_ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
|
OSS_ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
|
||||||
run: |
|
run: |
|
||||||
set -e
|
set -e
|
||||||
.venv/bin/python web/refresh_web.py --tier weekly
|
"${CLIMPEROR_PY}" web/refresh_web.py --tier weekly
|
||||||
|
|
||||||
- name: Save refresh summary
|
- name: Save refresh summary
|
||||||
if: always()
|
if: always()
|
||||||
|
|||||||
Reference in New Issue
Block a user