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

Steps outside a stage or within a stage but outside a parallel do not get visualized

    Details

    • Sprint:
      1.0-japan-m9, 1.0-m7
    • Similar Issues:

      Description

      This feature request is unplanned and is not actively being worked on

      We are unable to merge orphaned steps (that is, steps that exist outside of a stage or outside of a parallel within a stage) into the closest stage or a synthetic without considerable engineering effort to ensure that all steps are available in the visualization.

      As a workaround we recommend that you wrap any steps within stage and do not include steps sitting outside a parallel in the same stage or try Declarative Pipeline which was designed not to have this problem.

      Scope
      For visualisation purposes:

      • Step outside stage is relocated to the previous stage or next stage (depending if at start, middle or end of the pipeline)
      • Step before a parallel block is relocated to the first parallel branch
      • Step after a parallel block is relocated to the last parallel branch

      Problem
      It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

      Example 1 - step outside stage block
      The output of the step that echos never going to let you down will never be visible from the UI.

      
      node {
        stage "Stage 1" {
          sh "echo never going to give you up"
        }
        sh "echo never going to let you down"
        stage "Stage 2" {
          parallel (
            "Firefox" : { echo "Never run around" },
            "Edge" : { echo "Never desert you" }
          ) 
        }
        
        stage "Stage 3" {
          echo "Make you cry (never)"
          echo "Tell a lie and hurt you (never)"
        }
      }
      
      

      Example 2 - step inside stage but not within parallel
      The output of the step that echos never going to let you down will never be visible from the UI.

      node {
        stage "Stage 1" {
          sh "echo never going to give you up"
        }
        
        stage "Stage 2" {
          sh "echo never going to let you down"
          parallel (
            "Firefox" : { echo "Never run around" },
            "Edge" : { echo "Never desert you" }
          ) 
        }
        
        stage "Stage 3" {
          echo "Make you cry (never)"
          echo "Tell a lie and hurt you (never)"
        }
      }
      

        Attachments

          Issue Links

            Activity

            jamesdumay James Dumay created issue -
            michaelneale Michael Neale made changes -
            Field Original Value New Value
            Epic Link UX-19 [ 24579 ]
            michaelneale Michael Neale made changes -
            Rank Ranked higher
            michaelneale Michael Neale made changes -
            Sprint 1.0-m7 [ 61 ]
            jamesdumay James Dumay made changes -
            Rank Ranked lower
            jamesdumay James Dumay made changes -
            Assignee James Dumay [ jdumay ]
            jamesdumay James Dumay made changes -
            Status To Do [ 10003 ] In Review [ 10005 ]
            michaelneale Michael Neale made changes -
            Attachment Screen Shot 2016-05-18 at 1.34.53 PM.png [ 16710 ]
            sophistifunk Josh McDonald made changes -
            Attachment visible grouping.pdf [ 16718 ]
            jamesdumay James Dumay made changes -
            Sprint 1.0-m7 [ 61 ] 1.0-m7, 1.0-m10 [ 61, 56 ]
            jamesdumay James Dumay made changes -
            Sprint 1.0-m7, 1.0-m10 [ 61, 56 ] 1.0-m7, 1.0-m8 [ 61, 46 ]
            jamesdumay James Dumay made changes -
            Rank Ranked higher
            admin V R made changes -
            Project Import Tue Jun 14 12:50:41 JST 2016 [ 1465876241198 ]
            rtyler R. Tyler Croy made changes -
            Project Import Wed Jun 15 02:53:18 UTC 2016 [ 1465959198925 ]
            jamesdumay James Dumay made changes -
            Labels blueocean-imported
            jamesdumay James Dumay made changes -
            Project User Experience [ 10600 ] Jenkins [ 10172 ]
            Key UX-433 JENKINS-35836
            Workflow Product Backlog April 2016 V2 [ 172294 ] JNJira [ 172456 ]
            Status In Review [ 10005 ] In Progress [ 3 ]
            Component/s blueocean-plugin [ 21481 ]
            admin V R made changes -
            Assignee James Dumay [ jdumay ]
            admin V R made changes -
            Priority Medium [ 3 ] Major [ 10000 ]
            admin V R made changes -
            Reporter Michael Neale [ mneale ] James Dumay [ jamesdumay ]
            admin V R made changes -
            Reporter James Dumay [ jdumay ] James Dumay [ jdumay ]
            jamesdumay James Dumay made changes -
            Sprint 1.0-japan-m9, 1.0-m7 [ 46, 61 ] 1.0-japan-m9, 1.0-m7, 1.0-m10 [ 46, 61, 66 ]
            jamesdumay James Dumay made changes -
            Assignee James Dumay [ jamesdumay ]
            jamesdumay James Dumay made changes -
            Sprint 1.0-japan-m9, 1.0-m7, 1.0-m10 [ 46, 61, 66 ] 1.0-japan-m9, 1.0-m7 [ 46, 61 ]
            jamesdumay James Dumay made changes -
            Rank Ranked higher
            jamesdumay James Dumay made changes -
            Rank Ranked higher
            jamesdumay James Dumay made changes -
            Rank Ranked lower
            jamesdumay James Dumay made changes -
            Rank Ranked lower
            jamesdumay James Dumay made changes -
            Rank Ranked higher
            rtyler R. Tyler Croy made changes -
            Workflow JNJira [ 172456 ] JNJira + In-Review [ 185786 ]
            jamesdumay James Dumay made changes -
            Priority Major [ 3 ] Minor [ 4 ]
            jamesdumay James Dumay made changes -
            Rank Ranked lower
            jamesdumay James Dumay made changes -
            Assignee James Dumay [ jamesdumay ]
            jamesdumay James Dumay made changes -
            Status In Progress [ 3 ] Open [ 1 ]
            jamesdumay James Dumay made changes -
            Rank Ranked higher
            jamesdumay James Dumay made changes -
            Rank Ranked lower
            jamesdumay James Dumay made changes -
            Rank Ranked lower
            jamesdumay James Dumay made changes -
            Rank Ranked higher
            jamesdumay James Dumay made changes -
            Rank Ranked lower
            michaelneale Michael Neale made changes -
            Link This issue blocks JENKINS-39848 [ JENKINS-39848 ]
            roidelapluie Julien Pivotto made changes -
            Attachment runtime.png [ 34906 ]
            roidelapluie Julien Pivotto made changes -
            Attachment view-out-of-stage.png [ 34907 ]
            Attachment view-out-of-stage2.png [ 34908 ]
            roidelapluie Julien Pivotto made changes -
            Attachment runtime.png [ 34906 ]
            roidelapluie Julien Pivotto made changes -
            Link This issue duplicates JENKINS-39848 [ JENKINS-39848 ]
            roidelapluie Julien Pivotto made changes -
            Link This issue blocks JENKINS-39848 [ JENKINS-39848 ]
            jamesdumay James Dumay made changes -
            Link This issue relates to JENKINS-38442 [ JENKINS-38442 ]
            jamesdumay James Dumay made changes -
            Description referring to: https://docs.google.com/a/cloudbees.com/document/d/1E2G4vuXNaAYe8MAZZxOnsiSeXdyGpwos9Zgq8dtdSxg/edit?usp=sharing

            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            it isn't quite clear how to allow the user to select the "whole stage" as we kind of suppress that overall stage circle when we know it contains a parallel branch section.

            to investigate ([~jmcdonald] was interested in sketching something out that may work).

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example*

            {code}
            stage "Stage 1"
            node {
                sh "echo never going to give you up"
            }
            stage "Stage 2"
               sh “echo never going to let you down”
            parallel (
                "Firefox" : { echo "Never run around" },
                "Edge" : { echo "Never desert you" }
            )
            stage "Staging"
            echo "Make you cry (never)"
            echo "Tell a lie and hurt you (never)"
            {code}
            jamesdumay James Dumay made changes -
            Description
            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example*

            {code}
            stage "Stage 1"
            node {
                sh "echo never going to give you up"
            }
            stage "Stage 2"
               sh “echo never going to let you down”
            parallel (
                "Firefox" : { echo "Never run around" },
                "Edge" : { echo "Never desert you" }
            )
            stage "Staging"
            echo "Make you cry (never)"
            echo "Tell a lie and hurt you (never)"
            {code}
            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example*
            The output of the step that echo's *never going to let you down* will never be visible from the UI.
            {code}
            stage "Stage 1"
            node {
                sh "echo never going to give you up"
            }
            stage "Stage 2"
               sh “echo never going to let you down”
            parallel (
                "Firefox" : { echo "Never run around" },
                "Edge" : { echo "Never desert you" }
            )
            stage "Staging"
            echo "Make you cry (never)"
            echo "Tell a lie and hurt you (never)"
            {code}
            jamesdumay James Dumay made changes -
            Description *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example*
            The output of the step that echo's *never going to let you down* will never be visible from the UI.
            {code}
            stage "Stage 1"
            node {
                sh "echo never going to give you up"
            }
            stage "Stage 2"
               sh “echo never going to let you down”
            parallel (
                "Firefox" : { echo "Never run around" },
                "Edge" : { echo "Never desert you" }
            )
            stage "Staging"
            echo "Make you cry (never)"
            echo "Tell a lie and hurt you (never)"
            {code}
            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            stage "Stage 1"
            node {
                sh "echo never going to give you up"
            }
            stage "Stage 2"
               sh “echo never going to let you down”
            parallel (
                "Firefox" : { echo "Never run around" },
                "Edge" : { echo "Never desert you" }
            )
            stage "Staging"
            echo "Make you cry (never)"
            echo "Tell a lie and hurt you (never)"
            {code}
            jamesdumay James Dumay made changes -
            Description *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            stage "Stage 1"
            node {
                sh "echo never going to give you up"
            }
            stage "Stage 2"
               sh “echo never going to let you down”
            parallel (
                "Firefox" : { echo "Never run around" },
                "Edge" : { echo "Never desert you" }
            )
            stage "Staging"
            echo "Make you cry (never)"
            echo "Tell a lie and hurt you (never)"
            {code}
            *Scope*

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh “echo never going to let you down”
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
               sh “echo never going to let you down”
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Description *Scope*

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh “echo never going to let you down”
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
               sh “echo never going to let you down”
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            *Scope*

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh “echo never going to let you down”
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh “echo never going to let you down”
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Description *Scope*

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh “echo never going to let you down”
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh “echo never going to let you down”
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            *Scope*

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh “echo never going to let you down”
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh “echo never going to let you down”
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Description *Scope*

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh “echo never going to let you down”
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos *never going to let you down* will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh “echo never going to let you down”
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            *Scope*

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh “echo never going to let you down”
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh “echo never going to let you down”
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Summary Stage graph needs to cope with steps at the stage level at the same time as parallel Steps outside a stage or within a stage but outside a parallel do not get visualized
            jamesdumay James Dumay made changes -
            Sprint 1.0-japan-m9, 1.0-m7 [ 46, 61 ] 1.0-japan-m9, 1.0-m7, kraken [ 46, 61, 166 ]
            jamesdumay James Dumay made changes -
            Description *Scope*

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh “echo never going to let you down”
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh “echo never going to let you down”
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            *Scope*
            For visualisation purposes:
            * Step is relocated to the nearest stage
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh “echo never going to let you down”
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh “echo never going to let you down”
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Link This issue is duplicated by JENKINS-39335 [ JENKINS-39335 ]
            jamesdumay James Dumay made changes -
            Description *Scope*
            For visualisation purposes:
            * Step is relocated to the nearest stage
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh “echo never going to let you down”
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh “echo never going to let you down”
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            *Scope*
            For visualisation purposes:
            * Step is relocated to the nearest stage
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Link This issue relates to JENKINS-38442 [ JENKINS-38442 ]
            jamesdumay James Dumay made changes -
            Description *Scope*
            For visualisation purposes:
            * Step is relocated to the nearest stage
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the nearest stage
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Description *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the nearest stage
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the previous stage or next stage (depending if at start, middle or end of the pipeline)
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Epic Link JENKINS-35755 [ 171716 ] JENKINS-35750 [ 171713 ]
            jamesdumay James Dumay made changes -
            Assignee Vivek Pandey [ vivek ]
            jamesdumay James Dumay made changes -
            Sprint 1.0-japan-m9, 1.0-m7, kraken [ 46, 61, 166 ] 1.0-japan-m9, 1.0-m7, tethys [ 46, 61, 161 ]
            jamesdumay James Dumay made changes -
            Rank Ranked higher
            jamesdumay James Dumay made changes -
            Sprint 1.0-japan-m9, 1.0-m7, tethys [ 46, 61, 161 ] 1.0-japan-m9, 1.0-m7 [ 46, 61 ]
            michaelneale Michael Neale made changes -
            Description *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the previous stage or next stage (depending if at start, middle or end of the pipeline)
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the previous stage or next stage (depending if at start, middle or end of the pipeline)
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}

            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }

            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Assignee Vivek Pandey [ vivek ]
            jamesdumay James Dumay made changes -
            Description *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the previous stage or next stage (depending if at start, middle or end of the pipeline)
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}

            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }

            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            {panel:title=This feature request is unplanned and is not actively being worked on|titleBGColor=lightgrey}
            We are unable to merge orphaned steps (that is, steps that exist outside of a stage or outside of a parallel within a stage) without considerable engineering effort.

            As a workaround we recommend that you wrap any steps within {{stage}} and do not include steps sitting outside a {{parallel}} in the same stage.
            {panel}

            *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the previous stage or next stage (depending if at start, middle or end of the pipeline)
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}

            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }

            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Description {panel:title=This feature request is unplanned and is not actively being worked on|titleBGColor=lightgrey}
            We are unable to merge orphaned steps (that is, steps that exist outside of a stage or outside of a parallel within a stage) without considerable engineering effort.

            As a workaround we recommend that you wrap any steps within {{stage}} and do not include steps sitting outside a {{parallel}} in the same stage.
            {panel}

            *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the previous stage or next stage (depending if at start, middle or end of the pipeline)
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}

            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }

            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            {panel:title=This feature request is unplanned and is not actively being worked on|titleBGColor=lightgrey}
            We are unable to merge orphaned steps (that is, steps that exist outside of a stage or outside of a parallel within a stage) into the closest stage or a synthetic without considerable engineering effort to ensure that all steps are available in the visualization.

            As a workaround we recommend that you wrap any steps within {{stage}} and do not include steps sitting outside a {{parallel}} in the same stage.
            {panel}

            *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the previous stage or next stage (depending if at start, middle or end of the pipeline)
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}

            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }

            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            michaelneale Michael Neale made changes -
            Link This issue is blocked by JENKINS-38442 [ JENKINS-38442 ]
            jamesdumay James Dumay made changes -
            Sprint 1.0-japan-m9, 1.0-m7 [ 46, 61 ] 1.0-japan-m9, 1.0-m7, post-release [ 46, 61, 181 ]
            jamesdumay James Dumay made changes -
            Sprint 1.0-japan-m9, 1.0-m7, post-release [ 46, 61, 181 ] 1.0-japan-m9, 1.0-m7 [ 46, 61 ]
            jamesdumay James Dumay made changes -
            Rank Ranked lower
            jamesdumay James Dumay made changes -
            Description {panel:title=This feature request is unplanned and is not actively being worked on|titleBGColor=lightgrey}
            We are unable to merge orphaned steps (that is, steps that exist outside of a stage or outside of a parallel within a stage) into the closest stage or a synthetic without considerable engineering effort to ensure that all steps are available in the visualization.

            As a workaround we recommend that you wrap any steps within {{stage}} and do not include steps sitting outside a {{parallel}} in the same stage.
            {panel}

            *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the previous stage or next stage (depending if at start, middle or end of the pipeline)
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}

            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }

            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            {panel:title=This feature request is unplanned and is not actively being worked on|titleBGColor=lightgrey}
            We are unable to merge orphaned steps (that is, steps that exist outside of a stage or outside of a parallel within a stage) into the closest stage or a synthetic without considerable engineering effort to ensure that all steps are available in the visualization.

            As a workaround we recommend that you wrap any steps within {{stage}} and do not include steps sitting outside a {{parallel}} in the same stage or try [Declarative Pipeline|https://jenkins.io/blog/2017/02/03/declarative-pipeline-ga/] which was designed not to have this problem.
            {panel}

            *Scope*
            For visualisation purposes:
            * Step outside stage is relocated to the previous stage or next stage (depending if at start, middle or end of the pipeline)
            * Step before a parallel block is relocated to the first parallel branch
            * Step after a parallel block is relocated to the last parallel branch

            *Problem*
            It is possible that a stage, that has parallel branches under it, also has steps before or after a parallel section.

            *Example 1 - step outside stage block*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}

            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              sh "echo never going to let you down"
              stage "Stage 2" {
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }

            {code}

            *Example 2 - step inside stage but not within parallel*
            The output of the step that echos _never going to let you down_ will never be visible from the UI.
            {code}
            node {
              stage "Stage 1" {
                sh "echo never going to give you up"
              }
              
              stage "Stage 2" {
                sh "echo never going to let you down"
                parallel (
                  "Firefox" : { echo "Never run around" },
                  "Edge" : { echo "Never desert you" }
                )
              }
              
              stage "Stage 3" {
                echo "Make you cry (never)"
                echo "Tell a lie and hurt you (never)"
              }
            }
            {code}
            jamesdumay James Dumay made changes -
            Status Open [ 1 ] Resolved [ 5 ]
            Resolution Won't Do [ 10001 ]
            jamesdumay James Dumay made changes -
            Link This issue is duplicated by JENKINS-43231 [ JENKINS-43231 ]
            jamesdumay James Dumay made changes -
            Status Resolved [ 5 ] Closed [ 6 ]
            jamesdumay James Dumay made changes -
            Link This issue is duplicated by JENKINS-42062 [ JENKINS-42062 ]
            jamesdumay James Dumay made changes -
            Link This issue is duplicated by JENKINS-47473 [ JENKINS-47473 ]
            cloudbees CloudBees Inc. made changes -
            Remote Link This issue links to "CloudBees Internal OSS-1539 (Web Link)" [ 18658 ]
            giorgiosironi Giorgio Sironi made changes -

              People

              • Assignee:
                Unassigned
                Reporter:
                jamesdumay James Dumay
              • Votes:
                1 Vote for this issue
                Watchers:
                11 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: