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

Parallel sequential stages in Blue Ocean showing wrong status

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Critical
    • Resolution: Fixed
    • Component/s: blueocean-plugin
    • Labels:
    • Environment:
      Jenkins version: 2.121.3
      Blue Ocean version: 1.8.2
      OS: RHEL7.2
      Browser: Google Chrome
    • Similar Issues:

      Description

      After updating the Blue ocean to the latest version 1.8.2 released 16 August, Blue Ocean is having issues displaying the status of parallel stages properly.

      I have 2 stages in parallel which contains several sequential stage each.
      While they are both processing, one of the parallel stages is showing as green (DONE) and the other shown as Processing but not displaying the triggered builds.

      You can find my pipeline code below.

       pipeline {
        agent any
        stages { stage('Pushing 2 Tests') {
          //failFast true
          parallel {     
           stage('TE1') {
            stages {
             stage('PUSH TE1') {
              steps {
               script {    
                //Trigger a job
                sleep time: 5, unit: 'MINUTES'        
                echo "Test1"        
               }
              }
             }
             stage('Archive Logs') {
              steps {
               script {
                echo "Archive Test1 Logs"       
               }
              }
             }
             stage('Insert Metrics') {
              steps {
               script {
                echo "Insert Test1 Metrics in DB"
               }
              }
             }
             stage('Compare Metrics') {
              steps {
               script {
                echo "Compare Metrics Test1 vs REF"
               }
              }
             }
            }
           }     
           stage('TE2') {
            stages {
             stage('PUSH TE2') {
              steps {
               script {
                //Trigger a job
                sleep time: 5, unit: 'MINUTES'
                echo "Test2"
               }
              }
             }
             stage('Archive Logs') {
              steps {
               script {
                echo "Archive Test2 Logs"
               }
              }
             }
             stage('Insert Metrics') {
              steps {
               script {
                echo "Insert Test2 Metrics in DB"
               }
              }
             }
             stage('Compare Metrics') {
              steps {
               script {
                echo "Compare Metrics Test2 vs REF"
               }
              }
             }
            }
           }    
          }
         }  
      }
      }
      

        Attachments

          Issue Links

            Activity

            ekassis Elie Kassis created issue -
            ekassis Elie Kassis made changes -
            Field Original Value New Value
            Description After updating the Blue ocean to the latest version released last week, Blue Ocean is having issues displaying the status of parallel stages properly.

            I have 2 stages in parallel which contains several sequential stage each.
            While they are {color:#FF0000}both processing{color}, one of the parallel stages is showing as green (DONE) and the other shown as Processing but not displaying the triggered builds.

            You can find my pipeline code below.


            {code:java}
             pipeline {
              agent any
              stages { stage('Pushing 2 Tests') {
                //failFast true
                parallel {
                 stage('TE1') {
                  stages {
                   stage('PUSH TE1') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test1"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test1 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test1 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test1 vs REF"
                     }
                    }
                   }
                  }
                 }
                 stage('TE2') {
                  stages {
                   stage('PUSH TE2') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test2"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test2 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test2 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test2 vs REF"
                     }
                    }
                   }
                  }
                 }
                }
               }
            }
            }
            {code}
            After updating the Blue ocean to the latest version released 16 August, Blue Ocean is having issues displaying the status of parallel stages properly.

            I have 2 stages in parallel which contains several sequential stage each.
             While they are {color:#ff0000}both processing{color}, one of the parallel stages is showing as green (DONE) and the other shown as Processing but not displaying the triggered builds.

            You can find my pipeline code below.
            {code:java}
             pipeline {
              agent any
              stages { stage('Pushing 2 Tests') {
                //failFast true
                parallel {
                 stage('TE1') {
                  stages {
                   stage('PUSH TE1') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test1"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test1 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test1 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test1 vs REF"
                     }
                    }
                   }
                  }
                 }
                 stage('TE2') {
                  stages {
                   stage('PUSH TE2') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test2"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test2 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test2 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test2 vs REF"
                     }
                    }
                   }
                  }
                 }
                }
               }
            }
            }
            {code}
            ekassis Elie Kassis made changes -
            Description After updating the Blue ocean to the latest version released 16 August, Blue Ocean is having issues displaying the status of parallel stages properly.

            I have 2 stages in parallel which contains several sequential stage each.
             While they are {color:#ff0000}both processing{color}, one of the parallel stages is showing as green (DONE) and the other shown as Processing but not displaying the triggered builds.

            You can find my pipeline code below.
            {code:java}
             pipeline {
              agent any
              stages { stage('Pushing 2 Tests') {
                //failFast true
                parallel {
                 stage('TE1') {
                  stages {
                   stage('PUSH TE1') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test1"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test1 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test1 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test1 vs REF"
                     }
                    }
                   }
                  }
                 }
                 stage('TE2') {
                  stages {
                   stage('PUSH TE2') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test2"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test2 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test2 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test2 vs REF"
                     }
                    }
                   }
                  }
                 }
                }
               }
            }
            }
            {code}
            After updating the Blue ocean to the latest version released 16 August, Blue Ocean is having issues displaying the status of parallel stages properly.

            I have 2 stages in parallel which contains several sequential stage each.
             While they are {color:#ff0000}both processing{color}, one of the parallel stages is showing as *green* ({color:#00875a}*DONE*{color}) and the other shown as Processing but not displaying the triggered builds.

            You can find my pipeline code below.
            {code:java}
             pipeline {
              agent any
              stages { stage('Pushing 2 Tests') {
                //failFast true
                parallel {
                 stage('TE1') {
                  stages {
                   stage('PUSH TE1') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test1"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test1 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test1 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test1 vs REF"
                     }
                    }
                   }
                  }
                 }
                 stage('TE2') {
                  stages {
                   stage('PUSH TE2') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test2"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test2 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test2 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test2 vs REF"
                     }
                    }
                   }
                  }
                 }
                }
               }
            }
            }
            {code}
            ekassis Elie Kassis made changes -
            Description After updating the Blue ocean to the latest version released 16 August, Blue Ocean is having issues displaying the status of parallel stages properly.

            I have 2 stages in parallel which contains several sequential stage each.
             While they are {color:#ff0000}both processing{color}, one of the parallel stages is showing as *green* ({color:#00875a}*DONE*{color}) and the other shown as Processing but not displaying the triggered builds.

            You can find my pipeline code below.
            {code:java}
             pipeline {
              agent any
              stages { stage('Pushing 2 Tests') {
                //failFast true
                parallel {
                 stage('TE1') {
                  stages {
                   stage('PUSH TE1') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test1"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test1 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test1 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test1 vs REF"
                     }
                    }
                   }
                  }
                 }
                 stage('TE2') {
                  stages {
                   stage('PUSH TE2') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test2"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test2 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test2 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test2 vs REF"
                     }
                    }
                   }
                  }
                 }
                }
               }
            }
            }
            {code}
            After updating the Blue ocean to the latest version 1.8.2 released 16 August, Blue Ocean is having issues displaying the status of parallel stages properly.

            I have 2 stages in parallel which contains several sequential stage each.
             While they are {color:#ff0000}both processing{color}, one of the parallel stages is showing as *green* ({color:#00875a}*DONE*{color}) and the other shown as Processing but not displaying the triggered builds.

            You can find my pipeline code below.
            {code:java}
             pipeline {
              agent any
              stages { stage('Pushing 2 Tests') {
                //failFast true
                parallel {
                 stage('TE1') {
                  stages {
                   stage('PUSH TE1') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test1"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test1 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test1 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test1 vs REF"
                     }
                    }
                   }
                  }
                 }
                 stage('TE2') {
                  stages {
                   stage('PUSH TE2') {
                    steps {
                     script {
                      //Trigger a job
                      sleep time: 5, unit: 'MINUTES'
                      echo "Test2"
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      echo "Archive Test2 Logs"
                     }
                    }
                   }
                   stage('Insert Metrics') {
                    steps {
                     script {
                      echo "Insert Test2 Metrics in DB"
                     }
                    }
                   }
                   stage('Compare Metrics') {
                    steps {
                     script {
                      echo "Compare Metrics Test2 vs REF"
                     }
                    }
                   }
                  }
                 }
                }
               }
            }
            }
            {code}
            ekassis Elie Kassis made changes -
            Priority Major [ 3 ] Critical [ 2 ]
            Hide
            vivek Vivek Pandey added a comment -

            > the other shown as Processing but not displaying the triggered builds.

            You mean when you click them the steps are not shown?

            Nicolae Pascu PTAL

            Show
            vivek Vivek Pandey added a comment - > the other shown as Processing but not displaying the triggered builds. You mean when you click them the steps are not shown? Nicolae Pascu PTAL
            vivek Vivek Pandey made changes -
            Assignee Nicolae Pascu [ nicu ]
            Hide
            ekassis Elie Kassis added a comment -

            Vivek Pandey Yes indeed, when you click on the stage shown as Processing, the steps are not shown.
            As for the other processing stage shown wrongly as Passed, its steps are shown and can be selected. 

            Show
            ekassis Elie Kassis added a comment - Vivek Pandey Yes indeed, when you click on the stage shown as Processing , the steps are not shown. As for the other processing stage shown wrongly as Passed , its steps are shown and can be selected. 
            Hide
            vivek Vivek Pandey added a comment -

            Sometimes when stage is in progress, steps might not appear instantly because it might not yet be running so api serving them for the selected stage still be returning no steps.

            Regarding wrong status, Olivier Lamy Nicolae Pascu it might be api not returning correct status? I think there is existing issue with status of parallel stages, there might be ticket some where or may be its new one.

            Show
            vivek Vivek Pandey added a comment - Sometimes when stage is in progress, steps might not appear instantly because it might not yet be running so api serving them for the selected stage still be returning no steps. Regarding wrong status, Olivier Lamy Nicolae Pascu it might be api not returning correct status? I think there is existing issue with status of parallel stages, there might be ticket some where or may be its new one.
            ekassis Elie Kassis made changes -
            Attachment image-2018-08-20-19-51-36-113.png [ 43796 ]
            ekassis Elie Kassis made changes -
            Attachment image-2018-08-20-19-53-40-887.png [ 43797 ]
            Hide
            ekassis Elie Kassis added a comment - - edited

            Sorry Vivek Pandey, but this is not the case on my side my 2 stages are processing exactly the same jobs that takes 2 hours each, we are not talking about instantly status appearance. 
            As shown in below screenshots, the processing stage that is showing wrong Passed status (PUSH TE2), is showing the triggered builds properly. As for the stage showing processing status (PUSH TE1), the Triggered Builds section does not exist.

            Show
            ekassis Elie Kassis added a comment - - edited Sorry Vivek Pandey , but this is not the case on my side my 2 stages are processing exactly the same jobs that takes 2 hours each, we are not talking about instantly status appearance.  As shown in below screenshots, the processing stage that is showing wrong Passed status (PUSH TE2), is showing the triggered builds properly. As for the stage showing processing status (PUSH TE1), the Triggered Builds section does not exist.
            Hide
            ekassis Elie Kassis added a comment - - edited

            Vivek Pandey As seen in my previous comment, when clicking on the upper stage it is giving me the details of the Parent stage (Pushing 2 Tests / TE1) instead of the child (PUSH TE1) and when selecting the bottom stage it is giving me the details of the right stage (PUSH TE2) but with wrong status.

            Show
            ekassis Elie Kassis added a comment - - edited Vivek Pandey As seen in my previous comment, when clicking on the upper stage it is giving me the details of the Parent stage ( Pushing 2 Tests / TE1 ) instead of the child ( PUSH TE1 ) and when selecting the bottom stage it is giving me the details of the right stage ( PUSH TE2 ) but with wrong status .
            Hide
            ekassis Elie Kassis added a comment -

            Vivek Pandey, as a summary the expected behavior is to show processing stages as Processing and to be able to access the Triggered Builds upon clicking on the stage.

            Show
            ekassis Elie Kassis added a comment - Vivek Pandey , as a summary the expected behavior is to show processing stages as Processing  and to be able to access the Triggered Builds upon clicking on the stage.
            ekassis Elie Kassis made changes -
            Summary View Parallel stages in the pipeline showing wrong statuses (In Blue Ocean) Parallel stages in Blue Ocean showing wrong status
            ekassis Elie Kassis made changes -
            Attachment image-2018-08-22-16-11-36-340.png [ 43824 ]
            Hide
            ekassis Elie Kassis added a comment -

            Vivek Pandey, in addition currently the Processing stages are not visible on Blue Ocean. They only appear once they are done.

            Show
            ekassis Elie Kassis added a comment - Vivek Pandey , in addition currently the Processing stages are not visible on Blue Ocean. They only appear once they are done.
            Hide
            ekassis Elie Kassis added a comment -

            Vivek Pandey, Nicolae Pascu, please let me know if you need more details.

            Show
            ekassis Elie Kassis added a comment - Vivek Pandey , Nicolae Pascu , please let me know if you need more details.
            ekassis Elie Kassis made changes -
            Attachment image-2018-08-23-01-15-45-479.png [ 43833 ]
            Hide
            ekassis Elie Kassis added a comment -

            Vivek Pandey, another case where 2 parallel stages are processing but shown in Blue Ocean in Grey (Pending).

            Show
            ekassis Elie Kassis added a comment - Vivek Pandey , another case where 2 parallel stages are processing but shown in Blue Ocean in Grey (Pending).
            Hide
            ekassis Elie Kassis added a comment -

            Nicolae Pascu Vivek Pandey is there any estimation when this issue will be fixed?

            Show
            ekassis Elie Kassis added a comment - Nicolae Pascu Vivek Pandey  is there any estimation when this issue will be fixed?
            Hide
            olamy Olivier Lamy added a comment -

            related to JENKINS-53311 ?

            Show
            olamy Olivier Lamy added a comment - related to  JENKINS-53311 ?
            Hide
            ekassis Elie Kassis added a comment - - edited

            Olivier Lamy yes related to JENKINS-53311 but with additional problem in my Jira related to "Triggered Builds" Field.

            In addition my Jira issue was reported before JENKINS-53311 and contains more examples 

            Show
            ekassis Elie Kassis added a comment - - edited Olivier Lamy yes related to  JENKINS-53311  but with additional problem in my Jira related to "Triggered Builds" Field. In addition my Jira issue was reported before JENKINS-53311  and contains more examples 
            olamy Olivier Lamy made changes -
            Link This issue duplicates JENKINS-53311 [ JENKINS-53311 ]
            Hide
            olamy Olivier Lamy added a comment -

            should be fixed with JENKINS-53311 

            Show
            olamy Olivier Lamy added a comment - should be fixed with  JENKINS-53311  
            olamy Olivier Lamy made changes -
            Status Open [ 1 ] Resolved [ 5 ]
            Assignee Nicolae Pascu [ nicu ] Olivier Lamy [ olamy ]
            Resolution Fixed [ 1 ]
            olamy Olivier Lamy made changes -
            Status Resolved [ 5 ] Fixed but Unreleased [ 10203 ]
            Hide
            ekassis Elie Kassis added a comment -

            Thank you Olivier Lamy.

            When it is expected to have the plugin patch ready in Jenkins ?

            Show
            ekassis Elie Kassis added a comment - Thank you Olivier Lamy . When it is expected to have the plugin patch ready in Jenkins ?
            Hide
            olamy Olivier Lamy added a comment -

            Elie Kassis Not sure. People are a bit busy this week with JW.

             

            Show
            olamy Olivier Lamy added a comment - Elie Kassis Not sure. People are a bit busy this week with JW.  
            ekassis Elie Kassis made changes -
            Attachment image-2018-09-22-13-17-53-432.png [ 44566 ]
            Hide
            ekassis Elie Kassis added a comment - - edited

            Olivier Lamy the status issue was resolved with your last fix (Blue Ocean 1.8.3)(Jenkins 2.138.1), but the Triggered Builds Section is not appearing when having processing stage.
            The Triggered Build section is only appearing when the stage is done.

            In addition when having several parallel stages processing at the same time, only 1 of the stages is having the blue circle with the blue dot blinking inside.

            Can you please check?

            Show
            ekassis Elie Kassis added a comment - - edited Olivier Lamy the status issue was resolved with your last fix (Blue Ocean 1.8.3)(Jenkins 2.138.1), but the Triggered Builds Section is not appearing when having processing stage. The Triggered Build section is only appearing when the stage is done. In addition when having several parallel stages processing at the same time, only 1 of the stages is having the blue circle with the blue dot blinking inside. Can you please check?
            ekassis Elie Kassis made changes -
            Status Fixed but Unreleased [ 10203 ] Reopened [ 4 ]
            ekassis Elie Kassis made changes -
            Summary Parallel stages in Blue Ocean showing wrong status Parallel sequential stages in Blue Ocean showing wrong status with no Triggered Builds
            Hide
            olamy Olivier Lamy added a comment - - edited

            Triggered Builds but how do you trigger the jobs?

            Show
            olamy Olivier Lamy added a comment - - edited Triggered Builds but  how do you trigger the jobs?
            Hide
            ekassis Elie Kassis added a comment - - edited

            I trigger jobs from inside the stage as shown below code sample.
            Noting that the Triggered Builds section was working properly previously before you started allowing in Blue Ocean to display sequential stages inside a parallel one.

            It is very important and crucial to see the Triggered Builds within a stage while PROCESSING and not just when the stage is DONE.

             

            stage('Pushing 2 Tests and 2 Debug jobs') {
                //failFast true
                when {
                 expression {
                  Push2TEs == 'true'
                 }
                }
                parallel {     stage('TE1') {
                  stages {
                   stage('PUSH TE1') {
                    options {
                     retry(2)
                     timeout(time: 3, unit: 'HOURS')
                    }
                    steps {
                     script {
                      timestamps {
                       println("${STAGE_BEGIN} PUSH TE1")
                       def TE1build = build job: "TESTING/${TEST_LABEL1}/PAC_PTE/0010.TESTING-Headline",
                        parameters: [
                         [$class: 'StringParameterValue', name: 'MX_VERSION', value: MX_VERSION],
                         [$class: 'StringParameterValue', name: 'MX_CHANGELIST', value: MX_CHANGELIST],
                         [$class: 'BooleanParameterValue', name: 'Execute_benchmark', value: true],
                         [$class: 'BooleanParameterValue', name: 'Generate_traceability_reports', value: true],
                         [$class: 'StringParameterValue', name: 'SETUPS', value: 'Custom'],
                         [$class: 'StringParameterValue', name: 'Custom_Script_Before', value: '/nfs_qa_pac/pac-pte/jenkins/getEnvProperties.sh'],
                         [$class: 'StringParameterValue', name: 'Custom_Script_After', value: '/nfs_qa_pac/pac-pte/jenkins/restoreEnv.sh']
                        ],
                        propagate: false
                       LogJobStatus("${TEST_LABEL1}", TE1build.result)
                       currentBuild.result = TE1build.result
                      }
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      timestamps {
                       println("${STAGE_BEGIN} Archive ${TEST_LABEL1} Logs")
                       //sleep time: 1, unit: 'MINUTES'
                       def archiveLogsTE1 = build job: 'Archiving',
                        parameters: [
                         [$class: 'StringParameterValue', name: 'BENCH_MARK_NAME', value: TE1_BENCH_MARK_NAME],
                         [$class: 'StringParameterValue', name: 'VERSION', value: MX_VERSION],
                         [$class: 'StringParameterValue', name: 'CHANGELIST', value: MX_CHANGELIST],
                         [$class: 'StringParameterValue', name: 'APP_DIR', value: TE1_APP_DIR],
                         [$class: 'StringParameterValue', name: 'RESULTS_DIR', value: TE1_LOG_DIR],
                         [$class: 'StringParameterValue', name: 'KPI_DIR', value: TE1_WORKSPACE],
                         [$class: 'StringParameterValue', name: 'TPK', value: TPK],
                         [$class: 'StringParameterValue', name: 'JOB_ID', value: JOB_ID],
                         [$class: 'StringParameterValue', name: 'TEST_ID', value: TEST_LABEL1],
                         [$class: 'StringParameterValue', name: 'NODE', value: TE1_NODE]
                        ],
                        propagate: false
                       currentBuild.result = archiveLogsTE1.result
                       LogJobStatus("Archive ${TEST_LABEL1} Logs", archiveLogsTE1.result)           println("${STAGE_END} Archive ${TEST_LABEL1} Logs")
                      }
                     }
                    }
                   }
                  }
                 }     stage('TE2') {
                  stages {
                   stage('PUSH TE2') {
                    options {
                     retry(2)
                     timeout(time: 3, unit: 'HOURS')
                    }
                    steps {
                     script {
                      timestamps {
                       println("${STAGE_BEGIN} PUSH TE2")
                       def TE2build = build job: "TESTING/${TEST_LABEL2}/PAC_PTE/0010.TESTING-Headline",
                        parameters: [
                         [$class: 'StringParameterValue', name: 'MX_VERSION', value: MX_VERSION],
                         [$class: 'StringParameterValue', name: 'MX_CHANGELIST', value: MX_CHANGELIST],
                         [$class: 'BooleanParameterValue', name: 'Execute_benchmark', value: true],
                         [$class: 'BooleanParameterValue', name: 'Generate_traceability_reports', value: true],
                         [$class: 'StringParameterValue', name: 'SETUPS', value: 'Custom'],
                         [$class: 'StringParameterValue', name: 'Custom_Script_Before', value: '/nfs_qa_pac/pac-pte/jenkins/getEnvProperties.sh'],
                         [$class: 'StringParameterValue', name: 'Custom_Script_After', value: '/nfs_qa_pac/pac-pte/jenkins/restoreEnv.sh']
                        ],
                        propagate: false
                       LogJobStatus("PUSH TE2", TE2build.result)
                       currentBuild.result = TE2build.result       
                      }
                     }
                    }
                   }
                   stage('Archive Logs') {
                    steps {
                     script {
                      timestamps {
                       println("${STAGE_BEGIN} Archive ${TEST_LABEL2} Logs")
                       //sleep time: 1, unit: 'MINUTES'
                       def archiveLogsTE2 = build job: 'Archiving',
                        parameters: [
                         [$class: 'StringParameterValue', name: 'BENCH_MARK_NAME', value: TE2_BENCH_MARK_NAME],
                         [$class: 'StringParameterValue', name: 'VERSION', value: MX_VERSION],
                         [$class: 'StringParameterValue', name: 'CHANGELIST', value: MX_CHANGELIST],
                         [$class: 'StringParameterValue', name: 'APP_DIR', value: TE2_APP_DIR],
                         [$class: 'StringParameterValue', name: 'RESULTS_DIR', value: TE2_LOG_DIR],
                         [$class: 'StringParameterValue', name: 'TPK', value: TPK],
                         [$class: 'StringParameterValue', name: 'JOB_ID', value: JOB_ID],
                         [$class: 'StringParameterValue', name: 'TEST_ID', value: TEST_LABEL2],
                         [$class: 'StringParameterValue', name: 'NODE', value: TE2_NODE]
                        ],
                        propagate: false
                       currentBuild.result = archiveLogsTE2.result
                       LogJobStatus("Archive ${TEST_LABEL2} Logs", archiveLogsTE2.result)           println("${STAGE_END} Archive ${TEST_LABEL2} Logs")
                      }
                     }
                    }
                   }
                  }
                 }     stage('HEAD DEBUG') {
                  stages {
                   stage('PUSH HEAD DEBUG') {
                    options {
                     retry(2)
                     timeout(time: 2, unit: 'HOURS')
                    }
                    steps {
                     script {
                      timestamps {
                       println("${STAGE_BEGIN} PUSH HEAD DEBUG")
                       try {
                        //STREAM_ID='DEBUG230820181643'
                        def pushHeadDebugJob = build job: "TESTING/${STREAM_ID}/PAC_PTE/0010.TESTING-Headline",
                         parameters: [
                          [$class: 'StringParameterValue', name: 'MX_VERSION', value: MX_VERSION],
                          [$class: 'StringParameterValue', name: 'MX_CHANGELIST', value: MX_CHANGELIST],
                          [$class: 'BooleanParameterValue', name: 'Execute_benchmark', value: false],
                          [$class: 'BooleanParameterValue', name: 'Generate_traceability_reports', value: false],
                          [$class: 'StringParameterValue', name: 'SETUPS', value: 'Custom'],
                          [$class: 'StringParameterValue', name: 'Custom_Script_Before', value: '/nfs_qa_pac/pac-pte/jenkins/getEnvProperties.sh'],
                          [$class: 'StringParameterValue', name: 'Custom_Script_After', value: '/nfs_qa_pac/pac-pte/jenkins/restoreEnv.sh']
                         ],
                         propagate: false
                        currentBuild.result = pushHeadDebugJob.result           } catch (all) {
                        echo 'Pushing Head Debug job Failed'
                        return 0
                       }
                       println("${STAGE_END} PUSH HEAD DEBUG")
                      }
                     }
                    }
                   }
                   stage('DEPLOY CLIENT HEAD') {
                    steps {
                     script {
                      timestamps {
                       println("${STAGE_BEGIN} Deploying Client HEAD")
                       try {
                        def DeployClient = build job: 'DeployClient',
                         parameters: [
                          [$class: 'StringParameterValue', name: 'NODE', value: 'pacpte_pte02nt'],
                          [$class: 'StringParameterValue', name: 'PROPERTIES', value: '/nfs_qa_pac/pac-pte/jenkins/env_properties/0010.TESTING-' + STREAM_ID + '-Headline.properties'],
                          [$class: 'StringParameterValue', name: 'CHANGELIST', value: MX_CHANGELIST],
                          [$class: 'StringParameterValue', name: 'OPERATING_SYSTEM', value: OPERATING_SYSTEM],
                          [$class: 'StringParameterValue', name: 'DEBUG_NODE', value: HEAD_DEBUG_NODE],
                          [$class: 'StringParameterValue', name: 'DEBUG_APP_DIR', value: HEAD_DEBUG_APP_DIR]
                         ],
                         propagate: false
                        currentBuild.result = DeployClient.result
                       } catch (all) {
                        echo 'Deploy Head Debug Client Failed'
                        return 0
                       }
                       println("${STAGE_END} Deploying Client HEAD")
                      }
                     }
                    }
                   }
                  }
                 }    }
               }
            
            Show
            ekassis Elie Kassis added a comment - - edited I trigger jobs from inside the stage as shown below code sample. Noting that the Triggered Builds section was working properly previously before you started allowing in Blue Ocean to display sequential stages inside a parallel one. It is very important and crucial to see the Triggered Builds within a stage while PROCESSING and not just when the stage is DONE.   stage( 'Pushing 2 Tests and 2 Debug jobs' ) { //failFast true when { expression { Push2TEs == ' true ' } } parallel { stage( 'TE1' ) { stages { stage( 'PUSH TE1' ) { options { retry(2) timeout(time: 3, unit: 'HOURS' ) } steps { script { timestamps { println( "${STAGE_BEGIN} PUSH TE1" ) def TE1build = build job: "TESTING/${TEST_LABEL1}/PAC_PTE/0010.TESTING-Headline" , parameters: [ [$class: 'StringParameterValue' , name: 'MX_VERSION' , value: MX_VERSION], [$class: 'StringParameterValue' , name: 'MX_CHANGELIST' , value: MX_CHANGELIST], [$class: 'BooleanParameterValue' , name: 'Execute_benchmark' , value: true ], [$class: 'BooleanParameterValue' , name: 'Generate_traceability_reports' , value: true ], [$class: 'StringParameterValue' , name: 'SETUPS' , value: 'Custom' ], [$class: 'StringParameterValue' , name: 'Custom_Script_Before' , value: '/nfs_qa_pac/pac-pte/jenkins/getEnvProperties.sh' ], [$class: 'StringParameterValue' , name: 'Custom_Script_After' , value: '/nfs_qa_pac/pac-pte/jenkins/restoreEnv.sh' ] ], propagate: false LogJobStatus( "${TEST_LABEL1}" , TE1build.result) currentBuild.result = TE1build.result } } } } stage( 'Archive Logs' ) { steps { script { timestamps { println( "${STAGE_BEGIN} Archive ${TEST_LABEL1} Logs" ) //sleep time: 1, unit: 'MINUTES' def archiveLogsTE1 = build job: 'Archiving' , parameters: [ [$class: 'StringParameterValue' , name: 'BENCH_MARK_NAME' , value: TE1_BENCH_MARK_NAME], [$class: 'StringParameterValue' , name: 'VERSION' , value: MX_VERSION], [$class: 'StringParameterValue' , name: 'CHANGELIST' , value: MX_CHANGELIST], [$class: 'StringParameterValue' , name: 'APP_DIR' , value: TE1_APP_DIR], [$class: 'StringParameterValue' , name: 'RESULTS_DIR' , value: TE1_LOG_DIR], [$class: 'StringParameterValue' , name: 'KPI_DIR' , value: TE1_WORKSPACE], [$class: 'StringParameterValue' , name: 'TPK' , value: TPK], [$class: 'StringParameterValue' , name: 'JOB_ID' , value: JOB_ID], [$class: 'StringParameterValue' , name: 'TEST_ID' , value: TEST_LABEL1], [$class: 'StringParameterValue' , name: 'NODE' , value: TE1_NODE] ], propagate: false currentBuild.result = archiveLogsTE1.result LogJobStatus( "Archive ${TEST_LABEL1} Logs" , archiveLogsTE1.result) println( "${STAGE_END} Archive ${TEST_LABEL1} Logs" ) } } } } } } stage( 'TE2' ) { stages { stage( 'PUSH TE2' ) { options { retry(2) timeout(time: 3, unit: 'HOURS' ) } steps { script { timestamps { println( "${STAGE_BEGIN} PUSH TE2" ) def TE2build = build job: "TESTING/${TEST_LABEL2}/PAC_PTE/0010.TESTING-Headline" , parameters: [ [$class: 'StringParameterValue' , name: 'MX_VERSION' , value: MX_VERSION], [$class: 'StringParameterValue' , name: 'MX_CHANGELIST' , value: MX_CHANGELIST], [$class: 'BooleanParameterValue' , name: 'Execute_benchmark' , value: true ], [$class: 'BooleanParameterValue' , name: 'Generate_traceability_reports' , value: true ], [$class: 'StringParameterValue' , name: 'SETUPS' , value: 'Custom' ], [$class: 'StringParameterValue' , name: 'Custom_Script_Before' , value: '/nfs_qa_pac/pac-pte/jenkins/getEnvProperties.sh' ], [$class: 'StringParameterValue' , name: 'Custom_Script_After' , value: '/nfs_qa_pac/pac-pte/jenkins/restoreEnv.sh' ] ], propagate: false LogJobStatus( "PUSH TE2" , TE2build.result) currentBuild.result = TE2build.result } } } } stage( 'Archive Logs' ) { steps { script { timestamps { println( "${STAGE_BEGIN} Archive ${TEST_LABEL2} Logs" ) //sleep time: 1, unit: 'MINUTES' def archiveLogsTE2 = build job: 'Archiving' , parameters: [ [$class: 'StringParameterValue' , name: 'BENCH_MARK_NAME' , value: TE2_BENCH_MARK_NAME], [$class: 'StringParameterValue' , name: 'VERSION' , value: MX_VERSION], [$class: 'StringParameterValue' , name: 'CHANGELIST' , value: MX_CHANGELIST], [$class: 'StringParameterValue' , name: 'APP_DIR' , value: TE2_APP_DIR], [$class: 'StringParameterValue' , name: 'RESULTS_DIR' , value: TE2_LOG_DIR], [$class: 'StringParameterValue' , name: 'TPK' , value: TPK], [$class: 'StringParameterValue' , name: 'JOB_ID' , value: JOB_ID], [$class: 'StringParameterValue' , name: 'TEST_ID' , value: TEST_LABEL2], [$class: 'StringParameterValue' , name: 'NODE' , value: TE2_NODE] ], propagate: false currentBuild.result = archiveLogsTE2.result LogJobStatus( "Archive ${TEST_LABEL2} Logs" , archiveLogsTE2.result) println( "${STAGE_END} Archive ${TEST_LABEL2} Logs" ) } } } } } } stage( 'HEAD DEBUG' ) { stages { stage( 'PUSH HEAD DEBUG' ) { options { retry(2) timeout(time: 2, unit: 'HOURS' ) } steps { script { timestamps { println( "${STAGE_BEGIN} PUSH HEAD DEBUG" ) try { //STREAM_ID= 'DEBUG230820181643' def pushHeadDebugJob = build job: "TESTING/${STREAM_ID}/PAC_PTE/0010.TESTING-Headline" , parameters: [ [$class: 'StringParameterValue' , name: 'MX_VERSION' , value: MX_VERSION], [$class: 'StringParameterValue' , name: 'MX_CHANGELIST' , value: MX_CHANGELIST], [$class: 'BooleanParameterValue' , name: 'Execute_benchmark' , value: false ], [$class: 'BooleanParameterValue' , name: 'Generate_traceability_reports' , value: false ], [$class: 'StringParameterValue' , name: 'SETUPS' , value: 'Custom' ], [$class: 'StringParameterValue' , name: 'Custom_Script_Before' , value: '/nfs_qa_pac/pac-pte/jenkins/getEnvProperties.sh' ], [$class: 'StringParameterValue' , name: 'Custom_Script_After' , value: '/nfs_qa_pac/pac-pte/jenkins/restoreEnv.sh' ] ], propagate: false currentBuild.result = pushHeadDebugJob.result } catch (all) { echo 'Pushing Head Debug job Failed' return 0 } println( "${STAGE_END} PUSH HEAD DEBUG" ) } } } } stage( 'DEPLOY CLIENT HEAD' ) { steps { script { timestamps { println( "${STAGE_BEGIN} Deploying Client HEAD" ) try { def DeployClient = build job: 'DeployClient' , parameters: [ [$class: 'StringParameterValue' , name: 'NODE' , value: 'pacpte_pte02nt' ], [$class: 'StringParameterValue' , name: 'PROPERTIES' , value: '/nfs_qa_pac/pac-pte/jenkins/env_properties/0010.TESTING-' + STREAM_ID + '-Headline.properties' ], [$class: 'StringParameterValue' , name: 'CHANGELIST' , value: MX_CHANGELIST], [$class: 'StringParameterValue' , name: 'OPERATING_SYSTEM' , value: OPERATING_SYSTEM], [$class: 'StringParameterValue' , name: 'DEBUG_NODE' , value: HEAD_DEBUG_NODE], [$class: 'StringParameterValue' , name: 'DEBUG_APP_DIR' , value: HEAD_DEBUG_APP_DIR] ], propagate: false currentBuild.result = DeployClient.result } catch (all) { echo 'Deploy Head Debug Client Failed' return 0 } println( "${STAGE_END} Deploying Client HEAD" ) } } } } } } } }
            ekassis Elie Kassis made changes -
            Attachment image-2018-09-23-19-13-12-757.png [ 44568 ]
            Hide
            ekassis Elie Kassis added a comment -

            Olivier Lamy, you can find below for sequential Processing stages, Blue Ocean is showing the Triggered Builds section.

             

            Show
            ekassis Elie Kassis added a comment - Olivier Lamy , you can find below for sequential Processing stages, Blue Ocean is showing the Triggered Builds section.  
            ekassis Elie Kassis made changes -
            Attachment image-2018-09-23-20-42-44-112.png [ 44569 ]
            Hide
            ekassis Elie Kassis added a comment -

            Olivier Lamy, a new bug detected, when the first stage in a sequential parallel pipeline is done, the Processing stages got wrong status and show only 1 stage processing even thought there are 4 stages processing.

            Show
            ekassis Elie Kassis added a comment - Olivier Lamy , a new bug detected, when the first stage in a sequential parallel pipeline is done, the Processing stages got wrong status and show only 1 stage processing even thought there are 4 stages processing.
            Hide
            olamy Olivier Lamy added a comment -

            Elie Kassis please stop hijacking this issue. You reopen it and changing the description. This is totally wrong! it's a thread in a mailing list. So please open a new issue with correct description.

            Show
            olamy Olivier Lamy added a comment - Elie Kassis please stop hijacking this issue. You reopen it and changing the description. This is totally wrong! it's a thread in a mailing list. So please open a new issue with correct description.
            olamy Olivier Lamy made changes -
            Summary Parallel sequential stages in Blue Ocean showing wrong status with no Triggered Builds Parallel sequential stages in Blue Ocean showing wrong status
            Hide
            olamy Olivier Lamy added a comment -

            please open an other issue regarding the "Triggered Builds"

            Show
            olamy Olivier Lamy added a comment - please open an other issue regarding the "Triggered Builds"
            olamy Olivier Lamy made changes -
            Status Reopened [ 4 ] Closed [ 6 ]
            Hide
            ekassis Elie Kassis added a comment -

            Sorry Olivier Lamy, a new Jira issue opened:     JENKINS-53735

            Show
            ekassis Elie Kassis added a comment - Sorry Olivier Lamy , a new Jira issue opened:      JENKINS-53735

              People

              • Assignee:
                olamy Olivier Lamy
                Reporter:
                ekassis Elie Kassis
              • Votes:
                1 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: