fix(ci): avoid curl-based uv bootstrap
Some checks failed
CI/CD Pipeline / Code Quality Checks (push) Failing after 20s
CI/CD Pipeline / Run Tests (push) Failing after 20s
CI/CD Pipeline / Code Quality Checks (pull_request) Failing after 20s
CI/CD Pipeline / Telegram Notify Success (push) Has been skipped
CI/CD Pipeline / Run Tests (pull_request) Failing after 20s
CI/CD Pipeline / Telegram Notify Success (pull_request) Has been skipped

This commit is contained in:
2026-03-22 13:50:12 +01:00
parent 705245304e
commit 3a621c214e

View File

@@ -35,15 +35,34 @@ jobs:
- name: Install Python and uv
run: |
set -euo pipefail
timeout 180s bash -lc 'curl -LsSf https://astral.sh/uv/install.sh | sh'
if command -v python3.11 >/dev/null 2>&1; then
BOOTSTRAP_PYTHON=python3.11
elif command -v python3 >/dev/null 2>&1; then
BOOTSTRAP_PYTHON=python3
else
echo "python3 is not available on the runner" >&2
exit 1
fi
timeout 120s "${BOOTSTRAP_PYTHON}" -m ensurepip --upgrade || true
timeout 180s "${BOOTSTRAP_PYTHON}" -m pip install --user --upgrade pip uv
export PATH="$HOME/.local/bin:$PATH"
if "${BOOTSTRAP_PYTHON}" -c 'import sys; raise SystemExit(0 if sys.version_info >= (3, 11) else 1)'; then
PYTHON_BIN="${BOOTSTRAP_PYTHON}"
else
timeout 300s uv python install "${PYTHON_VERSION}"
PYTHON_BIN="${PYTHON_VERSION}"
fi
printf 'PYTHON_BIN=%s\n' "${PYTHON_BIN}" > .ci-python-env
- name: Create virtual environment and install dependencies
run: |
set -euo pipefail
export PATH="$HOME/.local/bin:$PATH"
uv venv --python "${PYTHON_VERSION}"
. ./.ci-python-env
uv venv --python "${PYTHON_BIN}"
. .venv/bin/activate
uv sync --dev --frozen
@@ -108,15 +127,34 @@ jobs:
- name: Install Python and uv
run: |
set -euo pipefail
timeout 180s bash -lc 'curl -LsSf https://astral.sh/uv/install.sh | sh'
if command -v python3.11 >/dev/null 2>&1; then
BOOTSTRAP_PYTHON=python3.11
elif command -v python3 >/dev/null 2>&1; then
BOOTSTRAP_PYTHON=python3
else
echo "python3 is not available on the runner" >&2
exit 1
fi
timeout 120s "${BOOTSTRAP_PYTHON}" -m ensurepip --upgrade || true
timeout 180s "${BOOTSTRAP_PYTHON}" -m pip install --user --upgrade pip uv
export PATH="$HOME/.local/bin:$PATH"
if "${BOOTSTRAP_PYTHON}" -c 'import sys; raise SystemExit(0 if sys.version_info >= (3, 11) else 1)'; then
PYTHON_BIN="${BOOTSTRAP_PYTHON}"
else
timeout 300s uv python install "${PYTHON_VERSION}"
PYTHON_BIN="${PYTHON_VERSION}"
fi
printf 'PYTHON_BIN=%s\n' "${PYTHON_BIN}" > .ci-python-env
- name: Create virtual environment and install dependencies
run: |
set -euo pipefail
export PATH="$HOME/.local/bin:$PATH"
uv venv --python "${PYTHON_VERSION}"
. ./.ci-python-env
uv venv --python "${PYTHON_BIN}"
. .venv/bin/activate
uv sync --dev --frozen