diff --git a/Jenkinsfile b/Jenkinsfile index d3a590c4b..00beafd8a 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -165,11 +165,6 @@ pipeline { } } } - post { - always { - cleanWs(deleteDirs: true, notFailBuild: true) - } - } } stage('生产环境部署确认(仅 production 执行)') { diff --git a/Jenkinsfile.service b/Jenkinsfile.service index 70b071698..b6ca38dc5 100644 --- a/Jenkinsfile.service +++ b/Jenkinsfile.service @@ -196,11 +196,6 @@ pipeline { } } } - post { - always { - cleanWs(deleteDirs: true, notFailBuild: true) - } - } } stage('部署单个服务') { diff --git a/scripts/controller-pipeline-contract.test.mjs b/scripts/controller-pipeline-contract.test.mjs index 7e0758505..5bf92b4ed 100644 --- a/scripts/controller-pipeline-contract.test.mjs +++ b/scripts/controller-pipeline-contract.test.mjs @@ -10,7 +10,7 @@ test('coordinator releases its builder while waiting for downstream jobs', () => assert.match(pipeline, /stage\('确定构建范围'\) \{[\s\S]*?agent \{ label 'java-builder' \}/) assert.match(pipeline, /agent \{ label 'java-builder' \}/) assert.doesNotMatch(pipeline, /agent any/) - assert.doesNotMatch(pipeline, /post \{\s*always \{ cleanWs[\s\S]*?\}\s*\}\s*\}\s*$/) + assert.doesNotMatch(pipeline, /cleanWs\(/) }) test('AUTO detects database migrations without expanding them to all services', () => { diff --git a/scripts/test-environment-pipeline-contract.test.mjs b/scripts/test-environment-pipeline-contract.test.mjs index d8bd128f0..5c3a924d0 100644 --- a/scripts/test-environment-pipeline-contract.test.mjs +++ b/scripts/test-environment-pipeline-contract.test.mjs @@ -84,3 +84,9 @@ test('Java service images use the internal registry base image by default', () = assert.doesNotMatch(pipeline, /docker\.m\.daocloud\.io\/library\/eclipse-temurin/) assert.doesNotMatch(serviceDockerfile, /docker\.m\.daocloud\.io\/library\/eclipse-temurin/) }) + +test('source workspaces are preserved for incremental Git fetches', () => { + assert.match(pipeline, /checkout scm/) + assert.equal((pipeline.match(/cleanWs\(/g) ?? []).length, 2) + assert.doesNotMatch(coordinatorPipeline, /cleanWs\(/) +})