litellm/.github/workflows
Yuneng Jiang e0201ece1e
[Infra] Split slow proxy-db shards to hit 7m wall-clock target
Previous run (13.8m total) was bottlenecked by shards with 9-12m wall-clock.
Setup + xdist spawn + coverage teardown is ~3m per shard, so each shard's
pytest runtime must stay under ~4m to fit inside 7m total.

Observed per-shard pytest times (before split):
  db-and-spend            9:08   (170s outlier: test_aaaasschema_migration_check)
  proxy-server            7:15
  logging-and-callbacks   6:45
  guardrails-budget-hooks 6:37
  proxy-utils             6:23
  auth-and-jwt            6:54

Split 6 shards into 12, keeping key-generation and endpoints-and-responses
(already <7m). Adds a `keyword` input to _test-unit-services-base.yml so
test_proxy_utils.py can be split by -k expression (same file, two runners).
New matrix entries:

  auth-and-jwt           -> auth-checks + jwt-and-keys
  proxy-server           -> proxy-server-core + proxy-runtime
  logging-and-callbacks  -> custom-logging + logging-misc
  db-and-spend           -> schema-migration (isolated 170s test) + db-and-spend
  guardrails-budget-hooks-> guardrails-hooks + budgets
  proxy-utils            -> proxy-utils-a-h + proxy-utils-i-z (-k split)

The -k expression split is verified to cover every one of the 64 test
functions in test_proxy_utils.py exactly once. The assert-shard-coverage
guard still catches any file not in any shard.
2026-04-23 15:25:37 -07:00
..
_test-unit-base.yml build: migrate packaging, CI, and Docker from Poetry to uv (#25007) 2026-04-09 11:46:23 -07:00
_test-unit-services-base.yml [Infra] Split slow proxy-db shards to hit 7m wall-clock target 2026-04-23 15:25:37 -07:00
auto_update_price_and_context_window_file.py
auto_update_price_and_context_window.yml build: migrate packaging, CI, and Docker from Poetry to uv (#25007) 2026-04-09 11:46:23 -07:00
check_duplicate_issues.yml [Infra] Flip remaining CI jobs to Python 3.12 2026-04-22 21:26:19 -07:00
check-schema-sync.yml [Infra] Fix zizmor artipacked warnings on schema sync workflows 2026-03-27 16:14:06 -07:00
codeql.yml Merge pull request #24697 from BerriAI/litellm_codeql_gha 2026-03-27 12:17:39 -07:00
codspeed.yml build: migrate packaging, CI, and Docker from Poetry to uv (#25007) 2026-04-09 11:46:23 -07:00
create_daily_staging_branch.yml fix: address zizmor comments 2026-03-26 21:09:01 -07:00
create-release-branch.yml [Infra] Add standalone create-release-branch workflow 2026-04-23 12:02:25 -07:00
create-release.yml [Infra] Add standalone create-release-branch workflow 2026-04-23 12:02:25 -07:00
guard-main-branch.yml Point contributors toward litellm_oss_branch in guard error messages 2026-04-14 18:41:59 -07:00
helm_unit_test.yml fix: address zizmor comments 2026-03-26 21:09:01 -07:00
issue-keyword-labeler.yml fix: address zizmor comments 2026-03-26 21:09:01 -07:00
label-component.yml pin github scripts + remove unused 2026-03-25 17:38:36 -07:00
llm-translation-testing.yml [Infra] Flip remaining CI jobs to Python 3.12 2026-04-22 21:26:19 -07:00
publish_to_pypi.yml build: migrate packaging, CI, and Docker from Poetry to uv (#25007) 2026-04-09 11:46:23 -07:00
read_pyproject_version.yml fix: address zizmor comments 2026-03-26 21:09:01 -07:00
README.md
results_stats.csv
run_llm_translation_tests.py build: migrate packaging, CI, and Docker from Poetry to uv (#25007) 2026-04-09 11:46:23 -07:00
run_observatory_tests.yml fix: address zizmor comments 2026-03-26 21:09:01 -07:00
scan_duplicate_issues.yml [Infra] Flip remaining CI jobs to Python 3.12 2026-04-22 21:26:19 -07:00
scorecard.yml Fix broken codeql-action SHA in scorecard workflow 2026-04-03 11:36:02 -07:00
stale.yml fix: address zizmor comments 2026-03-26 21:09:01 -07:00
sync-schema.yml [Infra] Fix zizmor artipacked warnings on schema sync workflows 2026-03-27 16:14:06 -07:00
test_server_root_path.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-code-quality.yml [Infra] Move non-API-key CCI jobs to GitHub Actions 2026-04-22 13:38:00 -07:00
test-linting.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-litellm-ui-build.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-litellm.yml build: migrate packaging, CI, and Docker from Poetry to uv (#25007) 2026-04-09 11:46:23 -07:00
test-mcp.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-model-map.yaml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-semgrep.yml [Infra] Move non-API-key CCI jobs to GitHub Actions 2026-04-22 13:38:00 -07:00
test-unit-core-utils.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-unit-documentation.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-unit-enterprise-routing.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-unit-integrations.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-unit-llm-providers.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-unit-misc.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-unit-proxy-auth.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-unit-proxy-db.yml [Infra] Split slow proxy-db shards to hit 7m wall-clock target 2026-04-23 15:25:37 -07:00
test-unit-proxy-endpoints.yml [Infra] Remove CCI/GHA test duplication and semantically shard proxy DB tests 2026-04-23 14:48:38 -07:00
test-unit-proxy-infra.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-unit-proxy-legacy.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-unit-responses-caching-types.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
test-unit-security.yml [Infra] Expand CI branch filters for non-main PR targets 2026-04-15 15:39:57 -07:00
update_release.py
zizmor.yml ci: add zizmor github action 2026-03-27 05:33:21 -07:00

Simple PyPI Publishing

A GitHub workflow to manually publish LiteLLM packages to PyPI with a specified version.

How to Use

  1. Go to the Actions tab in the GitHub repository
  2. Select Simple PyPI Publish from the workflow list
  3. Click Run workflow
  4. Enter the version to publish (e.g., 1.74.10)

What the Workflow Does

  1. Updates the version in pyproject.toml
  2. Copies the model prices backup file
  3. Builds the Python package
  4. Publishes to PyPI

Prerequisites

Make sure the following secret is configured in the repository:

  • PYPI_PUBLISH_PASSWORD: PyPI API token for authentication

Example Usage

  • Version: 1.74.11 → Publishes as v1.74.11
  • Version: 1.74.10-hotfix1 → Publishes as v1.74.10-hotfix1

Features

  • Manual trigger with version input
  • Automatic version updates in pyproject.toml
  • Repository safety check (only runs on official repo)
  • Clean package building and publishing
  • Success confirmation with PyPI package link