1- # Matrix jobs (e2e-image-common, e2e-image-router, e2e-router ) are each
1+ # Matrix jobs (e2e-image-common, e2e-image-router) are each
22# followed by a *-status job that aggregates their result, since GitHub
33# required status checks cannot reference individual matrix legs.
44name : CI - Test
4545 - .github/actions/docker-build-and-push/action.yml
4646 - .github/actions/e2e-runner-setup/action.yml
4747 - .github/workflows/ci-pr-checks.yaml
48+ - '!Dockerfile.coordinator'
49+ - '!Makefile.coord.mk'
50+ - '!cmd/coordinator/**'
51+ - '!pkg/coordinator/**'
52+ - '!test/coordinator/**'
4853 helm:
4954 - 'config/charts/**'
5055 - 'hack/verify-helm.sh'
5964 uses : actions/checkout@v7
6065
6166 - name : Set up Go
62- uses : actions/setup-go@v6
67+ uses : actions/setup-go@v7
6368 with :
6469 go-version-file : go.mod
6570
@@ -108,6 +113,16 @@ jobs:
108113 GO_BUILD_CACHE_VOL : ${{ steps.go-cache.outputs.build }}
109114 run : make test-unit
110115
116+ # Anti-rot: execute the benchmark bodies once so runtime breakage (panics,
117+ # deadlocks) is caught. `go test` only compiles benchmarks; it never runs
118+ # them without -bench.
119+ - name : Run benchmark smoke
120+ shell : bash
121+ env :
122+ GO_MOD_CACHE_VOL : ${{ steps.go-cache.outputs.mod }}
123+ GO_BUILD_CACHE_VOL : ${{ steps.go-cache.outputs.build }}
124+ run : make bench-smoke
125+
111126 - name : Run hermetic integration tests
112127 shell : bash
113128 env :
@@ -343,29 +358,6 @@ jobs:
343358 if : ${{ needs.check-changes.outputs.src == 'true' }}
344359 runs-on : ubuntu-latest
345360 timeout-minutes : 45
346- strategy :
347- fail-fast : false
348- matrix :
349- suite :
350- - name : pd
351- label-filter : " !Disruptive && !Extended && !SharedStorage && !Metrics"
352- needs-renderer : " false"
353- - name : pd-shared-storage-deprecated
354- label-filter : " SharedStorage && DeprecatedPD"
355- needs-renderer : " false"
356- - name : pd-shared-storage-disagg
357- label-filter : " SharedStorage && Disagg"
358- needs-renderer : " false"
359- - name : pd-metrics
360- label-filter : " Metrics"
361- needs-renderer : " false"
362- - name : extended
363- label-filter : " Extended"
364- needs-renderer : " true"
365- - name : disruption
366- label-filter : " Disruptive"
367- needs-renderer : " false"
368- name : e2e-router (${{ matrix.suite.name }})
369361 steps :
370362 - name : Checkout source
371363 uses : actions/checkout@v7
@@ -399,7 +391,6 @@ jobs:
399391 path : ${{ runner.temp }}/e2e-images
400392
401393 - name : Download renderer image
402- if : ${{ matrix.suite.needs-renderer == 'true' }}
403394 uses : actions/download-artifact@v8
404395 with :
405396 name : e2e-image-renderer
@@ -412,26 +403,11 @@ jobs:
412403 docker load --input "$image"
413404 done
414405
415- - name : Run e2e-router (${{ matrix.suite.name }})
406+ - name : Run e2e-router
416407 shell : bash
417408 env :
418409 GO_MOD_CACHE_VOL : ${{ steps.e2e-setup.outputs.go-mod-cache }}
419410 GO_BUILD_CACHE_VOL : ${{ steps.e2e-setup.outputs.go-build-cache }}
420- E2E_LABEL_FILTER : ${{ matrix.suite.label-filter }}
421- LOAD_VLLM_RENDER_IMAGE : ${{ matrix.suite.needs-renderer }}
422411 PULL_VLLM_RENDER_IMAGE : " false"
423412 HF_TOKEN : ${{ secrets.HF_TOKEN }}
424413 run : make test-e2e-run
425-
426- e2e-router-status :
427- needs : e2e-router
428- if : always()
429- runs-on : ubuntu-latest
430- steps :
431- - name : Check e2e-router result
432- run : |
433- result="${{ needs.e2e-router.result }}"
434- if [[ "$result" != "success" && "$result" != "skipped" ]]; then
435- echo "::error::e2e-router failed for at least one matrix suite"
436- exit 1
437- fi
0 commit comments