尽管阶段尚未执行,但阶段状态被标记为“已中止”

问题描述 投票:0回答:1

我的管道看起来像这样......

@Library('sharedLib')_
pipeline {
    agent any

    stages {
        stage('Init') {
            steps {
                //code
            }
        }
        stage('checklist') {
            parallel {
                stage('sonar Linters') {
                    steps {
                        script{
                           //code
                        }
                    }
                }
                stage('validate merge request') {
                    steps {
                        //code
                    }
                }
            }
        }
        stage('Build') {
            steps {
                script {
                    //code
                }
            }
        }
        
        stage("Automation Test") {
            parallel {
                    
                    stage('Unit Test') {
                    stages {
                    
            stage ('JUnit') {
              
                steps {
                    script {                            
                        //code
                    }                    
                }
            }

                    
            stage ('Mutation Coverage Report') {
               
            options {
            timeout(time: 30, unit: 'MINUTES')
            retry(2)
            
            }
                steps {
                    script {
                        //code
                    }
                }                            
               
            }
 
                    } }  
                    
            stage ("Impact Analysis Report") {
             
            options {
            timeout(time: 60, unit: 'MINUTES')
            
            
            }
                steps {
                    script { 
                   //code
                    }
                }
            }

                                                        
                    }
        } 
        
     
        
    }
}

在这里,我使用共享库来存储阶段明智的执行文件。当“build”阶段失败时,“junit”阶段状态在 /wfapi/describe jenkins API 中设置为“Aborted”。 junit 阶段有一个包含要执行的 try catch 块的文件。这是导致此问题的原因还是这是詹金斯问题?我该如何解决这个问题。

jenkins pipeline
1个回答
0
投票

检查“try-catch”块以确保在“junit”阶段正确完成错误处理和报告。确保检测到并正确记录任何异常。

防止错误影响:验证“构建”阶段所犯的错误不会对后续阶段(尤其是“junit”)产生影响。维持管道的预期流量可能取决于此。

应用条件执行:使用when指令根据“build”阶段的结果有条件地执行“junit”步骤。这有助于管理执行流程。

更新 Jenkins:确保您使用的是最新版本的 Jenkins。更新中经常包含可能解决意外行为的错误修复和增强功能。

© www.soinside.com 2019 - 2024. All rights reserved.