ci: add Kubernetes deploy test to nightly - #12090
Merged
Merged
Conversation
Signed-off-by: Kavita Narang <knarang@nvidia.com>
1 task
Contributor
Author
|
/ok to test 4762be3 |
Contributor
WalkthroughChangesNightly Kubernetes deployment
Estimated code review effort: 3 (Moderate) | ~20 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Comment |
This comment has been minimized.
This comment has been minimized.
Signed-off-by: Kavita Narang <knarang@nvidia.com>
Contributor
Author
|
/ok to test b467dda |
knarangN
enabled auto-merge (squash)
July 24, 2026 03:40
nv-tusharma
reviewed
Jul 28, 2026
nv-tusharma
reviewed
Jul 28, 2026
nv-tusharma
reviewed
Jul 28, 2026
nv-tusharma
reviewed
Jul 28, 2026
Signed-off-by: Kavita Narang <knarang@nvidia.com>
Signed-off-by: Kavita Narang <knarang@nvidia.com>
Collaborator
|
LGTM, feel free to schedule a nightly pipeline on your branch to validate this works as expected. |
Signed-off-by: Kavita Narang <knarang@nvidia.com>
Contributor
Author
|
/ok to test 06d59f7 |
Signed-off-by: Kavita Narang <knarang@nvidia.com>
Contributor
Author
|
/ok to test 3f7892d |
nv-tusharma
approved these changes
Aug 3, 2026
hhzhang16
added a commit
that referenced
this pull request
Aug 4, 2026
dyn-3691-extract-shared-target-pid-cuda-customstorage-operation-layer * 'main' of https://github.com/ai-dynamo/dynamo: (50 commits) docs(cli): correct removed vLLM prefill-worker flag reference (#12581) docs(operator): reserve webhook Ignore for emergencies (#12563) ci(docs): make previews and checks match what actually publishes (#12339) refactor(vllm): organize custom encoder modules (#12416) feat(llm): Select reasoning output field via env var (#11464) feat(runtime): add TLS support to TCP request plane (#10921) fix: convert conditional disagg sglang warning to httperror 400 (#12578) feat(operator): add runtime feature gates (#12421) refactor(runtime): extract PushRouter transport seam behind StreamingDispatch trait (#12447) feat(replay): add deterministic canonical offline reports (#12363) build: bump ModelExpress to 0.5.0(OPS-7978) (#12455) fix(mocker): use logical KV tokens for decode timing (#12583) fix(examples): update Triton example for CUDA 13 + fix libdcgm copy (DYN-3697) (#12577) refactor(operator): implement composition-first DGD reconciliation (#12283) feat(frontend): add basetenkenizer backend (#12376) fix(profiler): configure rapid mocker without planner (#12573) docs(vllm): correct worker-role flags and document --kv-transfer-config (#12568) ci: add Kubernetes deploy test to nightly (#12090) fix(container): reuse pinned protoc in runtime image (#12535) feat(self-host): flip DYN_SELF_HOST_METADATA default to ON (gh-8749) (#11417) ... Signed-off-by: Hannah Zhang <hannahz@nvidia.com>
pvijayakrish
added a commit
that referenced
this pull request
Aug 4, 2026
The nightly deploy-test jobs added in #12090 call shared-deploy-test.yml with `image_suffix`, but that workflow declares a required `image_tag` input and no `image_suffix`. GitHub rejects the whole file at parse time: .github/workflows/nightly-ci.yml (Line: 610, Col: 11): Input image_tag is required, but not provided while calling. .github/workflows/nightly-ci.yml (Line: 614, Col: 21): Invalid input, image_suffix is not defined in the referenced workflow. That is a hard "Invalid workflow file" error, so no job in nightly-ci runs at all -- the scheduled nightly has been dead since #12090 merged. Pass the full ACR tag from the corresponding copy-to-acr job, matching how pr.yaml and post-merge-ci.yml call the same workflow. shared-deploy- test.yml interpolates the value directly as `ai-dynamo/dynamo:${{ inputs.image_tag }}`, so a bare suffix such as `vllm-nightly` would not have resolved to a real image either. Signed-off-by: pvijayakrish <pvijayakrish@nvidia.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview:
Add a Kubernetes deployment-test lane to nightly CI for vLLM, SGLang, and TensorRT-LLM runtime images.
Details:
aggbaseline for vLLM, SGLang, and TensorRT-LLMThe common
aggcase is intentional: it validates scheduled*-nightlyartifacts against the same known deployment contract used post-merge, isolating image and dependency drift from profile-specific behavior. Nightly-only profiles are deferred to a follow-up after these three baseline lanes have trusted scheduled-runtime evidence.Where should the reviewer start?
Start in
.github/workflows/nightly-ci.ymlat theNIGHTLY K8S DEPLOYMENTsection. The key review points are the three copy jobs, the three reusable deploy-test calls, nightly-specific naming, and the cleanup dependency graph.Related Issues
🚫 This PR is NOT linked to a GitHub issue:
Internal tracking: OPS-7826
Blocks the nightly infrastructure portion of OPS-7603 / PR #12085.
Validation
Current merged head:
06d59f7cc4origin/mainatd698bebc73nightly-ci-${{ github.run_id }}, after the first manual run exposed an invalid auto-generated cleanup label for thetests/ops-7826-nightly-k8s-supportbranchgit diff --checkpassed; YAML parsing and Kubernetes label-shape validation passedpytest-marker-reportfound zero missing marker sets but local collection stopped on the known port allocator exhaustion after 100 retriesPrevious head
b467ddaccdwas validated by trusted PR run 30056153965: all 75 jobs passed, including the SGLangaggdeployment, broader deployment matrix, and cleanup.Runtime validation boundary
The non-release manual workflow run 30403849220 on previous head
82a664895bcompleted with failure:deploy-operatorfailed before vCluster creation because the auto-generated Kubernetes cleanup-label value ended in-mainnightly failures and did not originate in this PR's workflow diffReplacement non-release manual workflow run 30420741044 was dispatched on
06d59f7cc4with tests enabled and release/GitLab automation disabled. Until it completes, the namespace fix and all three deployment lanes remain runtime-pending. The first scheduled run after merge is still required to prove the exact cron-triggered path.