Skip to content

Add runner selection dropdown for manual Buildkite triggers#744

Merged
deepak-kumar-neu merged 1 commit into
mainfrom
deepakku/add-buildkite-runner-selector
Jun 22, 2026
Merged

Add runner selection dropdown for manual Buildkite triggers#744
deepak-kumar-neu merged 1 commit into
mainfrom
deepakku/add-buildkite-runner-selector

Conversation

@deepak-kumar-neu

Copy link
Copy Markdown
Collaborator

Summary

  • Add build summary banner and meta-data based runner selection to pipeline.yml
  • Works with Buildkite UI input step to allow manual runner override
  • Temporarily switch default GPU runner from H100duo (WDC) to L4solo (GCP) due to H100 cluster issue

Reason

H100 nodes on WDC cluster have NVIDIA driver failures.

What changed

  • .buildkite/pipeline.yml — added build summary banner, meta-data based runner selection, changed default runner from H100duo to L4solo

Usage

  • Default (L4solo): trigger a Buildkite build — no config needed
  • H100duo: select "H100 Duo (WDC)" from the GPU Runner dropdown when triggering manually from Buildkite UI

Revert

Once the H100 cluster issue is resolved, revert this change by switching the default back to H100duo in .buildkite/pipeline.yml.

Reference

  • Follows the same pattern used in the Speculators repo

Add build summary banner and meta-data based runner selection to
pipeline.yml. Works with Buildkite UI input step to allow manual
runner override (H100duo default, L4solo alternative).

Follows the same pattern used in the Speculators repo.

Signed-off-by: Deepak Kumar <deepakku@redhat.com>
@coderabbitai

coderabbitai Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Summary by CodeRabbit

  • Chores
    • Updated Buildkite pipeline configuration to improve build runner selection and provide enhanced build summary information before test execution.

Walkthrough

The Buildkite test-check step is updated to derive the GPU runner from Buildkite metadata (test-runner, defaulting to L4solo) instead of the TEST_RUNNER environment variable. The step now prints a formatted build summary before uploading the runner-specific pipeline file, and the step label gains a :gear: prefix.

Changes

Buildkite Pipeline Runner Selection

Layer / File(s) Summary
Dynamic runner selection and build summary logging
.buildkite/pipeline.yml
Step label gains :gear: prefix; RUNNER is now read from buildkite-agent meta-data get "test-runner" (default L4solo) instead of TEST_RUNNER env var (default H100duo); a formatted build summary (creator/source/branch/commit/PR/GPU runner) is printed before uploading test-check-$RUNNER.yml.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

  • vllm-project/compressed-tensors#722: Also modifies .buildkite/pipeline.yml to drive the test-check pipeline upload based on a selectable GPU runner and upload the corresponding runner-specific YAML.

Suggested reviewers

  • kylesayrs
  • dsikka
  • brian-dellabetta
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: adding runner selection capability to the Buildkite pipeline configuration, which is the primary objective of this PR.
Description check ✅ Passed The description provides relevant context about the changes, including the summary of modifications, reasons for the default runner switch, usage instructions, and revert guidance, all directly related to the changeset.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch deepakku/add-buildkite-runner-selector

Warning

Review ran into problems

🔥 Problems

Linked repositories: Your configuration references 1 linked repositories, but your current plan allows 0. Analyzed ``, skipped vllm-project/llm-compressor.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.buildkite/pipeline.yml:
- Around line 5-16: The RUNNER variable is user-controlled metadata retrieved at
line 5 and used directly in the pipeline upload path at line 16 without
validation, which could allow uploading unintended or missing YAML files that
break the CI flow. Add validation after the RUNNER variable assignment to ensure
it only contains allowed values from the allowlist (L4solo or H100duo), and if
validation fails, exit with an error message. Additionally, wrap the RUNNER
variable in quotes in the buildkite-agent pipeline upload command to protect
against path injection and other shell expansion issues.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: e8158aea-dd44-47ce-ac06-24aaffd69d1b

📥 Commits

Reviewing files that changed from the base of the PR and between 72b0765 and 3bb7713.

📒 Files selected for processing (1)
  • .buildkite/pipeline.yml

Comment thread .buildkite/pipeline.yml

@dsikka dsikka left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is this one l4solo and the speculators one is l4solo?

@deepak-kumar-neu deepak-kumar-neu enabled auto-merge (squash) June 22, 2026 18:05
@deepak-kumar-neu deepak-kumar-neu merged commit 6824b99 into main Jun 22, 2026
5 checks passed
@deepak-kumar-neu deepak-kumar-neu deleted the deepakku/add-buildkite-runner-selector branch June 22, 2026 18:06
@deepak-kumar-neu

Copy link
Copy Markdown
Collaborator Author

why is this one l4solo and the speculators one is l4solo?

Both the L4 gpu are same.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants