llama-stack-mirror/.github/workflows
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
..
backward-compat.yml ci: target release-X.Y.x branches instead of release-X.Y.x-maint (#3995) 2025-10-30 16:27:13 -07:00
changelog.yml chore(github-deps): bump actions/checkout from 4.2.2 to 5.0.0 (#3178) 2025-08-20 16:51:40 -07:00
conformance.yml feat(api)!: BREAKING CHANGE: support passing extra_body through to providers (#3777) 2025-10-10 16:21:44 -07:00
install-script-ci.yml fix(ci): use test.pypi as extra index for RC dependencies (#4009) 2025-10-31 12:55:43 -07:00
integration-auth-tests.yml ci: standardize release branch pattern to release-X.Y.x (#3999) 2025-10-30 21:33:32 -07:00
integration-sql-store-tests.yml ci: standardize release branch pattern to release-X.Y.x (#3999) 2025-10-30 21:33:32 -07:00
integration-tests.yml ci: standardize release branch pattern to release-X.Y.x (#3999) 2025-10-30 21:33:32 -07:00
integration-vector-io-tests.yml ci: standardize release branch pattern to release-X.Y.x (#3999) 2025-10-30 21:33:32 -07:00
pre-commit.yml fix(ci): use test.pypi as extra index for RC dependencies (#4009) 2025-10-31 12:55:43 -07:00
providers-build.yml fix(ci): use test.pypi as extra index for RC dependencies (#4009) 2025-10-31 12:55:43 -07:00
providers-list-deps.yml chore(package): migrate to src/ layout (#3920) 2025-10-27 12:02:21 -07:00
python-build-test.yml chore(package): migrate to src/ layout (#3920) 2025-10-27 12:02:21 -07:00
README.md fix(ci): remove precommit trigger workflow (#4008) 2025-10-31 11:41:26 -07:00
record-integration-tests.yml feat(tests): make inference_recorder into api_recorder (include tool_invoke) (#3403) 2025-10-09 14:27:51 -07:00
semantic-pr.yml chore(github-deps): bump amannn/action-semantic-pull-request from 6.1.0 to 6.1.1 (#3248) 2025-08-25 17:34:17 +02:00
stale_bot.yml chore(github-deps): bump actions/stale from 10.0.0 to 10.1.0 (#3684) 2025-10-08 12:16:54 +02:00
test-external-provider-module.yml chore(package): migrate to src/ layout (#3920) 2025-10-27 12:02:21 -07:00
test-external.yml chore(package): migrate to src/ layout (#3920) 2025-10-27 12:02:21 -07:00
ui-unit-tests.yml chore(package): migrate to src/ layout (#3920) 2025-10-27 12:02:21 -07:00
unit-tests.yml ci: standardize release branch pattern to release-X.Y.x (#3999) 2025-10-30 21:33:32 -07:00

Llama Stack CI

Llama Stack uses GitHub Actions for Continuous Integration (CI). Below is a table detailing what CI the project includes and the purpose.

Name File Purpose
Backward Compatibility Check backward-compat.yml Check backward compatibility for run.yaml configs
Update Changelog changelog.yml Creates PR for updating the CHANGELOG.md
API Conformance Tests conformance.yml Run the API Conformance test suite on the changes.
Installer CI install-script-ci.yml Test the installation script
Integration Auth Tests integration-auth-tests.yml Run the integration test suite with Kubernetes authentication
SqlStore Integration Tests integration-sql-store-tests.yml Run the integration test suite with SqlStore
Integration Tests (Replay) integration-tests.yml Run the integration test suites from tests/integration in replay mode
Vector IO Integration Tests integration-vector-io-tests.yml Run the integration test suite with various VectorIO providers
Pre-commit pre-commit.yml Run pre-commit checks
Test Llama Stack Build providers-build.yml Test llama stack build
Test llama stack list-deps providers-list-deps.yml Test llama stack list-deps
Python Package Build Test python-build-test.yml Test building the llama-stack PyPI project
Integration Tests (Record) record-integration-tests.yml Run the integration test suite from tests/integration
Check semantic PR titles semantic-pr.yml Ensure that PR titles follow the conventional commit spec
Close stale issues and PRs stale_bot.yml Run the Stale Bot action
Test External Providers Installed via Module test-external-provider-module.yml Test External Provider installation via Python module
Test External API and Providers test-external.yml Test the External API and Provider mechanisms
UI Tests ui-unit-tests.yml Run the UI test suite
Unit Tests unit-tests.yml Run the unit test suite