命令行状态码参考
在Jenkins流水线上若需要捕获扫描命令后的状态码,例如需要捕获源码迁移扫描命令的状态码(devkit porting src-mig -i /home/TestData/wtdbg2-2.5 -c make -r html),请使用以下代码示例。
pipeline {
agent any
options {
timeout(time: 1, unit: 'HOURS')
}
stages{
stage('PARALLEL BUILD') {
agent {
label 'kunpeng_scanner'
}
steps{
script{
def STATUS_CODE = sh(returnStatus: true, script: 'devkit porting src-mig -i /home/TestData/wtdbg2-2.5 -c make -r html')
switch(STATUS_CODE) {
case 0:
currentBuild.result = 'SUCCESS' # 自定义流水线的最终结果
echo '【源码迁移】--> 无扫描建议 <--'
break
case 1:
currentBuild.result = 'UNSTABLE'
echo '【源码迁移】--> 扫描结果仅存在建议项 <--'
break
case 5:
currentBuild.result = 'FAILURE'
echo '【源码迁移】--> 扫描结果存在必须修改项 <--'
break
case 3:
currentBuild.result = 'ABORTED'
echo '【源码迁移】--> 扫描结果超时 <--'
break
case 4:
currentBuild.result = 'ABORTED'
echo '【源码迁移】--> 扫描命令错误 <--'
break
default:
currentBuild.result = 'ABORTED'
echo '【源码迁移】--> 异常终断开{Ctrl + C | Ctrl + Z} <--'
break
}
}
}
post{
success{
echo '--> ✔ <--'
}
failure{
echo '--> ❌ <--'
}
unstable{
echo '--> ⚠ <--'
}
}
}
}
}
其命令行返回值如表1所示。
若流水线状态为失败,查看日志输出提示源码迁移扫描结果存在必须修改项,说明此源码若需要迁移到鲲鹏平台上,需要进行相应修改,因此会将流水线状态置为失败。
父主题: 源码迁移