@@ -35,11 +35,23 @@ pipeline {
35
35
description : ' previous major PSMDB version for upgrade tests (leave blank to skip)' ,
36
36
name : ' PREV_MAJ_PSMDB_VERSION'
37
37
)
38
+ string(
39
+ defaultValue : ' 6.0.4' ,
40
+ description : ' next major PSMDB version for upgrade tests (leave blank to skip)' ,
41
+ name : ' NEXT_MAJ_PSMDB_VERSION'
42
+ )
38
43
string(
39
44
defaultValue : ' main' ,
40
45
description : ' base Branch for upgrade test' ,
41
46
name : ' TESTING_BRANCH' )
42
-
47
+ choice(
48
+ name : ' functionaltests' ,
49
+ choices : [' no' ,' yes' ],
50
+ description : ' run functional tests' )
51
+ choice(
52
+ name : ' no_encryption' ,
53
+ choices : [' no' ,' yes' ],
54
+ description : ' check upgrade without encryption' )
43
55
}
44
56
options {
45
57
withCredentials(moleculePbmJenkinsCreds())
@@ -50,17 +62,25 @@ pipeline {
50
62
parallel {
51
63
stage (' functional tests' ) {
52
64
steps {
53
- build job : ' psmdb-parallel' , parameters : [
54
- string(name : ' REPO' , value : " ${ env.REPO} " ),
55
- string(name : ' PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
56
- string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
57
- ]
65
+ script {
66
+ if (params. integrationtests == " yes" ) {
67
+ build job : ' psmdb-parallel' , parameters : [
68
+ string(name : ' REPO' , value : " ${ env.REPO} " ),
69
+ string(name : ' PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
70
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
71
+ ]
72
+ }
73
+ else {
74
+ echo ' skipped functional tests'
75
+ }
76
+ }
77
+
58
78
}
59
79
}
60
80
stage(' upgrade from minor version without encryption' ) {
61
81
steps {
62
82
script {
63
- if (env. PREV_MIN_PSMDB_VERSION != ' ' ) {
83
+ if (( env. PREV_MIN_PSMDB_VERSION != ' ' ) && (params . no_encryption == " yes " ) ) {
64
84
build job : " psmdb-upgrade-parallel" , parameters : [
65
85
string(name : ' TO_REPO' , value : " ${ env.REPO} " ),
66
86
string(name : ' FROM_REPO' , value : " release" ),
@@ -77,7 +97,7 @@ pipeline {
77
97
}
78
98
}
79
99
}
80
- stage(' upgrade from minor vesrsion with vault encryption' ) {
100
+ stage(' upgrade from minor version with vault encryption' ) {
81
101
steps {
82
102
script {
83
103
if (env. PREV_MIN_PSMDB_VERSION != ' ' ) {
@@ -97,10 +117,30 @@ pipeline {
97
117
}
98
118
}
99
119
}
100
- stage(' upgrade from major version without encryption' ) {
120
+ stage(' upgrade from minor version with KMIP encryption' ) {
101
121
steps {
102
122
script {
103
- if (env. PREV_MAJ_PSMDB_VERSION != ' ' ) {
123
+ if (env. PREV_MIN_PSMDB_VERSION != ' ' ) {
124
+ build job : " psmdb-upgrade-parallel" , parameters : [
125
+ string(name : ' TO_REPO' , value : " ${ env.REPO} " ),
126
+ string(name : ' FROM_REPO' , value : " release" ),
127
+ string(name : ' TO_PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
128
+ string(name : ' FROM_PSMDB_VERSION' , value : " ${ env.PREV_MIN_PSMDB_VERSION} " ),
129
+ string(name : ' ENCRYPTION' , value : " KMIP" ),
130
+ string(name : ' CIPHER' , value : " AES256-CBC" ),
131
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
132
+ ]
133
+ }
134
+ else {
135
+ echo ' skipped upgrade from minor version'
136
+ }
137
+ }
138
+ }
139
+ }
140
+ stage(' upgrade from prev major version without encryption' ) {
141
+ steps {
142
+ script {
143
+ if ((env. PREV_MIN_PSMDB_VERSION != ' ' ) && (params. no_encryption == " yes" )) {
104
144
build job : " psmdb-upgrade-parallel" , parameters : [
105
145
string(name : ' TO_REPO' , value : " ${ env.REPO} " ),
106
146
string(name : ' FROM_REPO' , value : " release" ),
@@ -117,7 +157,7 @@ pipeline {
117
157
}
118
158
}
119
159
}
120
- stage(' upgrade from major version with vault encryption' ) {
160
+ stage(' upgrade from prev major version with vault encryption' ) {
121
161
steps {
122
162
script {
123
163
if (env. PREV_MAJ_PSMDB_VERSION != ' ' ) {
@@ -137,10 +177,90 @@ pipeline {
137
177
}
138
178
}
139
179
}
180
+ stage(' upgrade from prev major version with KMIP encryption' ) {
181
+ steps {
182
+ script {
183
+ if (env. PREV_MAJ_PSMDB_VERSION != ' ' ) {
184
+ build job : " psmdb-upgrade-parallel" , parameters : [
185
+ string(name : ' TO_REPO' , value : " ${ env.REPO} " ),
186
+ string(name : ' FROM_REPO' , value : " release" ),
187
+ string(name : ' TO_PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
188
+ string(name : ' FROM_PSMDB_VERSION' , value : " ${ env.PREV_MAJ_PSMDB_VERSION} " ),
189
+ string(name : ' ENCRYPTION' , value : " KMIP" ),
190
+ string(name : ' CIPHER' , value : " AES256-CBC" ),
191
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
192
+ ]
193
+ }
194
+ else {
195
+ echo ' skipped upgrade from major version'
196
+ }
197
+ }
198
+ }
199
+ }
200
+ stage(' upgrade to next major version without encryption' ) {
201
+ steps {
202
+ script {
203
+ if ((env. PREV_MIN_PSMDB_VERSION != ' ' ) && (params. no_encryption == " yes" )) {
204
+ build job : " psmdb-upgrade-parallel" , parameters : [
205
+ string(name : ' TO_REPO' , value : " release" ),
206
+ string(name : ' FROM_REPO' , value : " ${ env.REPO} " ),
207
+ string(name : ' TO_PSMDB_VERSION' , value : " ${ env.NEXT_MAJ_PSMDB_VERSION} " ),
208
+ string(name : ' FROM_PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
209
+ string(name : ' ENCRYPTION' , value : " NONE" ),
210
+ string(name : ' CIPHER' , value : " AES256-CBC" ),
211
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
212
+ ]
213
+ }
214
+ else {
215
+ echo ' skipped upgrade to major version'
216
+ }
217
+ }
218
+ }
219
+ }
220
+ stage(' upgrade to next major version with vault encryption' ) {
221
+ steps {
222
+ script {
223
+ if (env. NEXT_MAJ_PSMDB_VERSION != ' ' ) {
224
+ build job : " psmdb-upgrade-parallel" , parameters : [
225
+ string(name : ' TO_REPO' , value : " release" ),
226
+ string(name : ' FROM_REPO' , value : " ${ env.REPO} " ),
227
+ string(name : ' TO_PSMDB_VERSION' , value : " ${ env.NEXT_MAJ_PSMDB_VERSION} " ),
228
+ string(name : ' FROM_PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
229
+ string(name : ' ENCRYPTION' , value : " VAULT" ),
230
+ string(name : ' CIPHER' , value : " AES256-CBC" ),
231
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
232
+ ]
233
+ }
234
+ else {
235
+ echo ' skipped upgrade to major version'
236
+ }
237
+ }
238
+ }
239
+ }
240
+ stage(' upgrade to next major version with KMIP encryption' ) {
241
+ steps {
242
+ script {
243
+ if (env. NEXT_MAJ_PSMDB_VERSION != ' ' ) {
244
+ build job : " psmdb-upgrade-parallel" , parameters : [
245
+ string(name : ' TO_REPO' , value : " release" ),
246
+ string(name : ' FROM_REPO' , value : " ${ env.REPO} " ),
247
+ string(name : ' TO_PSMDB_VERSION' , value : " ${ env.NEXT_MAJ_PSMDB_VERSION} " ),
248
+ string(name : ' FROM_PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
249
+ string(name : ' ENCRYPTION' , value : " KMIP" ),
250
+ string(name : ' CIPHER' , value : " AES256-CBC" ),
251
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
252
+ ]
253
+ }
254
+ else {
255
+ echo ' skipped upgrade to major version'
256
+ }
257
+ }
258
+ }
259
+ }
140
260
stage(' downgrade to minor version without encryption' ) {
141
261
steps {
142
262
script {
143
- if (env. PREV_MIN_PSMDB_VERSION != ' ' ) {
263
+ if (( env. PREV_MIN_PSMDB_VERSION != ' ' ) && (params . no_encryption == " yes " ) ) {
144
264
build job : " psmdb-upgrade-parallel" , parameters : [
145
265
string(name : ' TO_REPO' , value : " release" ),
146
266
string(name : ' FROM_REPO' , value : " ${ env.REPO} " ),
@@ -177,10 +297,30 @@ pipeline {
177
297
}
178
298
}
179
299
}
180
- stage(' downgrade to major version without encryption' ) {
300
+ stage(' downgrade to minor version with KMIP encryption' ) {
181
301
steps {
182
302
script {
183
- if (env. PREV_MAJ_PSMDB_VERSION != ' ' ) {
303
+ if (env. PREV_MIN_PSMDB_VERSION != ' ' ) {
304
+ build job : " psmdb-upgrade-parallel" , parameters : [
305
+ string(name : ' TO_REPO' , value : " release" ),
306
+ string(name : ' FROM_REPO' , value : " ${ env.REPO} " ),
307
+ string(name : ' TO_PSMDB_VERSION' , value : " ${ env.PREV_MIN_PSMDB_VERSION} " ),
308
+ string(name : ' FROM_PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
309
+ string(name : ' ENCRYPTION' , value : " KMIP" ),
310
+ string(name : ' CIPHER' , value : " AES256-CBC" ),
311
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
312
+ ]
313
+ }
314
+ else {
315
+ echo ' skipped downgrade to minor version'
316
+ }
317
+ }
318
+ }
319
+ }
320
+ stage(' downgrade to prev major version without encryption' ) {
321
+ steps {
322
+ script {
323
+ if ((env. PREV_MIN_PSMDB_VERSION != ' ' ) && (params. no_encryption == " yes" )) {
184
324
build job : " psmdb-upgrade-parallel" , parameters : [
185
325
string(name : ' TO_REPO' , value : " release" ),
186
326
string(name : ' FROM_REPO' , value : " ${ env.REPO} " ),
@@ -197,7 +337,7 @@ pipeline {
197
337
}
198
338
}
199
339
}
200
- stage(' downgrade to major version with vault encryption' ) {
340
+ stage(' downgrade to prev major version with vault encryption' ) {
201
341
steps {
202
342
script {
203
343
if (env. PREV_MAJ_PSMDB_VERSION != ' ' ) {
@@ -217,6 +357,86 @@ pipeline {
217
357
}
218
358
}
219
359
}
360
+ stage(' downgrade to prev major version with KMIP encryption' ) {
361
+ steps {
362
+ script {
363
+ if (env. PREV_MAJ_PSMDB_VERSION != ' ' ) {
364
+ build job : " psmdb-upgrade-parallel" , parameters : [
365
+ string(name : ' TO_REPO' , value : " release" ),
366
+ string(name : ' FROM_REPO' , value : " ${ env.REPO} " ),
367
+ string(name : ' TO_PSMDB_VERSION' , value : " ${ env.PREV_MAJ_PSMDB_VERSION} " ),
368
+ string(name : ' FROM_PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
369
+ string(name : ' ENCRYPTION' , value : " KMIP" ),
370
+ string(name : ' CIPHER' , value : " AES256-CBC" ),
371
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
372
+ ]
373
+ }
374
+ else {
375
+ echo ' skipped downgrade to major version'
376
+ }
377
+ }
378
+ }
379
+ }
380
+ stage(' downgrade from next major version without encryption' ) {
381
+ steps {
382
+ script {
383
+ if ((env. PREV_MIN_PSMDB_VERSION != ' ' ) && (params. no_encryption == " yes" )) {
384
+ build job : " psmdb-upgrade-parallel" , parameters : [
385
+ string(name : ' TO_REPO' , value : " ${ env.REPO} " ),
386
+ string(name : ' FROM_REPO' , value : " release" ),
387
+ string(name : ' TO_PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
388
+ string(name : ' FROM_PSMDB_VERSION' , value : " ${ env.NEXT_MAJ_PSMDB_VERSION} " ),
389
+ string(name : ' ENCRYPTION' , value : " NONE" ),
390
+ string(name : ' CIPHER' , value : " AES256-CBC" ),
391
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
392
+ ]
393
+ }
394
+ else {
395
+ echo ' skipped downgrade from major version'
396
+ }
397
+ }
398
+ }
399
+ }
400
+ stage(' downgrade from next major version with vault encryption' ) {
401
+ steps {
402
+ script {
403
+ if (env. NEXT_MAJ_PSMDB_VERSION != ' ' ) {
404
+ build job : " psmdb-upgrade-parallel" , parameters : [
405
+ string(name : ' TO_REPO' , value : " ${ env.REPO} " ),
406
+ string(name : ' FROM_REPO' , value : " release" ),
407
+ string(name : ' TO_PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
408
+ string(name : ' FROM_PSMDB_VERSION' , value : " ${ env.NEXT_MAJ_PSMDB_VERSION} " ),
409
+ string(name : ' ENCRYPTION' , value : " VAULT" ),
410
+ string(name : ' CIPHER' , value : " AES256-CBC" ),
411
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
412
+ ]
413
+ }
414
+ else {
415
+ echo ' skipped downgrade from major version'
416
+ }
417
+ }
418
+ }
419
+ }
420
+ stage(' downgrade from next major version with KMIP encryption' ) {
421
+ steps {
422
+ script {
423
+ if (env. NEXT_MAJ_PSMDB_VERSION != ' ' ) {
424
+ build job : " psmdb-upgrade-parallel" , parameters : [
425
+ string(name : ' TO_REPO' , value : " ${ env.REPO} " ),
426
+ string(name : ' FROM_REPO' , value : " release" ),
427
+ string(name : ' TO_PSMDB_VERSION' , value : " ${ env.PSMDB_VERSION} " ),
428
+ string(name : ' FROM_PSMDB_VERSION' , value : " ${ env.NEXT_MAJ_PSMDB_VERSION} " ),
429
+ string(name : ' ENCRYPTION' , value : " KMIP" ),
430
+ string(name : ' CIPHER' , value : " AES256-CBC" ),
431
+ string(name : ' TESTING_BRANCH' , value : " ${ env.TESTING_BRANCH} " )
432
+ ]
433
+ }
434
+ else {
435
+ echo ' skipped downgrade from major version'
436
+ }
437
+ }
438
+ }
439
+ }
220
440
}
221
441
}
222
442
}
0 commit comments