1
1
@Library (' shared-libraries' ) _
2
+
3
+ def runtests (String mlVersionType , String mlVersion , String javaVersion ){
4
+ copyRPM mlVersionType,mlVersion
5
+ setUpML ' $WORKSPACE/xdmp/src/Mark*.rpm'
6
+ sh label :' test' , script : ''' #!/bin/bash
7
+ export JAVA_HOME=$''' + javaVersion+ '''
8
+ export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
9
+ export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
10
+ cd marklogic-spark-connector
11
+ echo "mlPassword=admin" > gradle-local.properties
12
+ ./gradlew -i mlDeploy
13
+ ./gradlew test || true
14
+ '''
15
+ junit ' **/build/**/*.xml'
16
+ }
17
+
2
18
pipeline{
3
- agent {label ' devExpLinuxPool' }
19
+ agent none
20
+ triggers{
21
+ parameterizedCron(env. BRANCH_NAME == " develop" ? " 00 02 * * * % regressions=true" : " " )
22
+ }
4
23
options {
5
24
checkoutToSubdirectory ' marklogic-spark-connector'
6
25
buildDiscarder logRotator(artifactDaysToKeepStr : ' 7' , artifactNumToKeepStr : ' ' , daysToKeepStr : ' 30' , numToKeepStr : ' ' )
7
26
}
8
27
environment{
9
- JAVA_HOME_DIR = " /home/builder/java/openjdk-1.8.0-262"
28
+ JAVA8_HOME_DIR = " /home/builder/java/openjdk-1.8.0-262"
29
+ JAVA11_HOME_DIR = " /home/builder/java/jdk-11.0.2"
30
+ JAVA17_HOME_DIR = " /home/builder/java/jdk-17.0.2"
10
31
GRADLE_DIR = " .gradle"
11
32
DMC_USER = credentials(' MLBUILD_USER' )
12
33
DMC_PASSWORD = credentials(' MLBUILD_PASSWORD' )
13
34
}
14
35
stages{
15
36
stage(' tests' ){
37
+ agent {label ' devExpLinuxPool' }
16
38
steps{
17
- copyRPM ' Latest' ,' 11'
18
- setUpML ' $WORKSPACE/xdmp/src/Mark*.rpm'
19
- sh label :' test' , script : ''' #!/bin/bash
20
- export JAVA_HOME=$JAVA_HOME_DIR
21
- export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
22
- export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
23
- cd marklogic-spark-connector
24
- echo "mlPassword=admin" > gradle-local.properties
25
- ./gradlew -i mlDeploy
26
- ./gradlew test || true
27
- '''
28
- junit ' **/build/**/*.xml'
39
+ runtests(' Latest' ,' 11' ,' JAVA8_HOME_DIR' )
29
40
}
30
41
}
31
42
stage(' publish' ){
43
+ agent {label ' devExpLinuxPool' }
32
44
when {
33
45
branch ' develop'
34
46
}
@@ -43,5 +55,39 @@ pipeline{
43
55
'''
44
56
}
45
57
}
58
+ stage(' regressions' ){
59
+ when{
60
+ allOf{
61
+ branch ' develop'
62
+ expression {return params. regressions}
63
+ }
64
+ }
65
+ parallel{
66
+ stage(' 11-nightly-java11' ){
67
+ agent {label ' devExpLinuxPool' }
68
+ steps{
69
+ runtests(' Latest' ,' 11' ,' JAVA11_HOME_DIR' )
70
+ }
71
+ }
72
+ stage(' 11-nightly-java17' ){
73
+ agent {label ' devExpLinuxPool' }
74
+ steps{
75
+ runtests(' Latest' ,' 11' ,' JAVA17_HOME_DIR' )
76
+ }
77
+ }
78
+ stage(' 10.0-9.5-java11' ){
79
+ agent {label ' devExpLinuxPool' }
80
+ steps{
81
+ runtests(' Release' ,' 10.0-9.5' ,' JAVA11_HOME_DIR' )
82
+ }
83
+ }
84
+ stage(' 10.0-9.5-nightly-java17' ){
85
+ agent {label ' devExpLinuxPool' }
86
+ steps{
87
+ runtests(' Release' ,' 10.0-9.5' ,' JAVA17_HOME_DIR' )
88
+ }
89
+ }
90
+ }
91
+ }
46
92
}
47
93
}
0 commit comments