我正在 Kubernetes 上作为 pod 运行 Jenkins 版本 2.85(亲和性设置为一个工作节点)。我正在使用 Salt Jenkins module 创建就业机会通过将 XML 传递给该模块。
我正在使用 Jenkins Global Library 来执行作业。
我正在使用 repoURL、componet 等参数调用 GobalLibrary,
几周来一切都很顺利,现在我遇到了一个奇怪的情况,我的作业配置(config.xml)会自动更新/恢复。
间歇性地我的“使用参数构建”选项消失,我只能在 Jenkins GUI 中看到“立即构建”。最初我以为有人在这样做,所以为了跟踪配置更改,我在 Jenkins 中安装了作业配置历史记录插件,但我发现很奇怪。用户名为“SYSTEM”的人正在进行/恢复更改。
这就是它的样子
我发现系统用户仅恢复作业配置更改,而不恢复管道。
我不确定幕后出了什么问题以及如何停止或解决这个问题。这是我的生产实例,所以我更担心。
我可以在我的 Jenkins 中看到一个 SYSTEM 用户
但我无法删除该用户
我找到了一些相关问题,但没有答案
Configuration of Jobs getting updated by System user on Jenkins
Jenkins SYSTEM user removes custom workspace configuration
我不确定这个 Jenkins Bug 或某个插件是否在玩弄我的灵魂。
需要帮助! :(
最佳答案
好的,我找到了这个问题的答案。
我在 Jekins Global Library 中使用了类似这样的属性
// Disable concurrent builds
//properties([disableConcurrentBuilds()])
它会覆盖我的外部作业配置(通过 salt 完成)。
我从这个博客得到的提示: https://st-g.de/2016/12/parametrized-jenkins-pipelines
关于Jenkins 配置因系统用户异常而恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50192880/