git - 我怎样才能让 Jenkins Gerrit 触发器忽略我的 CI 用户的提交?

标签 git jenkins jenkins-plugins gerrit gerrit-trigger

我希望我的代码审查工作忽略来自其他 Jenkins 工作的更改,例如我的发布工作。这些提交可以通过提交用户(首选)或提交注释字符串(也可以接受)来标识。

基本上我和问Ignore Jenkins job if commit message starts with a given string的用户有同样的问题,除了我没有使用带有轮询的 Git 插件。相反,我使用的是 Gerrit Trigger plugin ,它会在每个新的变更集上触发。

我相信下面的截图包含了GT插件的相关配置。

我在网上搜索过,但找不到如何完成此操作。我为 Git 插件找到了这种配置,但我无法使用它,因为我们使用的是 Gerrit,因此我们需要预提交变更集触发而不是轮询。

Trigger on "Patchset Created", "Draft published"

最佳答案

Gerrit Trigger 提供了一组变量,你可以在其中找到提交者的姓名、提交消息等。我使用的解决方案是测试这些变量的值,如果测试通过则结束构建作业。但如果您使用的是 Jenkins V2.3 或更高版本,则可能会出现问题。一些变量不能通过 shell 中的 $ 访问。可以引用Jenkins V2.3 release notes解决该问题。您可以按Gerrit 事件 右侧的问号以查看变量列表。

关于git - 我怎样才能让 Jenkins Gerrit 触发器忽略我的 CI 用户的提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37807941/

相关文章:

git - VSTS - 防止推送到掌握但允许 PR merge

swift - 将 cryptoswift 分支到 2.3

git - 如何检索 git pull 历史记录

jenkins - 如何从作业中设置环境变量并在 Jenkins 的下一个作业中使用它?

c# - 运行 selenium 单元测试时 Firefox 崩溃

github - SonarQube jenkins 插件对于 URL : https://api. github.com/user 返回 "Server returned HTTP response code: -1, message: ' null'”

intellij-idea - 智能 : control jenkins plugin crumb data

eclipse - Jenkins 和 Eclipse 插件

git - 一个 git 用于不同位置的多个文件夹

jenkins - 从 jenkins 管道 blueocean 手动更新提交和分支属性