فهرست منبع

Uat流水线优化。

dujian 12 ساعت پیش
والد
کامیت
044dbd65d3
2فایلهای تغییر یافته به همراه9 افزوده شده و 3 حذف شده
  1. 8 2
      docs/jenkins/uat/Jenkinsfile
  2. 1 1
      docs/jenkins/uat/README.md

+ 8 - 2
docs/jenkins/uat/Jenkinsfile

@@ -50,7 +50,6 @@ def pushOneHarborImage(def script, Map svc, String reg, String proj, String late
     def withLibFlag = svc.withLib ? 'true' : 'false'
     script.sh """
         set -e
-        export DOCKER_BUILDKIT=1
         test -f ${workspace}/${svc.module}/target/${jarName}
         cd ${workspace}/${svc.module}
         rm -rf .jenkins_docker_ctx && mkdir -p .jenkins_docker_ctx/lib
@@ -65,6 +64,7 @@ def pushOneHarborImage(def script, Map svc, String reg, String proj, String late
           echo ">>> archive previous ${latestTag} -> ${buildTag}"
           docker tag ${imageLatest} ${imageBuild}
           docker push ${imageBuild}
+          docker rmi ${imageBuild} ${imageLatest} 2>/dev/null || true
         fi
         docker build -f ${workspace}/${dockerfile} \\
           --build-arg BASE_IMAGE=${baseImage} \\
@@ -75,6 +75,7 @@ def pushOneHarborImage(def script, Map svc, String reg, String proj, String late
         docker push ${imageLatest}
         echo ">>> pushed ${imageLatest} (archived prior latest as ${buildTag} if any)"
         docker rmi ${imageLatest} 2>/dev/null || true
+        docker image prune -f 2>/dev/null || true
         cd ${workspace}/${svc.module}
         rm -rf .jenkins_docker_ctx
     """
@@ -384,7 +385,7 @@ pipeline {
                             echo "\${HARBOR_PASS}" | docker login ${reg} -u "\${HARBOR_USER}" --password-stdin
                             echo ">>> docker disk before Harbor push:"
                             df -h /var/lib/docker 2>/dev/null || df -h / || true
-                            docker system prune -f --filter until=48h 2>/dev/null || true
+                            docker image prune -f 2>/dev/null || true
                         """
                         if (params.HARBOR_PUSH_PARALLEL) {
                             def pushBranches = [:]
@@ -406,6 +407,11 @@ pipeline {
                                 )
                             }
                         }
+                        sh """
+                            echo ">>> docker disk after Harbor push:"
+                            df -h /var/lib/docker 2>/dev/null || df -h / || true
+                            docker image prune -f 2>/dev/null || true
+                        """
                         if (params.HARBOR_PRUNE_OLD_TAGS == true) {
                             def keepN = (params.HARBOR_KEEP_TAG_COUNT ?: '10').trim() as int
                             catchError(buildResult: 'SUCCESS', stageResult: 'UNSTABLE') {

+ 1 - 1
docs/jenkins/uat/README.md

@@ -24,7 +24,7 @@
 | `FORCE_UPDATE` | 默认 **true** | 默认 **false** |
 | Maven 并行 | 无 | `-T 1C -Dmaven.artifact.threads=8` |
 | Harbor push | 串行 | 可并行(`HARBOR_PUSH_PARALLEL`) |
-| Docker build | 旧 builder | `DOCKER_BUILDKIT=1` |
+| Docker build | BuildKit(需 buildx) | 经典 builder(节点无 buildx 时稳定) |
 | Deploy | 串行 7 次 `sh` | `parallel` |
 | 并发构建 | 允许(产生 `@2` 工作区) | `disableConcurrentBuilds()` |
 | Harbor prune | bash `mapfile`(易失败) | POSIX `sh` + `catchError` |