Skip to content

Commit e82e9a8

Browse files
committed
MLE-24579 Fixed PR test stage
Also formatted the file so it's pretty. Only functional change though is on line 181, which ensures that the stage still completes even if tests fail.
1 parent 541b720 commit e82e9a8

File tree

1 file changed

+64
-62
lines changed

1 file changed

+64
-62
lines changed

Jenkinsfile

Lines changed: 64 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
@Library('shared-libraries') _
22

3-
def getJava(){
3+
def getJava() {
44
if (env.JAVA_VERSION == "JAVA21") {
55
return "/home/builder/java/jdk-21.0.1"
66
} else {
77
return "/home/builder/java/jdk-17.0.2"
88
}
99
}
1010

11-
def setupDockerMarkLogic(String image){
11+
def setupDockerMarkLogic(String image) {
1212
cleanupDocker()
13-
sh label:'mlsetup', script: '''#!/bin/bash
13+
sh label: 'mlsetup', script: '''#!/bin/bash
1414
echo "Removing any running MarkLogic server and clean up MarkLogic data directory"
1515
sudo /usr/local/sbin/mladmin remove
1616
sudo /usr/local/sbin/mladmin cleandata
1717
cd java-client-api
1818
docker compose down -v || true
1919
docker volume prune -f
20-
echo "Using image: "'''+image+'''
21-
docker pull '''+image+'''
22-
MARKLOGIC_IMAGE='''+image+''' MARKLOGIC_LOGS_VOLUME=marklogicLogs docker compose up -d --build
20+
echo "Using image: "''' + image + '''
21+
docker pull ''' + image + '''
22+
MARKLOGIC_IMAGE=''' + image + ''' MARKLOGIC_LOGS_VOLUME=marklogicLogs docker compose up -d --build
2323
echo "Waiting for MarkLogic server to initialize."
2424
sleep 60s
2525
export JAVA_HOME=$JAVA_HOME_DIR
@@ -33,7 +33,7 @@ def setupDockerMarkLogic(String image){
3333
def runTests(String image) {
3434
setupDockerMarkLogic(image)
3535

36-
sh label:'run marklogic-client-api tests', script: '''#!/bin/bash
36+
sh label: 'run marklogic-client-api tests', script: '''#!/bin/bash
3737
export JAVA_HOME=$JAVA_HOME_DIR
3838
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
3939
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
@@ -44,7 +44,7 @@ def runTests(String image) {
4444
./gradlew marklogic-client-api:test || true
4545
'''
4646

47-
sh label:'run ml-development-tools tests', script: '''#!/bin/bash
47+
sh label: 'run ml-development-tools tests', script: '''#!/bin/bash
4848
export JAVA_HOME=$JAVA_HOME_DIR
4949
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
5050
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
@@ -53,7 +53,7 @@ def runTests(String image) {
5353
./gradlew ml-development-tools:test || true
5454
'''
5555

56-
sh label:'run fragile functional tests', script: '''#!/bin/bash
56+
sh label: 'run fragile functional tests', script: '''#!/bin/bash
5757
export JAVA_HOME=$JAVA_HOME_DIR
5858
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
5959
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
@@ -62,15 +62,15 @@ def runTests(String image) {
6262
./gradlew marklogic-client-api-functionaltests:runFragileTests || true
6363
'''
6464

65-
sh label:'run fast functional tests', script: '''#!/bin/bash
65+
sh label: 'run fast functional tests', script: '''#!/bin/bash
6666
export JAVA_HOME=$JAVA_HOME_DIR
6767
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
6868
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
6969
cd java-client-api
7070
./gradlew marklogic-client-api-functionaltests:runFastFunctionalTests || true
7171
'''
7272

73-
sh label:'run slow functional tests', script: '''#!/bin/bash
73+
sh label: 'run slow functional tests', script: '''#!/bin/bash
7474
export JAVA_HOME=$JAVA_HOME_DIR
7575
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
7676
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
@@ -84,23 +84,23 @@ def runTests(String image) {
8484
def runTestsWithReverseProxy(String image) {
8585
setupDockerMarkLogic(image)
8686

87-
sh label:'run fragile functional tests with reverse proxy', script: '''#!/bin/bash
87+
sh label: 'run fragile functional tests with reverse proxy', script: '''#!/bin/bash
8888
export JAVA_HOME=$JAVA_HOME_DIR
8989
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
9090
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
9191
cd java-client-api
9292
./gradlew -PtestUseReverseProxyServer=true test-app:runReverseProxyServer marklogic-client-api-functionaltests:runFragileTests || true
9393
'''
9494

95-
sh label:'run fast functional tests with reverse proxy', script: '''#!/bin/bash
95+
sh label: 'run fast functional tests with reverse proxy', script: '''#!/bin/bash
9696
export JAVA_HOME=$JAVA_HOME_DIR
9797
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
9898
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
9999
cd java-client-api
100100
./gradlew -PtestUseReverseProxyServer=true test-app:runReverseProxyServer marklogic-client-api-functionaltests:runFastFunctionalTests || true
101101
'''
102102

103-
sh label:'run slow functional tests with reverse proxy', script: '''#!/bin/bash
103+
sh label: 'run slow functional tests with reverse proxy', script: '''#!/bin/bash
104104
export JAVA_HOME=$JAVA_HOME_DIR
105105
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
106106
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
@@ -112,7 +112,7 @@ def runTestsWithReverseProxy(String image) {
112112
}
113113

114114
def postProcessTestResults() {
115-
sh label:'post-test-process', script: '''
115+
sh label: 'post-test-process', script: '''
116116
cd java-client-api
117117
mkdir -p marklogic-client-api-functionaltests/build/test-results/runFragileTests
118118
mkdir -p marklogic-client-api-functionaltests/build/test-results/runFastFunctionalTests
@@ -131,88 +131,90 @@ def postProcessTestResults() {
131131
}
132132

133133
def tearDownDocker() {
134-
sh label:'tearDownDocker', script: '''#!/bin/bash
134+
sh label: 'tearDownDocker', script: '''#!/bin/bash
135135
cd java-client-api
136136
docker compose down -v || true
137137
docker volume prune -f
138138
'''
139139
cleanupDocker()
140140
}
141141

142-
pipeline{
143-
agent {label 'javaClientLinuxPool'}
142+
pipeline {
143+
agent { label 'javaClientLinuxPool' }
144144

145-
options {
146-
checkoutToSubdirectory 'java-client-api'
147-
buildDiscarder logRotator(artifactDaysToKeepStr: '7', artifactNumToKeepStr: '', daysToKeepStr: '7', numToKeepStr: '10')
148-
}
145+
options {
146+
checkoutToSubdirectory 'java-client-api'
147+
buildDiscarder logRotator(artifactDaysToKeepStr: '7', artifactNumToKeepStr: '', daysToKeepStr: '7', numToKeepStr: '10')
148+
}
149149

150-
parameters {
151-
booleanParam(name: 'regressions', defaultValue: false, description: 'indicator if build is for regressions')
152-
string(name: 'Email', defaultValue: '' ,description: 'Who should I say send the email to?')
153-
string(name: 'JAVA_VERSION', defaultValue: 'JAVA8' ,description: 'Who should I say send the email to?')
154-
}
150+
parameters {
151+
booleanParam(name: 'regressions', defaultValue: false, description: 'indicator if build is for regressions')
152+
string(name: 'Email', defaultValue: '', description: 'Who should I say send the email to?')
153+
string(name: 'JAVA_VERSION', defaultValue: 'JAVA8', description: 'Who should I say send the email to?')
154+
}
155155

156-
environment {
157-
JAVA_HOME_DIR= getJava()
158-
GRADLE_DIR =".gradle"
159-
DMC_USER = credentials('MLBUILD_USER')
160-
DMC_PASSWORD = credentials('MLBUILD_PASSWORD')
161-
}
156+
environment {
157+
JAVA_HOME_DIR = getJava()
158+
GRADLE_DIR = ".gradle"
159+
DMC_USER = credentials('MLBUILD_USER')
160+
DMC_PASSWORD = credentials('MLBUILD_PASSWORD')
161+
}
162162

163-
stages {
164-
stage('pull-request-tests') {
165-
when {
166-
not {
167-
expression {return params.regressions}
168-
}
169-
}
170-
steps {
171-
setupDockerMarkLogic("ml-docker-db-dev-tierpoint.bed-artifactory.bedford.progress.com/marklogic/marklogic-server-ubi-rootless:11.3.2-ubi-rootless-2.2.2")
172-
sh label:'run marklogic-client-api tests', script: '''#!/bin/bash
163+
stages {
164+
stage('pull-request-tests') {
165+
when {
166+
not {
167+
expression { return params.regressions }
168+
}
169+
}
170+
steps {
171+
setupDockerMarkLogic("ml-docker-db-dev-tierpoint.bed-artifactory.bedford.progress.com/marklogic/marklogic-server-ubi-rootless:11.3.2-ubi-rootless-2.2.2")
172+
sh label: 'run marklogic-client-api tests', script: '''#!/bin/bash
173173
export JAVA_HOME=$JAVA_HOME_DIR
174174
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
175175
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
176176
cd java-client-api
177177
// Ensure all modules can be built first.
178178
./gradlew clean build -x test
179-
./gradlew cleanTest marklogic-client-api:test
179+
180+
// Run a sufficient number of tests to verify the PR.
181+
./gradlew cleanTest marklogic-client-api:test || true
180182
'''
181183
// Omitting this until MLE-24523 can be addressed
182184
// ./gradlew -PtestUseReverseProxyServer=true test-app:runReverseProxyServer marklogic-client-api-functionaltests:runFastFunctionalTests || true
183-
junit '**/build/**/TEST*.xml'
184-
}
185+
junit '**/build/**/TEST*.xml'
186+
}
185187
post {
186188
always {
187189
updateWorkspacePermissions()
188190
tearDownDocker()
189191
}
190192
}
191-
}
192-
stage('publish'){
193-
when {
194-
branch 'develop'
195-
not {
196-
expression {return params.regressions}
197-
}
198-
}
199-
steps{
200-
sh label:'publish', script: '''#!/bin/bash
193+
}
194+
stage('publish') {
195+
when {
196+
branch 'develop'
197+
not {
198+
expression { return params.regressions }
199+
}
200+
}
201+
steps {
202+
sh label: 'publish', script: '''#!/bin/bash
201203
export JAVA_HOME=$JAVA_HOME_DIR
202204
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
203205
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
204206
cp ~/.gradle/gradle.properties $GRADLE_USER_HOME;
205207
cd java-client-api
206208
./gradlew publish
207209
'''
208-
}
209-
}
210+
}
211+
}
210212

211213
stage('regressions-11') {
212214
when {
213215
allOf {
214216
branch 'develop'
215-
expression {return params.regressions}
217+
expression { return params.regressions }
216218
}
217219
}
218220
steps {
@@ -251,7 +253,7 @@ pipeline{
251253
when {
252254
allOf {
253255
branch 'develop'
254-
expression {return params.regressions}
256+
expression { return params.regressions }
255257
}
256258
}
257259
steps {
@@ -270,7 +272,7 @@ pipeline{
270272
when {
271273
allOf {
272274
branch 'develop'
273-
expression {return params.regressions}
275+
expression { return params.regressions }
274276
}
275277
}
276278
steps {
@@ -285,5 +287,5 @@ pipeline{
285287
}
286288
}
287289

288-
}
290+
}
289291
}

0 commit comments

Comments
 (0)