test: [skip e2e] add nightly woodpecker service mode deployment (#48645)

## Summary
- Add new nightly helm values file `distributed-woodpecker-service` for
woodpecker service mode (non-embedded) deployment
- Add `distributed-woodpecker-service` to Nightly2 Jenkins matrix
- Add release name mapping `dws` in `get_release_name.sh`
- Bump milvus-helm chart version from 5.0.6 to 5.0.16 (supports
woodpecker service mode)

issue: #48644

## Test plan
- [ ] Verify nightly pipeline picks up the new
`distributed-woodpecker-service` deployment option
- [ ] Verify woodpecker service pods start with image
`harbor.milvus.io/woodpecker/woodpecker:master-latest`
- [ ] Verify existing `distributed-woodpecker` (embedded mode) nightly
tests are unaffected
- [ ] Verify `distributed-pulsar-mmap` and `distributed-kafka` nightly
tests pass with chart 5.0.16

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Signed-off-by: Eric Hou <eric.hou@zilliz.com>
Co-authored-by: Eric Hou <eric.hou@zilliz.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Feilong Hou
2026-03-31 18:59:36 +08:00
committed by GitHub
co-authored by Eric Hou Claude Opus 4.6
parent 08cdd63f68
commit 8d167581e5
3 changed files with 194 additions and 2 deletions
+2 -2
View File
@@ -8,7 +8,7 @@ String cron_string = BRANCH_NAME == 'master' ? '50 4 * * * ' : ''
// Make timeout 4 hours so that we can run two nightly during the ci
int total_timeout_minutes = 7 * 60
def milvus_helm_chart_version = '5.0.6'
def milvus_helm_chart_version = '5.0.16'
pipeline {
triggers {
@@ -96,7 +96,7 @@ pipeline {
axes {
axis {
name 'milvus_deployment_option'
values 'distributed-pulsar-mmap', 'distributed-kafka', 'distributed-woodpecker'
values 'distributed-pulsar-mmap', 'distributed-woodpecker', 'distributed-woodpecker-service'
}
}
stages {
@@ -0,0 +1,189 @@
affinity:
nodeAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- preference:
matchExpressions:
- key: jenkins-e2e-amd
operator: In
values:
- "true"
weight: 100
- preference:
matchExpressions:
- key: node-role.kubernetes.io/e2e
operator: Exists
weight: 1
cluster:
enabled: true
woodpecker:
enabled: true
image:
repository: harbor.milvus.io/woodpecker/woodpecker
tag: master-latest
pullPolicy: Always
streaming:
enabled: true
woodpecker:
embedded: false
proxy:
replicas: 2
resources:
limits:
cpu: "1"
memory: 4Gi
requests:
cpu: "0.3"
memory: 256Mi
dataNode:
replicas: 2
resources:
limits:
cpu: "2"
memory: 8Gi
requests:
cpu: "0.5"
memory: 500Mi
indexNode:
enabled: false
replicas: 2
disk:
enabled: true
resources:
limits:
cpu: "2"
memory: 8Gi
requests:
cpu: "0.5"
memory: 500Mi
queryNode:
replicas: 2
disk:
enabled: true
resources:
limits:
cpu: "1"
memory: 4Gi
requests:
cpu: "0.5"
memory: 512Mi
streamingNode:
replicas: 2
resources:
limits:
cpu: "2"
memory: 8Gi
requests:
cpu: "0.5"
memory: 512Mi
mixCoordinator:
resources:
limits:
cpu: "1"
memory: 4Gi
requests:
cpu: "0.2"
memory: 256Mi
service:
type: ClusterIP
log:
level: debug
extraConfigFiles:
user.yaml: |+
proxy:
http:
enabled: true
common:
storage:
enablev2: true
dataCoord:
gc:
interval: 1800
missingTolerance: 1800
dropTolerance: 1800
queryNode:
segcore:
exprEvalBatchSize: 512
queryCoord:
checkNodeInReplicaInterval: 3
metrics:
serviceMonitor:
enabled: true
# dependencies
etcd:
affinity:
nodeAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- preference:
matchExpressions:
- key: jenkins-e2e-amd
operator: In
values:
- "true"
weight: 100
- preference:
matchExpressions:
- key: node-role.kubernetes.io/e2e
operator: Exists
weight: 1
metrics:
enabled: true
podMonitor:
enabled: true
replicaCount: 1
resources:
requests:
cpu: "0.2"
memory: 256Mi
limits:
cpu: "1"
memory: 4Gi
tolerations:
- effect: PreferNoSchedule
key: jenkins-milvus-ci-only
operator: Equal
value: "true"
- effect: NoSchedule
key: node-role.kubernetes.io/e2e
operator: Exists
minio:
affinity:
nodeAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- preference:
matchExpressions:
- key: jenkins-e2e-amd
operator: In
values:
- "true"
weight: 100
- preference:
matchExpressions:
- key: node-role.kubernetes.io/e2e
operator: Exists
weight: 1
mode: standalone
resources:
requests:
cpu: "0.2"
memory: 512Mi
limits:
cpu: "1"
memory: 4Gi
tolerations:
- effect: PreferNoSchedule
key: jenkins-milvus-ci-only
operator: Equal
value: "true"
- effect: NoSchedule
key: node-role.kubernetes.io/e2e
operator: Exists
kafka:
enabled: false
pulsarv3:
enabled: false
# others
image:
all:
pullPolicy: Always
repository: harbor.milvus.io/milvus/milvus
tag: nightly-20240821-ed4eaff
+3
View File
@@ -37,6 +37,9 @@ function milvus_ci_release_name(){
elif [[ "${MILVUS_SERVER_TYPE:-}" == "distributed-woodpecker" ]]; then
# Distributed woodpecker mode
name+="dw"
elif [[ "${MILVUS_SERVER_TYPE:-}" == "distributed-woodpecker-service" ]]; then
# Distributed woodpecker service mode
name+="dws"
elif [[ "${MILVUS_SERVER_TYPE:-}" == "standalone-kafka-mmap" ]]; then
# Standalone kafka mode
name+="skm"