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

Parallel sequential stages not showing Triggered Builds while Processing

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Blocker Blocker
    • blueocean-plugin
    • Jenkins: 2.138.1
      Blue Ocean: 1.8.3
      OS: RHEL7.2
      Browser: Google Chrome

      The Triggered Builds Section in Blue Ocean, is not appearing when having processing parallel sequential stages.
      The Triggered Build section is only appearing when the stage is done or for normal sequential stages.

      You can find below a sample of the code pushing jobs.

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

          [JENKINS-53735] Parallel sequential stages not showing Triggered Builds while Processing

          Elie Kassis created issue -
          Olivier Lamy made changes -
          Assignee New: Olivier Lamy [ olamy ]
          Elie Kassis made changes -
          Priority Original: Major [ 3 ] New: Critical [ 2 ]
          Christophe Genot made changes -
          Assignee Original: Olivier Lamy [ olamy ]
          Christophe Genot made changes -
          Assignee New: Olivier Lamy [ olamy ]
          Elie Kassis made changes -
          Priority Original: Critical [ 2 ] New: Blocker [ 1 ]
          Olivier Lamy made changes -
          Assignee Original: Olivier Lamy [ olamy ]
          Stefan Maurer made changes -
          Assignee New: Stefan Maurer [ stefanmaurer ]
          Stefan Maurer made changes -
          Assignee Original: Stefan Maurer [ stefanmaurer ]
          Andrei Muresianu made changes -
          Attachment New: image-2019-06-25-14-39-06-908.png [ 47771 ]

            Unassigned Unassigned
            ekassis Elie Kassis
            Votes:
            8 Vote for this issue
            Watchers:
            12 Start watching this issue

              Created:
              Updated: