1
+ def p = [:]
2
+ node {
3
+ checkout scm
4
+ p = readProperties interpolate : true , file : ' ci/pipeline.properties'
5
+ }
6
+
1
7
pipeline {
2
8
agent none
3
9
@@ -15,48 +21,57 @@ pipeline {
15
21
stages {
16
22
stage(" Docker images" ) {
17
23
parallel {
18
- stage(' Publish JDK 8 + MongoDB 4.4' ) {
24
+ stage(' Publish JDK (main) + MongoDB 4.4' ) {
19
25
when {
20
- changeset " ci/openjdk8-mongodb-4.4/**"
26
+ anyOf {
27
+ changeset " ci/openjdk8-mongodb-4.4/**"
28
+ changeset " ci/pipeline.properties"
29
+ }
21
30
}
22
31
agent { label ' data' }
23
32
options { timeout(time : 30 , unit : ' MINUTES' ) }
24
33
25
34
steps {
26
35
script {
27
- def image = docker. build(" springci/spring-data-rest-openjdk8- with-mongodb-4.4" , " ci/openjdk8-mongodb-4.4/" )
36
+ def image = docker. build(" springci/spring-data-rest-with-mongodb-4.4: ${ p['java.main.tag'] } " , " --build-arg BASE= ${ p['docker.java.main.image'] } --build-arg MONGODB= ${ p['docker.mongodb.4.4.version'] } ci/openjdk8-mongodb-4.4/" )
28
37
docker. withRegistry(' ' , ' hub.docker.com-springbuildmaster' ) {
29
38
image. push()
30
39
}
31
40
}
32
41
}
33
42
}
34
- stage(' Publish JDK 11 + MongoDB 4.4' ) {
43
+ stage(' Publish JDK (next) + MongoDB 4.4' ) {
35
44
when {
36
- changeset " ci/openjdk11-mongodb-4.4/**"
45
+ anyOf {
46
+ changeset " ci/openjdk11-mongodb-4.4/**"
47
+ changeset " ci/pipeline.properties"
48
+ }
37
49
}
38
50
agent { label ' data' }
39
51
options { timeout(time : 30 , unit : ' MINUTES' ) }
40
52
41
53
steps {
42
54
script {
43
- def image = docker. build(" springci/spring-data-rest-openjdk11- with-mongodb-4.4" , " ci/openjdk8-mongodb-4.4/" )
55
+ def image = docker. build(" springci/spring-data-rest-with-mongodb-4.4: ${ p['java.next.tag'] } " , " --build-arg BASE= ${ p['docker.java.next.image'] } --build-arg MONGODB= ${ p['docker.mongodb.4.4.version'] } ci/openjdk8-mongodb-4.4/" )
44
56
docker. withRegistry(' ' , ' hub.docker.com-springbuildmaster' ) {
45
57
image. push()
46
58
}
47
59
}
48
60
}
49
61
}
50
- stage(' Publish JDK 17/ + MongoDB 4.4' ) {
62
+ stage(' Publish JDK (LTS) + MongoDB 4.4' ) {
51
63
when {
52
- changeset " ci/openjdk17-mongodb-4.4/**"
64
+ anyOf {
65
+ changeset " ci/openjdk17-mongodb-4.4/**"
66
+ changeset " ci/pipeline.properties"
67
+ }
53
68
}
54
69
agent { label ' data' }
55
70
options { timeout(time : 30 , unit : ' MINUTES' ) }
56
71
57
72
steps {
58
73
script {
59
- def image = docker. build(" springci/spring-data-rest-openjdk17- with-mongodb-4.4" , " ci/openjdk17-mongodb-4.4/" )
74
+ def image = docker. build(" springci/spring-data-rest-with-mongodb-4.4: ${ p['java.lts.tag'] } " , " --build-arg BASE= ${ p['docker.java.lts.image'] } --build-arg MONGODB= ${ p['docker.mongodb.4.4.version'] } ci/openjdk17-mongodb-4.4/" )
60
75
docker. withRegistry(' ' , ' hub.docker.com-springbuildmaster' ) {
61
76
image. push()
62
77
}
@@ -66,7 +81,7 @@ pipeline {
66
81
}
67
82
}
68
83
69
- stage(" test: baseline (jdk8 )" ) {
84
+ stage(" test: baseline (main )" ) {
70
85
when {
71
86
beforeAgent(true )
72
87
anyOf {
@@ -84,7 +99,7 @@ pipeline {
84
99
steps {
85
100
script {
86
101
docker. withRegistry(' ' , ' hub.docker.com-springbuildmaster' ) {
87
- docker. image(' springci/spring-data-rest-openjdk8- with-mongodb-4.4:latest ' ). inside(' -v $HOME:/tmp/jenkins-home ' ) {
102
+ docker. image(" springci/spring-data-rest-with-mongodb-4.4:${ p['java.main.tag'] } " ). inside(p[ ' docker.java.inside.basic ' ] ) {
88
103
sh ' mkdir -p /tmp/mongodb/db /tmp/mongodb/log'
89
104
sh ' mongod --dbpath /tmp/mongodb/db --replSet rs0 --fork --logpath /tmp/mongodb/log/mongod.log &'
90
105
sh ' sleep 10'
@@ -106,7 +121,7 @@ pipeline {
106
121
}
107
122
}
108
123
parallel {
109
- stage(" test: baseline (jdk11 )" ) {
124
+ stage(" test: baseline (next )" ) {
110
125
agent {
111
126
label ' data'
112
127
}
@@ -117,7 +132,7 @@ pipeline {
117
132
steps {
118
133
script {
119
134
docker. withRegistry(' ' , ' hub.docker.com-springbuildmaster' ) {
120
- docker. image(' springci/spring-data-rest-openjdk11- with-mongodb-4.4:latest ' ). inside(' -v $HOME:/tmp/jenkins-home ' ) {
135
+ docker. image(" springci/spring-data-rest-with-mongodb-4.4:${ p['java.next.tag'] } " ). inside(p[ ' docker.java.inside.basic ' ] ) {
121
136
sh ' mkdir -p /tmp/mongodb/db /tmp/mongodb/log'
122
137
sh ' mongod --dbpath /tmp/mongodb/db --replSet rs0 --fork --logpath /tmp/mongodb/log/mongod.log &'
123
138
sh ' sleep 10'
@@ -129,7 +144,7 @@ pipeline {
129
144
}
130
145
}
131
146
}
132
- stage(" test: baseline (JDK 17 )" ) {
147
+ stage(" test: baseline (LTS )" ) {
133
148
agent {
134
149
label ' data'
135
150
}
@@ -140,7 +155,7 @@ pipeline {
140
155
steps {
141
156
script {
142
157
docker. withRegistry(' ' , ' hub.docker.com-springbuildmaster' ) {
143
- docker. image(' springci/spring-data-rest-openjdk17- with-mongodb-4.4:latest ' ). inside(' -v $HOME:/tmp/jenkins-home ' ) {
158
+ docker. image(" springci/spring-data-rest-with-mongodb-4.4:${ p['java.lts.tag'] } " ). inside(p[ ' docker.java.inside.basic ' ] ) {
144
159
sh ' mkdir -p /tmp/mongodb/db /tmp/mongodb/log'
145
160
sh ' mongod --dbpath /tmp/mongodb/db --replSet rs0 --fork --logpath /tmp/mongodb/log/mongod.log &'
146
161
sh ' sleep 10'
@@ -152,7 +167,7 @@ pipeline {
152
167
}
153
168
}
154
169
}
155
- stage(" test: spring53-next (jdk8 )" ) {
170
+ stage(" test: spring53-next (main )" ) {
156
171
agent {
157
172
label ' data'
158
173
}
@@ -163,7 +178,7 @@ pipeline {
163
178
steps {
164
179
script {
165
180
docker. withRegistry(' ' , ' hub.docker.com-springbuildmaster' ) {
166
- docker. image(' springci/spring-data-rest-openjdk8- with-mongodb-4.4:latest ' ). inside(' -v $HOME:/tmp/jenkins-home ' ) {
181
+ docker. image(" springci/spring-data-rest-with-mongodb-4.4:${ p['java.main.tag'] } " ). inside(p[ ' docker.java.inside.basic ' ] ) {
167
182
sh ' mkdir -p /tmp/mongodb/db /tmp/mongodb/log'
168
183
sh ' mongod --dbpath /tmp/mongodb/db --replSet rs0 --fork --logpath /tmp/mongodb/log/mongod.log &'
169
184
sh ' sleep 10'
@@ -175,7 +190,7 @@ pipeline {
175
190
}
176
191
}
177
192
}
178
- stage(" test: spring53-next (JDK 17 )" ) {
193
+ stage(" test: spring53-next (LTS )" ) {
179
194
agent {
180
195
label ' data'
181
196
}
@@ -186,7 +201,7 @@ pipeline {
186
201
steps {
187
202
script {
188
203
docker. withRegistry(' ' , ' hub.docker.com-springbuildmaster' ) {
189
- docker. image(' springci/spring-data-rest-openjdk17- with-mongodb-4.4:latest ' ). inside(' -v $HOME:/tmp/jenkins-home ' ) {
204
+ docker. image(" springci/spring-data-rest-with-mongodb-4.4:${ p['java.lts.tag'] } " ). inside(p[ ' docker.java.inside.basic ' ] ) {
190
205
sh ' mkdir -p /tmp/mongodb/db /tmp/mongodb/log'
191
206
sh ' mongod --dbpath /tmp/mongodb/db --replSet rs0 --fork --logpath /tmp/mongodb/log/mongod.log &'
192
207
sh ' sleep 10'
@@ -221,7 +236,7 @@ pipeline {
221
236
steps {
222
237
script {
223
238
docker. withRegistry(' ' , ' hub.docker.com-springbuildmaster' ) {
224
- docker. image(' adoptopenjdk/openjdk8:latest ' ). inside(' -v $HOME:/tmp/jenkins-home ' ) {
239
+ docker. image(p[ ' docker.java.main.image ' ] ). inside(p[ ' docker.java.inside.basic ' ] ) {
225
240
sh ' MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -s settings.xml -Pci,artifactory ' +
226
241
' -Dartifactory.server=https://repo.spring.io ' +
227
242
" -Dartifactory.username=${ ARTIFACTORY_USR} " +
0 commit comments