llama-stack-mirror/scripts
Ashwin Bharambe f8fe3018af
fix(ci): use test.pypi as extra index for RC dependencies (#4009)
Backports UV index configuration fixes from `release-0.3.x` (PR #4002). 

The main issue: when we created the release branch infrastructure, we
configured UV to use `test.pypi` as the PRIMARY index to resolve RC
dependencies. This caused UV to look for ALL packages there first, which
led to problems - some packages don't have binary wheels on `test.pypi`,
so UV tried building from source and failed (like the `psycopg2-binary`
issue we hit).

The fix is simple: use PyPI as primary (default) and `test.pypi` as an
EXTRA index. UV will check PyPI first for everything, and only fall back
to `test.pypi` for packages not found there (like our RC client
versions).

This PR includes:
- Fixed `install-llama-stack-client` action to output
`UV_EXTRA_INDEX_URL` instead of `UV_INDEX_URL`
- New `uv-run-with-index.sh` wrapper that auto-detects release branches
and sets UV env vars
- Updated pre-commit hooks (`uv-lock`, codegen, etc.) to use the wrapper
- Pass UV env vars as Docker build args in all locations
- Scope UV env vars properly in Containerfile (inline for llama-stack
install, explicitly unset before distribution deps)
- Export UV env vars to `GITHUB_ENV` in setup-runner for cross-step
persistence

The wrapper detects release branches automatically in both CI and local
environments, so this "just works" without manual configuration. On main
(non-release branch), the wrapper becomes a no-op.

Tested and validated on `release-0.3.x` where all CI checks pass.
2025-10-31 12:55:43 -07:00
..
github fix: unbound variable PR_HEAD_REPO (#3469) 2025-09-17 10:18:43 +02:00
telemetry chore(telemetry): add grafana dashboards (#3921) 2025-10-27 14:58:27 -07:00
check-init-py.sh chore(package): migrate to src/ layout (#3920) 2025-10-27 12:02:21 -07:00
check-workflows-use-hashes.sh fix: update check-workflows-use-hashes to use github error format (#2875) 2025-07-24 17:41:17 +02:00
diagnose_recordings.py feat(ci): add support for docker:distro in tests (#3832) 2025-10-16 19:33:13 -07:00
distro_codegen.py chore: remove leftover llama_stack directory (#3940) 2025-10-28 05:09:08 -07:00
docker.sh fix(ci): use test.pypi as extra index for RC dependencies (#4009) 2025-10-31 12:55:43 -07:00
gen-changelog.py chore: enable ruff for ./scripts too (#1643) 2025-03-18 12:17:21 -07:00
gen-ci-docs.py chore: Remove coverage badge from README.md (#2976) 2025-07-31 09:21:30 -07:00
generate_prompt_format.py chore: standardize model not found error (#2964) 2025-07-30 12:19:53 -07:00
get_setup_env.py fix: pre-commit issues: non executable shebang file and removal of @pytest.mark.asyncio decorator (#3397) 2025-09-10 15:27:35 +02:00
install.sh chore(telemetry): add grafana dashboards (#3921) 2025-10-27 14:58:27 -07:00
integration-tests.sh fix(ci): use test.pypi as extra index for RC dependencies (#4009) 2025-10-31 12:55:43 -07:00
normalize_recordings.py fix: update normalize to search all recordings dirs (#3767) 2025-10-10 07:32:14 -07:00
provider_codegen.py feat: use SecretStr for inference provider auth credentials (#3724) 2025-10-10 07:32:50 -07:00
run-ui-linter.sh chore(package): migrate to src/ layout (#3920) 2025-10-27 12:02:21 -07:00
unit-tests.sh chore(package): migrate to src/ layout (#3920) 2025-10-27 12:02:21 -07:00
uv-run-with-index.sh fix(ci): use test.pypi as extra index for RC dependencies (#4009) 2025-10-31 12:55:43 -07:00