-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
Jenkins 2.226
When stages within a matrix are skipped using the 'when' directive, the pipeline result is not rendered correctly. The first cell of the matrix is correctly shown as 'Skipped', however subsequent cells are shown as 'Passed' (in 0s). This is very confusing.
#!groovy pipeline { agent none parameters { booleanParam( name: 'matrix', defaultValue: true ) booleanParam( name: 'parallel', defaultValue: true ) } stages { stage( 'matrix' ) { matrix { axes { axis { name 'server' values 'server-one', 'server-two' } } stages { stage( 'matrix' ) { agent { label "${server}" } when { expression { params.matrix } } steps { echo "matrix ${server}" } } } } } stage( 'parallel' ) { parallel { stage( 'parallel-one' ) { agent { label 'server-one' } when { expression { params.parallel } } steps { echo 'parallel-one' } } stage( 'parallel-two' ) { agent { label 'server-two' } when { expression { params.parallel } } steps { echo 'parallel-two' } } } } } // stages } // pipeline
[JENKINS-61658] Blue Ocean Pipeline: only first skipped cell of matrix shown as skipped
Description |
Original:
When stages within a matrix are skipped using the when, directive, the build is not rendered correctly. The first cell of the matrix is correctly shown as 'Skipped', the subsequent cells are shown as 'Passed' (in 0s). This is very confusing. {noformat} #!groovy pipeline { agent none parameters { booleanParam( name: 'matrix', defaultValue: true ) booleanParam( name: 'parallel', defaultValue: true ) } stages { stage( 'matrix' ) { matrix { axes { axis { name 'server' values 'server-one', 'server-two' } } stages { stage( 'matrix' ) { agent { label "${server}" } when { expression { params.matrix } } steps { echo "matrix ${server}" } } } } } stage( 'parallel' ) { parallel { stage( 'parallel-one' ) { agent { label 'server-one' } when { expression { params.parallel } } steps { echo 'parallel-one' } } stage( 'parallel-two' ) { agent { label 'server-two' } when { expression { params.parallel } } steps { echo 'parallel-two' } } } } } // stages } // pipeline {noformat} !image-2020-03-24-09-29-52-211.png! |
New:
When stages within a matrix are skipped using the 'when' directive, the build result is not rendered correctly. The first cell of the matrix is correctly shown as 'Skipped', however subsequent cells are shown as 'Passed' (in 0s). This is very confusing. {noformat} #!groovy pipeline { agent none parameters { booleanParam( name: 'matrix', defaultValue: true ) booleanParam( name: 'parallel', defaultValue: true ) } stages { stage( 'matrix' ) { matrix { axes { axis { name 'server' values 'server-one', 'server-two' } } stages { stage( 'matrix' ) { agent { label "${server}" } when { expression { params.matrix } } steps { echo "matrix ${server}" } } } } } stage( 'parallel' ) { parallel { stage( 'parallel-one' ) { agent { label 'server-one' } when { expression { params.parallel } } steps { echo 'parallel-one' } } stage( 'parallel-two' ) { agent { label 'server-two' } when { expression { params.parallel } } steps { echo 'parallel-two' } } } } } // stages } // pipeline {noformat} !image-2020-03-24-09-29-52-211.png! |
Description |
Original:
When stages within a matrix are skipped using the 'when' directive, the build result is not rendered correctly. The first cell of the matrix is correctly shown as 'Skipped', however subsequent cells are shown as 'Passed' (in 0s). This is very confusing. {noformat} #!groovy pipeline { agent none parameters { booleanParam( name: 'matrix', defaultValue: true ) booleanParam( name: 'parallel', defaultValue: true ) } stages { stage( 'matrix' ) { matrix { axes { axis { name 'server' values 'server-one', 'server-two' } } stages { stage( 'matrix' ) { agent { label "${server}" } when { expression { params.matrix } } steps { echo "matrix ${server}" } } } } } stage( 'parallel' ) { parallel { stage( 'parallel-one' ) { agent { label 'server-one' } when { expression { params.parallel } } steps { echo 'parallel-one' } } stage( 'parallel-two' ) { agent { label 'server-two' } when { expression { params.parallel } } steps { echo 'parallel-two' } } } } } // stages } // pipeline {noformat} !image-2020-03-24-09-29-52-211.png! |
New:
When stages within a matrix are skipped using the 'when' directive, the pipeline result is not rendered correctly. The first cell of the matrix is correctly shown as 'Skipped', however subsequent cells are shown as 'Passed' (in 0s). This is very confusing. {noformat} #!groovy pipeline { agent none parameters { booleanParam( name: 'matrix', defaultValue: true ) booleanParam( name: 'parallel', defaultValue: true ) } stages { stage( 'matrix' ) { matrix { axes { axis { name 'server' values 'server-one', 'server-two' } } stages { stage( 'matrix' ) { agent { label "${server}" } when { expression { params.matrix } } steps { echo "matrix ${server}" } } } } } stage( 'parallel' ) { parallel { stage( 'parallel-one' ) { agent { label 'server-one' } when { expression { params.parallel } } steps { echo 'parallel-one' } } stage( 'parallel-two' ) { agent { label 'server-two' } when { expression { params.parallel } } steps { echo 'parallel-two' } } } } } // stages } // pipeline {noformat} !image-2020-03-24-09-29-52-211.png! |
Priority | Original: Minor [ 4 ] | New: Major [ 3 ] |
Attachment | New: image-2020-03-25-17-31-20-694.png [ 50750 ] |
Attachment | New: image-2020-03-25-17-31-24-907.png [ 50751 ] |