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

Conditional parallel stages are not rendered properly if skipped

    XMLWordPrintable

Details

    • Blue Ocean 1.4 - beta 3

    Description

      Problem
      Skipped parallel stages show up as "successful" rather than "not built".

      They also do not have the expected visual treatment (e.g. fadeout the connected line).

      Screenshot

      Jenkinsfile

      pipeline {
          agent any
          stages {
              stage('Run Tests') {
                  parallel {
                      stage('Test On Windows') {
                          when {
                            branch 'cake'
                          }
                          steps {
                              echo 'hello world'
                          }
                      }
                      stage('Test On Linux') {
                          steps {
                              echo 'hello world'
                          }
                      }
                  }
              }
          }
      }
      

      Log

      Started by user admin
      [Pipeline] node
      Running on master in /Users/jdumay/.jenkins/workspace/JENKINS-47219
      [Pipeline] {
      [Pipeline] stage
      [Pipeline] { (Run Tests)
      [Pipeline] parallel
      [Pipeline] [Test On Windows] { (Branch: Test On Windows)
      [Pipeline] [Test On Linux] { (Branch: Test On Linux)
      [Pipeline] [Test On Windows] stage
      [Pipeline] [Test On Windows] { (Test On Windows)
      [Pipeline] [Test On Linux] stage
      [Pipeline] [Test On Linux] { (Test On Linux)
      Stage 'Test On Windows' skipped due to when conditional
      [Pipeline] [Test On Windows] }
      [Pipeline] [Test On Windows] // stage
      [Pipeline] [Test On Windows] }
      [Pipeline] [Test On Linux] echo
      [Test On Linux] hello world
      [Pipeline] [Test On Linux] }
      [Pipeline] [Test On Linux] // stage
      [Pipeline] [Test On Linux] }
      [Pipeline] // parallel
      [Pipeline] }
      [Pipeline] // stage
      [Pipeline] }
      [Pipeline] // node
      [Pipeline] End of Pipeline
      Finished: SUCCESS
      

      Original Request
      If conditional step in parallelĀ is skipped, it is still rendered as executed, just without steps.

      See attached images.

      Attachments

        1. 2017-12-28-1-skipped-parallel.png
          2017-12-28-1-skipped-parallel.png
          12 kB
        2. expected.png
          expected.png
          13 kB
        3. expected2.png
          expected2.png
          7 kB
        4. image-2017-12-09-02-06-05-091.png
          8.17 MB
        5. Jenkins-pipeline-failure-skipped-parallel-steps-green.png
          Jenkins-pipeline-failure-skipped-parallel-steps-green.png
          20 kB
        6. problem.png
          problem.png
          26 kB
        7. problem.png
          problem.png
          26 kB
        8. result.png
          result.png
          14 kB

        Issue Links

          Activity

            quas Jakub Pawlinski created issue -
            quas Jakub Pawlinski made changes -
            Field Original Value New Value
            Attachment expected2.png [ 39901 ]
            jamesdumay James Dumay made changes -
            Description If conditional step in parallel is skipped, it is still rendered as executed, just without steps.

            See attached images.

            *Log*
            {noformat}
            Started by user admin
            [Pipeline] node
            Running on master in /Users/jdumay/.jenkins/workspace/JENKINS-47219
            [Pipeline] {
            [Pipeline] stage
            [Pipeline] { (Run Tests)
            [Pipeline] parallel
            [Pipeline] [Test On Windows] { (Branch: Test On Windows)
            [Pipeline] [Test On Linux] { (Branch: Test On Linux)
            [Pipeline] [Test On Windows] stage
            [Pipeline] [Test On Windows] { (Test On Windows)
            [Pipeline] [Test On Linux] stage
            [Pipeline] [Test On Linux] { (Test On Linux)
            Stage 'Test On Windows' skipped due to when conditional
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Windows] // stage
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Linux] echo
            [Test On Linux] hello world
            [Pipeline] [Test On Linux] }
            [Pipeline] [Test On Linux] // stage
            [Pipeline] [Test On Linux] }
            [Pipeline] // parallel
            [Pipeline] }
            [Pipeline] // stage
            [Pipeline] }
            [Pipeline] // node
            [Pipeline] End of Pipeline
            Finished: SUCCESS
            {noformat}

            *Original Request*
            If conditional step in parallel is skipped, it is still rendered as executed, just without steps.

            See attached images.
            jamesdumay James Dumay made changes -
            Description
            *Log*
            {noformat}
            Started by user admin
            [Pipeline] node
            Running on master in /Users/jdumay/.jenkins/workspace/JENKINS-47219
            [Pipeline] {
            [Pipeline] stage
            [Pipeline] { (Run Tests)
            [Pipeline] parallel
            [Pipeline] [Test On Windows] { (Branch: Test On Windows)
            [Pipeline] [Test On Linux] { (Branch: Test On Linux)
            [Pipeline] [Test On Windows] stage
            [Pipeline] [Test On Windows] { (Test On Windows)
            [Pipeline] [Test On Linux] stage
            [Pipeline] [Test On Linux] { (Test On Linux)
            Stage 'Test On Windows' skipped due to when conditional
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Windows] // stage
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Linux] echo
            [Test On Linux] hello world
            [Pipeline] [Test On Linux] }
            [Pipeline] [Test On Linux] // stage
            [Pipeline] [Test On Linux] }
            [Pipeline] // parallel
            [Pipeline] }
            [Pipeline] // stage
            [Pipeline] }
            [Pipeline] // node
            [Pipeline] End of Pipeline
            Finished: SUCCESS
            {noformat}

            *Original Request*
            If conditional step in parallel is skipped, it is still rendered as executed, just without steps.

            See attached images.
            *Screenshot*


            *Jenkinsfile*
            {code}
            pipeline {
                agent any
                stages {
                    stage('Run Tests') {
                        parallel {
                            stage('Test On Windows') {
                                when {
                                  branch 'cake'
                                }
                                steps {
                                    echo 'hello world'
                                }
                            }
                            stage('Test On Linux') {
                                steps {
                                    echo 'hello world'
                                }
                            }
                        }
                    }
                }
            }
            {code}

            *Log*
            {noformat}
            Started by user admin
            [Pipeline] node
            Running on master in /Users/jdumay/.jenkins/workspace/JENKINS-47219
            [Pipeline] {
            [Pipeline] stage
            [Pipeline] { (Run Tests)
            [Pipeline] parallel
            [Pipeline] [Test On Windows] { (Branch: Test On Windows)
            [Pipeline] [Test On Linux] { (Branch: Test On Linux)
            [Pipeline] [Test On Windows] stage
            [Pipeline] [Test On Windows] { (Test On Windows)
            [Pipeline] [Test On Linux] stage
            [Pipeline] [Test On Linux] { (Test On Linux)
            Stage 'Test On Windows' skipped due to when conditional
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Windows] // stage
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Linux] echo
            [Test On Linux] hello world
            [Pipeline] [Test On Linux] }
            [Pipeline] [Test On Linux] // stage
            [Pipeline] [Test On Linux] }
            [Pipeline] // parallel
            [Pipeline] }
            [Pipeline] // stage
            [Pipeline] }
            [Pipeline] // node
            [Pipeline] End of Pipeline
            Finished: SUCCESS
            {noformat}

            *Original Request*
            If conditional step in parallel is skipped, it is still rendered as executed, just without steps.

            See attached images.
            jamesdumay James Dumay made changes -
            Attachment problem.png [ 39918 ]
            jamesdumay James Dumay made changes -
            Attachment problem.png [ 39919 ]
            jamesdumay James Dumay made changes -
            Description *Screenshot*


            *Jenkinsfile*
            {code}
            pipeline {
                agent any
                stages {
                    stage('Run Tests') {
                        parallel {
                            stage('Test On Windows') {
                                when {
                                  branch 'cake'
                                }
                                steps {
                                    echo 'hello world'
                                }
                            }
                            stage('Test On Linux') {
                                steps {
                                    echo 'hello world'
                                }
                            }
                        }
                    }
                }
            }
            {code}

            *Log*
            {noformat}
            Started by user admin
            [Pipeline] node
            Running on master in /Users/jdumay/.jenkins/workspace/JENKINS-47219
            [Pipeline] {
            [Pipeline] stage
            [Pipeline] { (Run Tests)
            [Pipeline] parallel
            [Pipeline] [Test On Windows] { (Branch: Test On Windows)
            [Pipeline] [Test On Linux] { (Branch: Test On Linux)
            [Pipeline] [Test On Windows] stage
            [Pipeline] [Test On Windows] { (Test On Windows)
            [Pipeline] [Test On Linux] stage
            [Pipeline] [Test On Linux] { (Test On Linux)
            Stage 'Test On Windows' skipped due to when conditional
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Windows] // stage
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Linux] echo
            [Test On Linux] hello world
            [Pipeline] [Test On Linux] }
            [Pipeline] [Test On Linux] // stage
            [Pipeline] [Test On Linux] }
            [Pipeline] // parallel
            [Pipeline] }
            [Pipeline] // stage
            [Pipeline] }
            [Pipeline] // node
            [Pipeline] End of Pipeline
            Finished: SUCCESS
            {noformat}

            *Original Request*
            If conditional step in parallel is skipped, it is still rendered as executed, just without steps.

            See attached images.
            *Problem*
            Skipped parallel stages show up as "successful" rather than "not built".

            They also do not have the expected treatment.

            *Screenshot*
             !problem.png|thumbnail!

            *Jenkinsfile*
            {code}
            pipeline {
                agent any
                stages {
                    stage('Run Tests') {
                        parallel {
                            stage('Test On Windows') {
                                when {
                                  branch 'cake'
                                }
                                steps {
                                    echo 'hello world'
                                }
                            }
                            stage('Test On Linux') {
                                steps {
                                    echo 'hello world'
                                }
                            }
                        }
                    }
                }
            }
            {code}

            *Log*
            {noformat}
            Started by user admin
            [Pipeline] node
            Running on master in /Users/jdumay/.jenkins/workspace/JENKINS-47219
            [Pipeline] {
            [Pipeline] stage
            [Pipeline] { (Run Tests)
            [Pipeline] parallel
            [Pipeline] [Test On Windows] { (Branch: Test On Windows)
            [Pipeline] [Test On Linux] { (Branch: Test On Linux)
            [Pipeline] [Test On Windows] stage
            [Pipeline] [Test On Windows] { (Test On Windows)
            [Pipeline] [Test On Linux] stage
            [Pipeline] [Test On Linux] { (Test On Linux)
            Stage 'Test On Windows' skipped due to when conditional
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Windows] // stage
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Linux] echo
            [Test On Linux] hello world
            [Pipeline] [Test On Linux] }
            [Pipeline] [Test On Linux] // stage
            [Pipeline] [Test On Linux] }
            [Pipeline] // parallel
            [Pipeline] }
            [Pipeline] // stage
            [Pipeline] }
            [Pipeline] // node
            [Pipeline] End of Pipeline
            Finished: SUCCESS
            {noformat}

            *Original Request*
            If conditional step in parallel is skipped, it is still rendered as executed, just without steps.

            See attached images.
            jamesdumay James Dumay made changes -
            Description *Problem*
            Skipped parallel stages show up as "successful" rather than "not built".

            They also do not have the expected treatment.

            *Screenshot*
             !problem.png|thumbnail!

            *Jenkinsfile*
            {code}
            pipeline {
                agent any
                stages {
                    stage('Run Tests') {
                        parallel {
                            stage('Test On Windows') {
                                when {
                                  branch 'cake'
                                }
                                steps {
                                    echo 'hello world'
                                }
                            }
                            stage('Test On Linux') {
                                steps {
                                    echo 'hello world'
                                }
                            }
                        }
                    }
                }
            }
            {code}

            *Log*
            {noformat}
            Started by user admin
            [Pipeline] node
            Running on master in /Users/jdumay/.jenkins/workspace/JENKINS-47219
            [Pipeline] {
            [Pipeline] stage
            [Pipeline] { (Run Tests)
            [Pipeline] parallel
            [Pipeline] [Test On Windows] { (Branch: Test On Windows)
            [Pipeline] [Test On Linux] { (Branch: Test On Linux)
            [Pipeline] [Test On Windows] stage
            [Pipeline] [Test On Windows] { (Test On Windows)
            [Pipeline] [Test On Linux] stage
            [Pipeline] [Test On Linux] { (Test On Linux)
            Stage 'Test On Windows' skipped due to when conditional
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Windows] // stage
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Linux] echo
            [Test On Linux] hello world
            [Pipeline] [Test On Linux] }
            [Pipeline] [Test On Linux] // stage
            [Pipeline] [Test On Linux] }
            [Pipeline] // parallel
            [Pipeline] }
            [Pipeline] // stage
            [Pipeline] }
            [Pipeline] // node
            [Pipeline] End of Pipeline
            Finished: SUCCESS
            {noformat}

            *Original Request*
            If conditional step in parallel is skipped, it is still rendered as executed, just without steps.

            See attached images.
            *Problem*
            Skipped parallel stages show up as "successful" rather than "not built".

            They also do not have the expected visual treatment (e.g. fadeout the connected line).

            *Screenshot*
             !problem.png|thumbnail!

            *Jenkinsfile*
            {code}
            pipeline {
                agent any
                stages {
                    stage('Run Tests') {
                        parallel {
                            stage('Test On Windows') {
                                when {
                                  branch 'cake'
                                }
                                steps {
                                    echo 'hello world'
                                }
                            }
                            stage('Test On Linux') {
                                steps {
                                    echo 'hello world'
                                }
                            }
                        }
                    }
                }
            }
            {code}

            *Log*
            {noformat}
            Started by user admin
            [Pipeline] node
            Running on master in /Users/jdumay/.jenkins/workspace/JENKINS-47219
            [Pipeline] {
            [Pipeline] stage
            [Pipeline] { (Run Tests)
            [Pipeline] parallel
            [Pipeline] [Test On Windows] { (Branch: Test On Windows)
            [Pipeline] [Test On Linux] { (Branch: Test On Linux)
            [Pipeline] [Test On Windows] stage
            [Pipeline] [Test On Windows] { (Test On Windows)
            [Pipeline] [Test On Linux] stage
            [Pipeline] [Test On Linux] { (Test On Linux)
            Stage 'Test On Windows' skipped due to when conditional
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Windows] // stage
            [Pipeline] [Test On Windows] }
            [Pipeline] [Test On Linux] echo
            [Test On Linux] hello world
            [Pipeline] [Test On Linux] }
            [Pipeline] [Test On Linux] // stage
            [Pipeline] [Test On Linux] }
            [Pipeline] // parallel
            [Pipeline] }
            [Pipeline] // stage
            [Pipeline] }
            [Pipeline] // node
            [Pipeline] End of Pipeline
            Finished: SUCCESS
            {noformat}

            *Original Request*
            If conditional step in parallel is skipped, it is still rendered as executed, just without steps.

            See attached images.
            jamesdumay James Dumay made changes -
            Epic Link JENKINS-43953 [ 181485 ]
            jamesdumay James Dumay made changes -
            Sprint Blue Ocean 1.4 - candidates [ 326 ]
            Priority Minor [ 4 ] Major [ 3 ]
            jamesdumay James Dumay made changes -
            Sprint Blue Ocean 1.4 - candidates [ 326 ] Blue Ocean 1.4 - beta 2 [ 416 ]
            jamesdumay James Dumay made changes -
            Rank Ranked higher
            jamesdumay James Dumay made changes -
            Sprint Blue Ocean 1.4 - beta 3 [ 416 ] Blue Ocean 1.4 - beta 4 [ 441 ]
            yogesh_ar Yogesh Kumar made changes -
            Attachment image-2017-12-09-02-06-05-091.png [ 40628 ]
            yogesh_ar Yogesh Kumar made changes -
            Priority Major [ 3 ] Critical [ 2 ]
            jamesdumay James Dumay made changes -
            Sprint Blue Ocean 1.4 - beta 4 [ 441 ] Blue Ocean 1.4 - beta 3 [ 416 ]
            jamesdumay James Dumay made changes -
            Assignee Cliff Meyers [ cliffmeyers ]
            cliffmeyers Cliff Meyers made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            cliffmeyers Cliff Meyers made changes -
            Summary Conditional parallel stages are not rendered properly if not skipped Conditional parallel stages are not rendered properly if skipped
            cliffmeyers Cliff Meyers made changes -
            Remote Link This issue links to "PR#16 (Web Link)" [ 19504 ]
            cliffmeyers Cliff Meyers made changes -
            Status In Progress [ 3 ] In Review [ 10005 ]
            cliffmeyers Cliff Meyers made changes -
            Attachment 2017-12-28-1-skipped-parallel.png [ 40914 ]
            thdepauw Thomas De Pauw made changes -
            cliffmeyers Cliff Meyers made changes -
            Remote Link This issue links to "PR#1610 (Web Link)" [ 19739 ]
            jamesdumay James Dumay made changes -
            Resolution Fixed [ 1 ]
            Status In Review [ 10005 ] Resolved [ 5 ]
            michaelneale Michael Neale made changes -
            Remote Link This issue links to "Page (Jenkins Wiki)" [ 19853 ]
            jbriden Jenn Briden made changes -
            Status Resolved [ 5 ] Closed [ 6 ]

            People

              cliffmeyers Cliff Meyers
              quas Jakub Pawlinski
              Votes:
              6 Vote for this issue
              Watchers:
              13 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: