jenkins-pipeline - 如何调试以下 Jenkins 错误?
问题描述
我最近刚刚创建了一个新的 Jenkins 管道,它正在从存储库中的 Jenkinsfile 脚本中读取。我创建了一个分支,然后将此脚本提交给 repo。现在我正在尝试在 jenkins 上构建这个分支,但我收到以下错误,我不确定我做错了什么,因为我基本上是从我可以成功构建的现有 repo 中复制了 Jenkinsfile。这是我第一次为这个项目构建,但它不起作用。请指教。当它说“由于早期故障而跳过”时,这是什么意思以及如何识别此故障?
Commit message: "Project Foundation"
Cleaning workspace
> git rev-parse --verify HEAD # timeout=10
Resetting working tree
> git reset --hard # timeout=10
> git clean -fdx # timeout=10
[Pipeline] sh
+ git describe --tags
[Pipeline] }
[Pipeline] // script
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Build)
Stage "Build" skipped due to earlier failure(s)
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Test)
Stage "Test" skipped due to earlier failure(s)
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Publish Dev)
Stage "Publish Dev" skipped due to earlier failure(s)
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // withCredentials
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
ERROR: script returned exit code 128
Finished: FAILURE
解决方案
您的存储库似乎没有要描述的标签。
Jenkins 到达运行sh
shell 脚本git describe --tags
(见行首的加号+
,表示它已运行),但失败,退出代码 128,显示在控制台输出的末尾:
错误:脚本返回退出代码 128
显然,git describe
如果没有什么可描述的(在您的情况下为标签),似乎会退出该代码。
要从这里继续,您可以删除该行,或通过添加|| true
到命令来添加忽略错误:
sh "git describe --tags || true"
推荐阅读
- c# - .NET 标准项目中的原始 IL
- c# - 更改对象指针的值 C#
- android - 在公共存储库上添加 Google-services.json 以供 CircleCI 运行
- php - Phpmailer 错误:无法验证
- c - 如何在树莓派上控制 SPIDEV 模块中的 CS 信号
- pygame - Pygame:创建子弹 - 'Bullet' 对象不可调用
- c# - 在 UWP(C#) 中,有没有办法调用其他窗口?
- java - 如何在 Firebase 中获取多个图像的 URL
- e-commerce - 自定义模板订单确认页面
- ruby-on-rails - 如何从 rails helper 内容标签显示有组织的数据