Skip to content

Commit ad497c3

Browse files
committed
MLE-24892 Parameterizing image tags in Jenkinsfile
1 parent 1c51f56 commit ad497c3

File tree

1 file changed

+25
-48
lines changed

1 file changed

+25
-48
lines changed

Jenkinsfile

Lines changed: 25 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,7 @@ pipeline {
171171
parameters {
172172
booleanParam(name: 'regressions', defaultValue: false, description: 'indicator if build is for regressions')
173173
string(name: 'JAVA_VERSION', defaultValue: 'JAVA17', description: 'Either JAVA17 or JAVA21')
174+
string(name: 'MARKLOGIC_IMAGE_TAGS', defaultValue: 'marklogic-server-ubi:latest-11,marklogic-server-ubi:latest-12', description: 'Comma-delimited list of MarkLogic image tags including variant (e.g., marklogic-server-ubi:latest-11,marklogic-server-ubi-rootless:11.3.2). The registry/org (ml-docker-db-dev-tierpoint.bed-artifactory.bedford.progress.com/marklogic) path will be prepended automatically.')
174175
}
175176

176177
environment {
@@ -237,60 +238,36 @@ pipeline {
237238
}
238239
}
239240

240-
stage('regressions-11') {
241+
stage('regressions') {
241242
when {
242243
allOf {
243244
branch 'develop'
244245
expression { return params.regressions }
245246
}
246247
}
247-
steps {
248-
runTests("ml-docker-db-dev-tierpoint.bed-artifactory.bedford.progress.com/marklogic/marklogic-server-ubi:latest-11")
249-
}
250-
post {
251-
always {
252-
junit '**/build/**/TEST*.xml'
253-
updateWorkspacePermissions()
254-
tearDownDocker()
255-
}
256-
}
257-
}
258-
259-
// Latest run had 87 errors, which have been added to MLE-24523 for later research.
260-
// stage('regressions-12-reverseProxy') {
261-
// when {
262-
// allOf {
263-
// branch 'develop'
264-
// expression {return params.regressions}
265-
// }
266-
// }
267-
// steps {
268-
// runTestsWithReverseProxy("ml-docker-db-dev-tierpoint.bed-artifactory.bedford.progress.com/marklogic/marklogic-server-ubi:latest-12")
269-
// }
270-
// post {
271-
// always {
272-
// junit '**/build/**/TEST*.xml'
273-
// updateWorkspacePermissions()
274-
// tearDownDocker()
275-
// }
276-
// }
277-
// }
278-
279-
stage('regressions-12') {
280-
when {
281-
allOf {
282-
branch 'develop'
283-
expression { return params.regressions }
284-
}
285-
}
286-
steps {
287-
runTests("ml-docker-db-dev-tierpoint.bed-artifactory.bedford.progress.com/marklogic/marklogic-server-ubi:latest-12")
288-
}
289-
post {
290-
always {
291-
junit '**/build/**/TEST*.xml'
292-
updateWorkspacePermissions()
293-
tearDownDocker()
248+
steps {
249+
script {
250+
def imageTags = params.MARKLOGIC_IMAGE_TAGS.split(',')
251+
def imagePrefix = 'ml-docker-db-dev-tierpoint.bed-artifactory.bedford.progress.com/marklogic/'
252+
253+
def parallelStages = [:]
254+
imageTags.each { tag ->
255+
def fullImage = imagePrefix + tag.trim()
256+
def stageName = "regressions-${tag.trim().replace(':', '-')}"
257+
258+
parallelStages[stageName] = {
259+
stage(stageName) {
260+
try {
261+
runTests(fullImage)
262+
} finally {
263+
junit '**/build/**/TEST*.xml'
264+
updateWorkspacePermissions()
265+
tearDownDocker()
266+
}
267+
}
268+
}
269+
}
270+
parallel parallelStages
294271
}
295272
}
296273
}

0 commit comments

Comments
 (0)