|
|
@@ -84,23 +84,24 @@ def deployToAck(def script, Map cfg) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-def promoteOneServiceToAck(def script, Map svc, Map params, Map env) {
|
|
|
- def regHost = params.HARBOR_REGISTRY.trim()
|
|
|
- def proj = params.HARBOR_PROJECT.trim()
|
|
|
- def srcTag = requireSourceTag(script, params.SOURCE_TAG)
|
|
|
- def tgtTag = resolveTargetTag(script, params.TARGET_TAG)
|
|
|
- def dryRun = params.DRY_RUN == true
|
|
|
- def strategy = params.DEPLOY_STRATEGY ?: 'rolling'
|
|
|
+/** Single-service promote + ACK. Use script.params / script.env (do not pass params/env as args: CPS breaks method dispatch). */
|
|
|
+def promoteOneServiceToAck(def script, Map svc) {
|
|
|
+ def regHost = script.params.HARBOR_REGISTRY.trim()
|
|
|
+ def proj = script.params.HARBOR_PROJECT.trim()
|
|
|
+ def srcTag = requireSourceTag(script, script.params.SOURCE_TAG)
|
|
|
+ def tgtTag = resolveTargetTag(script, script.params.TARGET_TAG)
|
|
|
+ def dryRun = script.params.DRY_RUN == true
|
|
|
+ def strategy = script.params.DEPLOY_STRATEGY ?: 'rolling'
|
|
|
|
|
|
- env.TARGET_TAG_RESOLVED = tgtTag
|
|
|
- env.IMAGE_REF = "${regHost}/${proj}/${svc.prodDir}:${tgtTag}"
|
|
|
+ script.env.TARGET_TAG_RESOLVED = tgtTag
|
|
|
+ script.env.IMAGE_REF = "${regHost}/${proj}/${svc.prodDir}:${tgtTag}"
|
|
|
|
|
|
promoteHarborImages(script, [svc], [
|
|
|
harborRegistry: regHost,
|
|
|
harborProject: proj,
|
|
|
sourceTag: srcTag,
|
|
|
targetTag: tgtTag,
|
|
|
- harborCredentialsId: env.HARBOR_CREDENTIALS,
|
|
|
+ harborCredentialsId: script.env.HARBOR_CREDENTIALS,
|
|
|
dryRun: dryRun,
|
|
|
])
|
|
|
|
|
|
@@ -109,14 +110,14 @@ def promoteOneServiceToAck(def script, Map svc, Map params, Map env) {
|
|
|
}
|
|
|
|
|
|
deployToAck(script, [
|
|
|
- k8sNamespace: params.K8S_NAMESPACE,
|
|
|
- imageRef: env.IMAGE_REF,
|
|
|
+ k8sNamespace: script.params.K8S_NAMESPACE,
|
|
|
+ imageRef: script.env.IMAGE_REF,
|
|
|
deployStrategy: strategy == 'canary' ? 'canary' : 'rolling',
|
|
|
deploymentStable: svc.deployName,
|
|
|
deploymentCanary: "${svc.deployName}-canary",
|
|
|
ingressCanary: "${svc.deployName}-canary",
|
|
|
- canaryWeight: (params.CANARY_WEIGHT ?: '10').trim(),
|
|
|
- kubeCredentialsId: env.KUBECONFIG_CREDENTIALS,
|
|
|
+ canaryWeight: (script.params.CANARY_WEIGHT ?: '10').trim(),
|
|
|
+ kubeCredentialsId: script.env.KUBECONFIG_CREDENTIALS,
|
|
|
])
|
|
|
}
|
|
|
|