fix(ci): JsonSlurper → JsonSlurperClassic 修复 CPS 序列化问题
Jenkins CPS 要求所有变量可序列化,JsonSlurper 返回的 LazyMap 不满足。 Co-Authored-By: Claude <noreply@anthropic.com>
这个提交包含在:
父节点
ba6fb48f5b
当前提交
33ccaa677f
8
Jenkinsfile
vendored
8
Jenkinsfile
vendored
@ -74,7 +74,7 @@ pipeline {
|
||||
steps {
|
||||
withCredentials([string(credentialsId: 'ACR_PASSWORD', variable: 'ACR_PASS')]) {
|
||||
script {
|
||||
def serviceVersions = new groovy.json.JsonSlurper().parseText(env.SERVICE_VERSIONS_JSON)
|
||||
def serviceVersions = new groovy.json.JsonSlurperClassic().parseText(env.SERVICE_VERSIONS_JSON)
|
||||
for (entry in serviceVersions) {
|
||||
def svc = entry.key
|
||||
def ver = entry.value
|
||||
@ -107,7 +107,7 @@ pipeline {
|
||||
lock('prod-deploy') {
|
||||
withCredentials([sshUserPrivateKey(credentialsId: 'PROD_SSH_KEY', keyFileVariable: 'SSH_KEY')]) {
|
||||
script {
|
||||
def serviceVersions = new groovy.json.JsonSlurper().parseText(env.SERVICE_VERSIONS_JSON)
|
||||
def serviceVersions = new groovy.json.JsonSlurperClassic().parseText(env.SERVICE_VERSIONS_JSON)
|
||||
for (entry in serviceVersions) {
|
||||
def svc = entry.key
|
||||
def latestImage = "${ACR_REGISTRY}/${ACR_NAMESPACE}/${svc}:latest"
|
||||
@ -163,7 +163,7 @@ print('versions.json updated, platformVersion=' + d.get('platformVersion', ''))
|
||||
stage('Commit Versions') {
|
||||
steps {
|
||||
script {
|
||||
def serviceVersions = new groovy.json.JsonSlurper().parseText(env.SERVICE_VERSIONS_JSON)
|
||||
def serviceVersions = new groovy.json.JsonSlurperClassic().parseText(env.SERVICE_VERSIONS_JSON)
|
||||
def versionFiles = serviceVersions.keySet().collect { "VERSION.${it}" }.join(' ')
|
||||
def summary = serviceVersions.collect { svc, ver -> "${svc}=${ver}" }.join(', ')
|
||||
bat """
|
||||
@ -182,7 +182,7 @@ print('versions.json updated, platformVersion=' + d.get('platformVersion', ''))
|
||||
post {
|
||||
success {
|
||||
script {
|
||||
def serviceVersions = new groovy.json.JsonSlurper().parseText(env.SERVICE_VERSIONS_JSON ?: '{}')
|
||||
def serviceVersions = new groovy.json.JsonSlurperClassic().parseText(env.SERVICE_VERSIONS_JSON ?: '{}')
|
||||
def summary = serviceVersions.collect { svc, ver -> "${svc}:${ver}" }.join(', ')
|
||||
bat "chcp 65001 >nul && echo ✅ 构建部署成功 — ${summary}"
|
||||
}
|
||||
|
||||
正在加载...
在新工单中引用
屏蔽一个用户