Files
vllm-omni/examples/online_serving/chart-helm/tests/deployment_test.yaml
T

202 lines
5.7 KiB
YAML

suite: test deployment
templates:
- deployment.yaml
tests:
- it: should create deployment with default omni command
asserts:
- hasDocuments:
count: 1
- isKind:
of: Deployment
- equal:
path: spec.template.spec.containers[0].name
value: vllm-omni
- equal:
path: spec.template.spec.containers[0].command[0]
value: vllm
- equal:
path: spec.template.spec.containers[0].command[1]
value: serve
- equal:
path: spec.template.spec.containers[0].command[2]
value: Tongyi-MAI/Z-Image-Turbo
- equal:
path: spec.template.spec.containers[0].command[3]
value: "--omni"
- equal:
path: spec.template.spec.containers[0].command[4]
value: "--host"
- equal:
path: spec.template.spec.containers[0].command[5]
value: "0.0.0.0"
- equal:
path: spec.template.spec.containers[0].command[6]
value: "--port"
- equal:
path: spec.template.spec.containers[0].command[7]
value: "8000"
- it: should use custom model when set
set:
model: "Qwen/Qwen2.5-Omni-7B"
asserts:
- equal:
path: spec.template.spec.containers[0].command[2]
value: Qwen/Qwen2.5-Omni-7B
- it: should include omniArgs flags in command
set:
omniArgs:
vaeUseSlicing: true
vaeUseTiling: true
enableCpuOffload: true
numGpus: 2
cacheBackend: "tea_cache"
workerBackend: "ray"
extraArgs:
- "--enable-layerwise-offload"
asserts:
- contains:
path: spec.template.spec.containers[0].command
content: "--vae-use-slicing"
- contains:
path: spec.template.spec.containers[0].command
content: "--vae-use-tiling"
- contains:
path: spec.template.spec.containers[0].command
content: "--enable-cpu-offload"
- contains:
path: spec.template.spec.containers[0].command
content: "--num-gpus"
- contains:
path: spec.template.spec.containers[0].command
content: "--cache-backend"
- contains:
path: spec.template.spec.containers[0].command
content: "--worker-backend"
- contains:
path: spec.template.spec.containers[0].command
content: "--enable-layerwise-offload"
- it: should include deploy config in command
set:
omniArgs:
deployConfigPath: "/configs/deploy.yaml"
asserts:
- equal:
path: spec.template.spec.containers[0].command[8]
value: "--deploy-config"
- equal:
path: spec.template.spec.containers[0].command[9]
value: "/configs/deploy.yaml"
- it: should reject removed stage config value
set:
omniArgs:
stageConfigsPath: "/configs/legacy.yaml"
asserts:
- failedTemplate:
errorMessage: "omniArgs.stageConfigsPath has been removed; use omniArgs.deployConfigPath"
- it: should use full command override when image.command is set
set:
image:
command:
- "custom-binary"
- "--flag"
asserts:
- equal:
path: spec.template.spec.containers[0].command[0]
value: custom-binary
- equal:
path: spec.template.spec.containers[0].command[1]
value: "--flag"
- it: should mount shm and model-cache volumes
asserts:
- contains:
path: spec.template.spec.containers[0].volumeMounts
content:
name: shm
mountPath: /dev/shm
- contains:
path: spec.template.spec.containers[0].volumeMounts
content:
name: model-cache
mountPath: /cache
- contains:
path: spec.template.spec.volumes
content:
name: shm
emptyDir:
medium: Memory
sizeLimit: 8Gi
- it: should use PVC for model-cache when modelCache is enabled
set:
modelCache:
enabled: true
storageSize: "50Gi"
accessModes:
- ReadWriteOnce
asserts:
- contains:
path: spec.template.spec.volumes
content:
name: model-cache
persistentVolumeClaim:
claimName: RELEASE-NAME-model-cache
- it: should use emptyDir for model-cache when modelCache is disabled
set:
modelCache:
enabled: false
storageSize: "50Gi"
accessModes:
- ReadWriteOnce
asserts:
- contains:
path: spec.template.spec.volumes
content:
name: model-cache
emptyDir: {}
- it: should set HF_HOME environment variable
asserts:
- contains:
path: spec.template.spec.containers[0].env
content:
name: HF_HOME
value: /cache/huggingface
- it: should set HF_TOKEN env when hfToken is provided
set:
hfToken: "hf_test_token_123"
asserts:
- contains:
path: spec.template.spec.containers[0].env
content:
name: HF_TOKEN
valueFrom:
secretKeyRef:
name: RELEASE-NAME-hf-token
key: token
- it: should create custom init containers when specified
set:
extraInit:
initContainers:
- name: my-init
image: busybox:latest
command: ["echo", "init"]
asserts:
- lengthEqual:
path: spec.template.spec.initContainers
count: 1
- equal:
path: spec.template.spec.initContainers[0].name
value: my-init
- equal:
path: spec.template.spec.initContainers[0].image
value: busybox:latest