Skip to content

Commit dd25628

Browse files
committed
MLE-30244 move Jenkins registry credentials to the publish stage and validate the MARKLOGIC_IMAGE_TAGS build parameter
1 parent 14b807e commit dd25628

1 file changed

Lines changed: 18 additions & 10 deletions

File tree

Jenkinsfile

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -135,8 +135,6 @@ pipeline {
135135
environment {
136136
JAVA_HOME_DIR = getJavaHomePath()
137137
GRADLE_DIR = ".gradle"
138-
DMC_USER = credentials('MLBUILD_USER')
139-
DMC_PASSWORD = credentials('MLBUILD_PASSWORD')
140138
PLATFORM = "linux/amd64"
141139
MARKLOGIC_INSTALL_CONVERTERS = "true"
142140
}
@@ -189,14 +187,20 @@ pipeline {
189187
}
190188
}
191189
steps {
192-
sh label: 'publish', script: '''#!/bin/bash
193-
export JAVA_HOME=$JAVA_HOME_DIR
194-
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
195-
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
196-
cp ~/.gradle/gradle.properties $GRADLE_USER_HOME;
197-
cd java-client-api
198-
./gradlew publish
199-
'''
190+
withCredentials([usernamePassword(
191+
credentialsId: 'MLBUILD_USER',
192+
usernameVariable: 'DMC_USER',
193+
passwordVariable: 'DMC_PASSWORD'
194+
)]) {
195+
sh label: 'publish', script: '''#!/bin/bash
196+
export JAVA_HOME=$JAVA_HOME_DIR
197+
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
198+
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
199+
cp ~/.gradle/gradle.properties $GRADLE_USER_HOME;
200+
cd java-client-api
201+
./gradlew publish
202+
'''
203+
}
200204
}
201205
post {
202206
always {
@@ -226,6 +230,10 @@ pipeline {
226230

227231
steps {
228232
script {
233+
// Validate MARKLOGIC_IMAGE_TAGS to prevent argument injection via user-supplied image tag values
234+
if (!(params.MARKLOGIC_IMAGE_TAGS ==~ /^[a-zA-Z0-9\-.:,\/ ]+$/)) {
235+
error("Invalid MARKLOGIC_IMAGE_TAGS parameter value: must match ^[a-zA-Z0-9\\-.:,\\/ ]+\$")
236+
}
229237
def imageTags = params.MARKLOGIC_IMAGE_TAGS.split(',')
230238
def imagePrefix = 'ml-docker-db-dev-tierpoint.bed-artifactory.bedford.progress.com/marklogic/'
231239

0 commit comments

Comments
 (0)