jenkins pipeline执行cmd svn status,无变化删除本次build
时间: 2023-08-19 21:03:52 浏览: 150
JenkinsPipeline项目持续集成交互实践路径
可以使用以下代码段在 Jenkins pipeline 中执行 `svn status` 命令,并在没有变化时删除构建:
```groovy
stage('Check SVN status') {
steps {
script {
def status = sh(
returnStdout: true,
script: 'svn status'
).trim()
if (status.isEmpty()) {
currentBuild.result = 'ABORTED'
error('No changes found. Build has been aborted.')
}
}
}
}
```
在该代码段中,我们使用 `sh` 命令执行 `svn status` 命令,并将输出保存在 `status` 变量中。如果 `status` 变量为空,说明没有变化,我们将当前构建的结果设置为 `ABORTED` 并抛出一个错误。这将导致 Jenkins 停止构建,并将其标记为“已取消”。
请注意,在这里,我们使用 `ABORTED` 构建结果将其标记为“已取消”,而不是使用 `SUCCESS` 或 `FAILURE`。这是因为取消构建是一种“正常”的操作,不应被认为是构建失败。
阅读全文