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

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      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"
           }
          }
         }
        }
       }
      }
      

       

       

        Attachments

          Activity

          observer Michael Haskelsky created issue -
          observer Michael Haskelsky made changes -
          Field Original Value New Value
          Description 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}
           

           
          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}
           

           
          observer Michael Haskelsky made changes -
          Summary Steps are not shown up in parallel stages when one of stages is not active due to "when" condition Steps are not shown up in BleuOcean when one of parallel stages is not active due to "when" condition
          observer Michael Haskelsky made changes -
          Summary Steps are not shown up in BleuOcean when one of parallel stages is not active due to "when" condition Steps are not shown up in Blue Ocean when one of parallel stages is not active due to "when" condition
          observer Michael Haskelsky made changes -
          Labels pipeline
          observer Michael Haskelsky made changes -
          Labels pipeline blueocean parallel pipeline stage steps
          observer Michael Haskelsky made changes -
          Summary Steps are not shown up in Blue Ocean when one of parallel stages is not active due to "when" condition Steps are not shown up in Blue Ocean when one of parallel stages is skipped due to "when" condition
          observer Michael Haskelsky made changes -
          Assignee Michael Haskelsky [ observer ]
          observer Michael Haskelsky made changes -
          Assignee Michael Haskelsky [ observer ]
          observer Michael Haskelsky made changes -
          Description 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}
           

           
          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}
           

           
          observer Michael Haskelsky made changes -
          Description 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}
           

           
          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 sometimes 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: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}
           

           
          observer Michael Haskelsky made changes -
          Description 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 sometimes 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: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}
           

           
          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: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}
           

           
          caladd Chris Ladd made changes -
          Priority Major [ 3 ] Critical [ 2 ]
          caladd Chris Ladd made changes -
          Environment Jenkins ver. 2.89.3
          Blueocean 1.4.0
          Windows Server 2012 R2
          Jenkins ver. 2.89.3
          Blueocean 1.4.0
          Windows Server 2012 R2

          Jenkins 2.138.3
          Blue Ocean 1.14.0
          Linux
          zaktaccardi Zak Taccardi made changes -
          Assignee Zak Taccardi [ zaktaccardi ]
          zaktaccardi Zak Taccardi made changes -
          Assignee Zak Taccardi [ zaktaccardi ]

            People

            Assignee:
            Unassigned Unassigned
            Reporter:
            observer Michael Haskelsky
            Votes:
            20 Vote for this issue
            Watchers:
            24 Start watching this issue

              Dates

              Created:
              Updated: