Jenkins:按标签或参数过滤构建历史记录

时间:2015-04-21 09:52:41

标签: jenkins continuous-integration jenkins-plugins

是否可以在Jenkins中过滤构建历史记录,以便只显示具有特定标签或参数的构建?

假设我有一些参数化的工作。其中一个参数是一个简单的字符串,可以是“实验性”或“官方”。是否有任何插件可以让我过滤构建历史记录只显示“官方”构建?

3 个答案:

答案 0 :(得分:1)

您可以通过此插件https://wiki.jenkins-ci.org/display/JENKINS/View+Job+Filters

执行此操作

阅读所需的部分是"按作业参数化过滤"

答案 1 :(得分:0)

在Jenkins GitHub网站的监控插件中创建了问题,并发现了这个问题...... https://github.com/jan-molak/jenkins-build-monitor-plugin/issues/361

答案 2 :(得分:0)

构建(运行)+自定义运行描述的快速搜索

开箱即用Jenkins支持对按标签(描述)匹配的构建历史进行快速搜索。您在标签中放置的任何内容都可以在搜索中使用:

show a quicksearch of build history

...,因此您可以使用任何可以更改构建标签的插件来添加所需的信息,然后使用quicksearch。上面的示例使用了Groovy postbuild plugin的Pipeline插件,但是您可以使用任何感觉;说出description setter pluginjob name setter plugin

然后可以将诸如参数之类的内容插入作业名称。丑陋,烦人,冗长。而且没有保存罐头过滤器的便捷方法。但这有效。

此解决方法有许多缺陷:

  • 您无法保存过滤器
  • 您无法查看给定过滤器(参数,分支等)的构建趋势
  • 您不能仅查看过滤器的管道历史记录

这就是为什么许多人使用的原因:

工作模板-创建重复的工作

如果您想要罐头过滤器和方便保存的视图,目前看来,广泛使用的解决方法似乎是使用Jenkins Job Builder,作业模板插件等来生成许多类似的作业。使用单独的作业来管理单独的参数套件等。然后使用“视图”将作业按需要分组。

写插件吗?

我还没有找到任何现有的插件可以执行此操作。您可以实现自己的Item,以提供自定义的作业显示和/或覆盖“构建历史记录”列表,但我还没有找到任何罐头。

“构建历史记录” UI元素是BuildHistoryWidgetBuildHistoryWidget.java)。它实现了ExtensionPoint,因此您可以用@Extension覆盖它。您无需修补Jenkins。

在Google搜索"extends HistoryWidget" -"class BuildHistoryWidget"时,找不到任何现有的实现。

扩展Pipeline Stage View Plugin

如果您使用管道(工作流)作业,则不妨考虑扩展或修改管道Stage View Plugin以满足您的需求。

看起来是like it's designed to be somewhat extensible。参见pipeline-staged.hbs