我正在尝试编写一个詹金斯声明性管道代码来执行Shell脚本并捕获代码的退出状态。当我尝试执行时,它将引发异常。
.
执行此操作时,我得到以下执行:
pipeline {
stages {
stage ('shcheck'){
steps {
echo 'Hello world - shcheck'
status = sh(
returnStdout: true,
script: '''#!/usr/bin/bash
echo 'testing sh'
exit 0
'''
)
}
}
}
}
我希望0存储在“ 状态”变量中。我不确定是否缺少任何插件或配置设置。
我是詹金斯(Jenkins)的新手,我们将不胜感激。
詹金斯版2.150.1
答案 0 :(得分:0)
您的管道存在语法错误,导致验证失败。
agent
status = sh ()
需要放入script
固定代码:
pipeline {
agent any
stages {
stage ('shcheck'){
steps {
echo 'Hello world - shcheck'
script {
status = sh(
returnStdout: true,
script: '''#!/usr/bin/bash
echo 'testing sh'
exit 0
'''
)
}
}
}
}
}