如何忽略詹金斯管道中的失败阶段,并继续继续另一个阶段?

问题描述 投票:-2回答:1

((灵活的条件:我不知道哪个阶段会失败,就像詹金斯在一个阶段发现错误时的准备,继续进行下一阶段而不停止)。

我的问题是,当詹金斯发现正在运行的错误阶段时,所有排队的阶段都将被跳过。

FYI:我通过在Jenkins管道的每个阶段调用每个测试套件来运行Katalon项目。

在我尝试过的管道脚本下面:

    pipeline {
     agent {
       label 'QCatalon-Win10-1'
     } 
     stages{

// code to checkout and clean folder from git.hub

        stage('delete folder'){
            steps {
                dir('C:\\Users\\Catalon01\\jenkins\\workspace\\HP-APITest-QCatalon'){
                    deleteDir()
                }
            }
            }   
        stage('Git Checkout') {
                steps {
                    dir('C:\\Users\\Catalon01\\jenkins\\workspace\\HP-APITest-QCatalon') {
                        git 'https://github.com/QCatalon/HealthProvider-API'
                    }
                } 
            }       

/// code to executing katalon project


        stage('Get treatMaster') {      
                steps {
                    dir('E:\\Katalon_Studio_Windows_64-6.3.3'){
                        bat label: '', script: 'katalon -noSplash -runMode=console -projectPath="C:\\Users\\Catalon01\\jenkins\\workspace\\HP-APITest-QCatalon\\HealthProvider.prj" -retry=0 -testSuitePath="Test Suites/Api/Daftar Transaksi/Get treatMaster" -executionProfile="default" -browserType="Chrome" -apiKey="70b846ab-a86b-42fb-bc85-f9047e3007fa"'
                        catchError(buildResult: 'SUCCESS', stageResult: 'UNSTABLE') {
                        sh "exit 1"
                    }
                }               
            }  
        stage('Register Check Eiligibility') {
                steps {
                    dir('E:\\Katalon_Studio_Windows_64-6.3.3'){
                        bat label: '', script: 'katalon -noSplash -runMode=console -projectPath="C:\\Users\\Catalon01\\jenkins\\workspace\\HP-APITest-QCatalon\\HealthProvider.prj" -retry=0 -testSuitePath="Test Suites/Api/Daftar Transaksi/Register Check Eiligibility" -executionProfile="default" -browserType="Chrome" -apiKey="70b846ab-a86b-42fb-bc85-f9047e3007fa"'
                        catchError(buildResult: 'SUCCESS', stageResult: 'UNSTABLE') {
                            sh "exit 1"
                        }                   
                    }
                }
            }
        stage('Check Eligibility') {        
                steps {
                    dir('E:\\Katalon_Studio_Windows_64-6.3.3'){
                        bat label: '', script: 'katalon -noSplash -runMode=console -projectPath="C:\\Users\\Catalon01\\jenkins\\workspace\\HP-APITest-QCatalon\\HealthProvider.prj" -retry=0 -testSuitePath="Test Suites/Api/Tab Discharge/Check Eligibility" -executionProfile="default" -browserType="Chrome" -apiKey="70b846ab-a86b-42fb-bc85-f9047e3007fa"'
                        catchError(buildResult: 'SUCCESS', stageResult: 'UNSTABLE') {
                            sh "exit 1"
                        }
                    }
                }            
            }
        stage('Get Member Eligibility') {
                steps {
                    dir('E:\\Katalon_Studio_Windows_64-6.3.3'){
                        bat label: '', script: 'katalon -noSplash -runMode=console -projectPath="C:\\Users\\Catalon01\\jenkins\\workspace\\HP-APITest-QCatalon\\HealthProvider.prj" -retry=0 -testSuitePath="Test Suites/Api/Tab Discharge/Get Member Eligibility" -executionProfile="default" -browserType="Chrome" -apiKey="70b846ab-a86b-42fb-bc85-f9047e3007fa"'
                        catchError(buildResult: 'SUCCESS', stageResult: 'UNSTABLE') {
                            sh "exit 1"
                        }
                    }
                }
            }
        stage('Finish') {
            steps {
                echo 'Finish..'
            }
        }
      }
    }
jenkins automation jenkins-pipeline pipeline katalon-studio
1个回答
0
投票
   stage('Tab Discharge') {
        steps {
            script {
                try {
                    dir('E:\\Katalon_Studio_Windows_64-6.3.3'){
                        bat label: '', script: 'katalon -noSplash -runMode=console -projectPath="C:\\Users\\Catalon01\\jenkins\\workspace\\HP-APITest-QCatalon\\HealthProvider.prj" -retry=0 -testSuitePath="Test Suites/Api/Daftar Transaksi/Tab Discharge" -executionProfile="default" -browserType="Chrome" -apiKey="70b846ab-a86b-42fb-bc85-f9047e3007fa"' 
                    }
                } catch (error) {
                    stageResult: 'FAILURE'
                    } 
            }
        }
    }

    stage('Tab Eligibility') {
        steps {
            script {
                try {
                    dir('E:\\Katalon_Studio_Windows_64-6.3.3'){
                        bat label: '', script: 'katalon -noSplash -runMode=console -projectPath="C:\\Users\\Catalon01\\jenkins\\workspace\\HP-APITest-QCatalon\\HealthProvider.prj" -retry=0 -testSuitePath="Test Suites/Api/Daftar Transaksi/Tab Eligibility" -executionProfile="default" -browserType="Chrome" -apiKey="70b846ab-a86b-42fb-bc85-f9047e3007fa"'
                    }
                } catch (error) {
                    stageResult: 'FAILURE'
                    } 
            }
        }
    }


    stage('Finish') {
        steps {
            echo 'Finish..'
        }
    }
}

即使失败,所有阶段都已成功执行,但是管道中显示的内容表示所有成功,并且(绿色)即使我仍然需要有关某个阶段无法执行的信息,可能是在仪表板显示屏上显示为红色。

this is the dashboard of my pipeline, after making changes to the script above

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