Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-49131

Steps are not shown up in Blue Ocean when one of parallel stages is skipped due to "when" condition

      1. If one (or more) parallel stage is skipped due to "when" condition in declarative pipeline, Blue Ocean UI does not show up running steps inside active stages until all steps in all active stages are finished.

      2. In such case If one of steps is "input" step, there is no option to "Proceed" or "Abort" using Blue Ocean UI since no steps are shown up. It can be done only using regular UI or console output.

      3. If all stages are active, steps are shown up, but after some time it is impossible to switch between output of "Stage A" to "Stage B" and see steps of "Stage B" until all steps in "Stage A" are finished. Refreshing page in browser (F5) allows switching between stages for some time.

      Example:

      // code placeholder
      pipeline {
       agent any
       parameters {
        choice(choices: 'NO\nEVEN\nODD', description: '', name: 'A')
        choice(choices: 'NO\nEVEN\nODD', description: '', name: 'B')
       }
       environment {
        A = "${params.A}"
        B = "${params.B}"
       }
       stages {
        stage('ParallelStages') {
         parallel {
          stage('Stage A') {
           when {
            anyOf {
             environment name: 'A', value: 'EVEN'
             environment name: 'A', value: 'ODD'
            }
           }
          steps {
           echo "Running Stage A"
           sleep 10
           echo "Finishing Stage A"
          }
         }
         stage('Stage B') {
          when {
           anyOf {
            environment name: 'B', value: 'EVEN'
            environment name: 'B', value: 'ODD'
           }
          }
          steps {
           echo "Running Stage B"
           sleep 30
           echo "Finishing Stage B"
           }
          }
         }
        }
       }
      }
      

       

       

          [JENKINS-49131] Steps are not shown up in Blue Ocean when one of parallel stages is skipped due to "when" condition

          Michael Haskelsky created issue -
          Michael Haskelsky made changes -
          Description Original: 1. If one (or more) parallel stage does not run due to "when" condition in declarative pipeline, Blue Ocean UI does not show up running steps inside active stages until all steps in all active stages are finished.

          2. In such case If one of steps is "input" step, there is no option to "Proceed" or "Abort" using Blue Ocean UI since no steps are shown up. It can be done only using regular UI or console output.

          3. If all stages are active, steps are shown up, but it is impossible to switch between output of "Stage A" to "Stage B" and see steps of "Stage B" until all steps are finished in "Stage A".

          Example:
          {code:java}
          // code placeholder
          pipeline {
           agent any
           parameters {
            choice(choices: 'NO\nEVEN\nODD', description: '', name: 'A')
            choice(choices: 'NO\nEVEN\nODD', description: '', name: 'B')
           }
           environment {
            A = "${params.A}"
            B = "${params.B}"
           }
           stages {
            stage('ParallelStages') {
             parallel {
              stage('Stage A') {
               when {
                anyOf {
                 environment name: 'A', value: 'EVEN'
                 environment name: 'A', value: 'ODD'
                }
               }
              steps {
               echo "Running Stage A"
               sleep 10
               echo "Finishing Stage A"
              }
             }
             stage('Stage B') {
              when {
               anyOf {
                environment name: 'B', value: 'EVEN'
                environment name: 'B', value: 'ODD'
               }
              }
              steps {
               echo "Running Stage B"
               sleep 30
               echo "Finishing Stage B"
               }
              }
             }
            }
           }
          }
          {code}
           

           
          New: 1. If one (or more) parallel stage does not run due to "when" condition in declarative pipeline, Blue Ocean UI does not show up running steps inside active stages until all steps in all active stages are finished.

          2. In such case If one of steps is "input" step, there is no option to "Proceed" or "Abort" using Blue Ocean UI since no steps are shown up. It can be done only using regular UI or console output.

          3. If all stages are active, steps are shown up, but it is impossible to switch between output of "Stage A" to "Stage B" and see steps of "Stage B" until all steps in "Stage A" are finished.

          Example:
          {code:java}
          // code placeholder
          pipeline {
           agent any
           parameters {
            choice(choices: 'NO\nEVEN\nODD', description: '', name: 'A')
            choice(choices: 'NO\nEVEN\nODD', description: '', name: 'B')
           }
           environment {
            A = "${params.A}"
            B = "${params.B}"
           }
           stages {
            stage('ParallelStages') {
             parallel {
              stage('Stage A') {
               when {
                anyOf {
                 environment name: 'A', value: 'EVEN'
                 environment name: 'A', value: 'ODD'
                }
               }
              steps {
               echo "Running Stage A"
               sleep 10
               echo "Finishing Stage A"
              }
             }
             stage('Stage B') {
              when {
               anyOf {
                environment name: 'B', value: 'EVEN'
                environment name: 'B', value: 'ODD'
               }
              }
              steps {
               echo "Running Stage B"
               sleep 30
               echo "Finishing Stage B"
               }
              }
             }
            }
           }
          }
          {code}
           

           
          Michael Haskelsky made changes -
          Summary Original: Steps are not shown up in parallel stages when one of stages is not active due to "when" condition New: Steps are not shown up in BleuOcean when one of parallel stages is not active due to "when" condition
          Michael Haskelsky made changes -
          Summary Original: Steps are not shown up in BleuOcean when one of parallel stages is not active due to "when" condition New: Steps are not shown up in Blue Ocean when one of parallel stages is not active due to "when" condition
          Michael Haskelsky made changes -
          Labels New: pipeline
          Michael Haskelsky made changes -
          Labels Original: pipeline New: blueocean parallel pipeline stage steps
          Michael Haskelsky made changes -
          Summary Original: Steps are not shown up in Blue Ocean when one of parallel stages is not active due to "when" condition New: Steps are not shown up in Blue Ocean when one of parallel stages is skipped due to "when" condition
          Michael Haskelsky made changes -
          Assignee New: Michael Haskelsky [ observer ]
          Michael Haskelsky made changes -
          Assignee Original: Michael Haskelsky [ observer ]
          Michael Haskelsky made changes -
          Description Original: 1. If one (or more) parallel stage does not run due to "when" condition in declarative pipeline, Blue Ocean UI does not show up running steps inside active stages until all steps in all active stages are finished.

          2. In such case If one of steps is "input" step, there is no option to "Proceed" or "Abort" using Blue Ocean UI since no steps are shown up. It can be done only using regular UI or console output.

          3. If all stages are active, steps are shown up, but it is impossible to switch between output of "Stage A" to "Stage B" and see steps of "Stage B" until all steps in "Stage A" are finished.

          Example:
          {code:java}
          // code placeholder
          pipeline {
           agent any
           parameters {
            choice(choices: 'NO\nEVEN\nODD', description: '', name: 'A')
            choice(choices: 'NO\nEVEN\nODD', description: '', name: 'B')
           }
           environment {
            A = "${params.A}"
            B = "${params.B}"
           }
           stages {
            stage('ParallelStages') {
             parallel {
              stage('Stage A') {
               when {
                anyOf {
                 environment name: 'A', value: 'EVEN'
                 environment name: 'A', value: 'ODD'
                }
               }
              steps {
               echo "Running Stage A"
               sleep 10
               echo "Finishing Stage A"
              }
             }
             stage('Stage B') {
              when {
               anyOf {
                environment name: 'B', value: 'EVEN'
                environment name: 'B', value: 'ODD'
               }
              }
              steps {
               echo "Running Stage B"
               sleep 30
               echo "Finishing Stage B"
               }
              }
             }
            }
           }
          }
          {code}
           

           
          New: 1. If one (or more) parallel stage is skipped due to "when" condition in declarative pipeline, Blue Ocean UI does not show up running steps inside active stages until all steps in all active stages are finished.

          2. In such case If one of steps is "input" step, there is no option to "Proceed" or "Abort" using Blue Ocean UI since no steps are shown up. It can be done only using regular UI or console output.

          3. If all stages are active, steps are shown up, but it is impossible to switch between output of "Stage A" to "Stage B" and see steps of "Stage B" until all steps in "Stage A" are finished.

          Example:
          {code:java}
          // code placeholder
          pipeline {
           agent any
           parameters {
            choice(choices: 'NO\nEVEN\nODD', description: '', name: 'A')
            choice(choices: 'NO\nEVEN\nODD', description: '', name: 'B')
           }
           environment {
            A = "${params.A}"
            B = "${params.B}"
           }
           stages {
            stage('ParallelStages') {
             parallel {
              stage('Stage A') {
               when {
                anyOf {
                 environment name: 'A', value: 'EVEN'
                 environment name: 'A', value: 'ODD'
                }
               }
              steps {
               echo "Running Stage A"
               sleep 10
               echo "Finishing Stage A"
              }
             }
             stage('Stage B') {
              when {
               anyOf {
                environment name: 'B', value: 'EVEN'
                environment name: 'B', value: 'ODD'
               }
              }
              steps {
               echo "Running Stage B"
               sleep 30
               echo "Finishing Stage B"
               }
              }
             }
            }
           }
          }
          {code}
           

           

            Unassigned Unassigned
            observer Michael Haskelsky
            Votes:
            21 Vote for this issue
            Watchers:
            26 Start watching this issue

              Created:
              Updated: