当前位置: 首页 > 知识库问答 >
问题:

通过标记现有提交来触发Jenkins管道

方献
2023-03-14

描述

我设置了Jenkins(2.126),以便在推送新标记时构建管道。具体来说,我想标记master上的现有提交为释放版-3,并使其触发构建。根据几个消息来源,我想要的是可能的:

https://mohamicorp.atlassian.net/wiki/spaces/DOC/pages/136740885/Triggering詹金斯基于新标签

不幸的是,当我标记一个现有的提交并将其推送到Git存储库时,什么都不会发生。其他构建(由分支触发)按预期工作,并且当手动启动时,所讨论的标记触发的构建成功完成。

一些人认为,标记触发的管道应该从2.3版本开始工作。有什么我可以配置的吗?

尝试的截图

尝试在***处进行常规管道轮询

尝试使用多分支管道,每隔1分钟扫描一次:

相关问题

我发现以下问题与问题有关,应该解决。

  • https://issues.jenkins-ci.org/browse/JENKINS-38921
  • https://issues.jenkins-ci.org/browse/JENKINS-34176
  • https://issues.jenkins-ci.org/browse/JENKINS-14917
  • https://issues.jenkins-ci.org/browse/JENKINS-47077
  • https://issues.jenkins-ci.org/browse/JENKINS-47891
  • https://issues.jenkins-ci.org/browse/JENKINS-52376

共有1个答案

霍建柏
2023-03-14

您可以使用通用的网络钩子触发器插件。

在GitHub:

  1. 在GitHub中设置一个webhook来调用JENKINS_URL/generic webhook trigger/invoke?这里有代币吗

在詹金斯:

  1. 创建一个作业,并在触发器下启用通用触发器
  2. 使用JSONPath$. ref配置名为ref的变量
  3. 设置过滤文本为$ref
  4. 设置过滤器regexp为^(refs/tags/. )$
  5. 将令牌设置为一些令牌-这里

现在,当一个标签被推送到回购协议时,这个作业将被触发。

您可能还想从webook中选择其他值,如$.repository.ssh_url以获取SSH克隆URL。

 类似资料:
  • 我有一个管道(jenkins)工作,它使用多个存储库。 存储库是这样签出的: 现在,我想在对任何存储库进行提交时触发该作业。如何配置?

  • 我正在努力在将提交添加到GitHub上的特定分支时触发Jenkins Pipeline作业。 我在詹金斯工作选项上没有看到合适的构建触发器,就像詹金斯自由式工作一样。 如何将Jenkins管道作业设置为在使用新提交更新分支时触发? 到目前为止,我还没有找到这个场景的明确答案,只有在提交到master时触发Jenkins管道作业,只有关于多分支作业的答案。 任何关于这个问题的帮助将不胜感激!

  • 我有一个由github网络钩子触发的JenkinsPipeline作业,因此在提交到Github时会触发构建。但是,我只希望在向master分支提交时触发构建。目前,任何提交都会触发构建,即使提交是在功能分支上进行的。 有没有办法在不诉诸多分支工作的情况下实现这一点? 我在Jenkins配置、jenkinsfile或Github repo的webhook中看不到任何过滤分支(触发器)的方法。 我能

  • 问题内容: 我们的团队最近已从本地托管的Subversion存储库迁移到私有GitHub存储库。过去,当我们有一个准备标记为“已发布”的构建时,可以使用“标记此构建”边栏链接在该构建的内容上添加SVN标签。 随着迁移到GitHub,我已经在Jenkins中标记了一个构建版本,但是它似乎只是在本地标记了该构建版本。如果我在工作空间目录中运行,则会显示该标签,但不会将其推送到GitHub。 每当通过J

  • 问题内容: 我们一直在使用Jenkins进行持续集成。一个典型的构建作业在“源代码管理”部分中指定SVN存储库和凭据,然后在“构建触发器”部分中启用“轮询SCM”,轮询时间表为每10分钟(H / 10 * * ) 。我们已经更新到Jenkins的最新版本,并且正在寻求建立管道版本。典型的管道脚本如下所示: 当手动触发管道作业时,一切运行正常,但是,我们希望每次将新修订签入SVN存储库时都运行该管道

  • 我通过jira触发器插件将jenkins作业设置为触发器<但是jenkins作业没有被触发,尽管它从JIRA那里获得了webhook事件。 我检查了如下内容。 Jenkins得到了网络钩子事件。我在詹金斯日志上检查了这个。 我试着为詹金斯设置各种方式,但都失败了。我想知道如何设置jira触发器 > 测试环境 吉拉:6.4.11 我的测试用例是。。。 Jenkins工作设置 选中:向JIRA添加注释