A node that cannot run the CUDA 13 build installs the same version's CUDA 12.9 build from vLLM's GitHub release, with PyTorch's cu129 torch; the install computes on the GPU before it counts. The build can be chosen per node — auto, cu13, cu129, none — on the cluster page, with ctl engine-build, or over the admin API; the control plane keeps the choice and tells the node at once. Refs #2. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
25 lines
723 B
Go
25 lines
723 B
Go
package store
|
|
|
|
import "testing"
|
|
|
|
func TestAnEngineBuildIsChosenPerNodeAndCanBeLeftToItAgain(t *testing.T) {
|
|
db := capacityStore(t)
|
|
ctx := t.Context()
|
|
if err := db.SetNodeEngine(ctx, "gpu07", "vllm", "cu129", "ilker"); err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if err := db.SetNodeEngine(ctx, "gpu07", "vllm", "none", "ilker"); err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
got, err := db.NodeEngines(ctx)
|
|
if err != nil || got["gpu07"]["vllm"] != "none" {
|
|
t.Fatalf("got %v, %v; the second choice replaces the first", got, err)
|
|
}
|
|
if err := db.SetNodeEngine(ctx, "gpu07", "vllm", "", "ilker"); err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if got, _ := db.NodeEngines(ctx); len(got["gpu07"]) != 0 {
|
|
t.Errorf("left to the node again, still %v", got)
|
|
}
|
|
}
|