ci: run the failure-path load test nightly instead of on every pull request

A load test that measures RSS and latency over a dozen requests belongs on a schedule, not in
the per-PR matrix. Drop the unit-test shard and add a nightly workflow (09:00 UTC, plus manual
dispatch) that runs it alone against the default branch. It needs no secrets, database or
network beyond localhost.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014ZDULyJPp17ZFiJenRxs2T
This commit is contained in:
Kerry Lu 2026-09-09 14:16:29 -07:00
parent 729e58fe17
commit 3eb65fa67a
2 changed files with 50 additions and 8 deletions

View file

@ -0,0 +1,50 @@
name: "Nightly Failure-Path Load Test"
on:
schedule:
- cron: "0 9 * * *"
workflow_dispatch:
permissions:
contents: read
jobs:
failure-path-load:
if: github.event_name != 'schedule' || github.repository == 'BerriAI/litellm'
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: "3.12"
- name: Set up uv
uses: ./.github/actions/setup-uv-with-retries
with:
version: "0.10.9"
- name: Cache the Rust build
uses: ./.github/actions/cache-cargo-build
- name: Install dependencies
run: |
.github/scripts/uv_sync_with_retries.sh --frozen --group ci --group proxy-dev --extra proxy
- name: Cache Prisma binaries
uses: ./.github/actions/cache-prisma-binaries
- name: Generate Prisma client
run: |
uv run --no-sync prisma generate --schema litellm/proxy/schema.prisma
- name: Run the failure-path load test
env:
LITELLM_LOG: WARNING
run: |
uv run --no-sync pytest tests/load_tests/test_failing_dependencies_load.py -v --tb=short -rA \
-o log_cli=true -o log_cli_level=INFO

View file

@ -244,14 +244,6 @@ jobs:
reruns: 2
timeout-minutes: 20
job-timeout-minutes: 60
- shard: failure-path-load
artifact-name: failure-path-load
test-path: "tests/load_tests/test_failing_dependencies_load.py"
workers: 1
reruns: 1
timeout-minutes: 10
job-timeout-minutes: 20
uses: ./.github/workflows/_test-unit-base.yml
with:
test-path: ${{ matrix.test-path }}