CI (Continuous Integration)#
Vime uses Buildkite for continuous integration. The committed pipeline is
.buildkite/pipeline.yml.
Always-on checks#
Every pull request runs these CPU steps:
Step |
Coverage |
|---|---|
|
formatting, lint, and repository policy |
|
customization contracts and CPU tests |
|
agent adapter behavior |
|
CPU tests synchronized from upstream |
|
|
The authoritative commands and queue configuration are in
.buildkite/pipeline.yml.
GPU suites#
After the CPU steps pass, the Buildkite build exposes a block step named
Run GPU test suites?. Select one or more suites:
shortvllm-configmegatronvime-customizedprecisionckpt
.buildkite/gpu_suites.py expands each selected suite into one Buildkite job
per test. GPU tests use vllm/vime:latest; rebuild and publish that image
before validating a Dockerfile or vLLM patch change.
Registering tests#
Add always-on CPU tests to the appropriate command in
.buildkite/pipeline.yml.Add GPU tests to a suite in
.buildkite/gpu_suites.pyand update the suite count shown by.buildkite/pipeline.yml.Keep
.buildkite/README.mdsynchronized with pipeline behavior.
Run the exact command locally before triggering its remote Buildkite job. For GPU failures, reproduce on an H200 node with the same image and environment, then rerun the remote suite only after the local test passes.