当前位置: 首页 > 面试题库 >

我如何从Jenkins中的提交消息中获取JIRA发行号

唐炜
2023-03-14
问题内容

我正在使用Gitlab进行源代码管理,使用jenkins进行CI作业,使用JIRA进行问题跟踪。

一旦我以问题编号(例如“
Project-123编辑的演示文件”)提交到gitlab中,我就有一个jenkins钩子触发构建。我有JENKINS的Jira插件,并通过工作流操作使用Progress
JIRA问题。我有一个两部分的问题:

  1. 我用于搜索问题的JQL是:project=PROJ and status="Build Started" and updated >= "-15m" 我的工作流程操作是Jenkins Build Success 。但是,如果我有多个构建正在运行,则无论第二个构建如何结束,第一个构建成功完成时,它将把两个问题都转换为BUILD SUCCESSFUL。我想要一种方法,可以使用jenkins在jenkins的SCM更改中的提交消息来填充$ ISSUE_ID,以便我可以指定要转换的问题。
  2. 如果构建失败,则以不同的方式推进工作流程。

问题答案:

我最终使用了变通方法。这是我解决每个问题的方法:1-我编写了一个Shell脚本,该脚本通过请求api进行更改。然后,我编写了一个正则表达式以从提交消息中取出问题密钥。我只提取了第一个问题的参考。我使用jenkins中的envinject插件将问题ID注入为构建属性,以供以后由工作流程操作步骤进行JIRA插件的进度问题使用。这是shell脚本。

xmlfile=$(curl -s "http://*********:8080/jenkins/job/***/${BUILD_NUMBER}/api/xml?wrapper=changes&xpath=//changeSet//comment")

re="PRJ-([0-9])*"

if [[ $xmlfile =~ $re ]];

  then issueKey=${BASH_REMATCH[0]}

fi

re2="([0-9])+"

if [[ $issueKey =~ $re2 ]];

  then echo ISSUE_ID=${BASH_REMATCH[0]} > env.properties

fi

在jira pugin中,我使用issueKey = PRJ- $ ISSUE_ID作为具有状态的jql。

2-对于这一部分,我使用TriggerParametrizedBuild插件并在当前构建失败或不稳定的情况下开始构建。这个新版本仅将工作流程退回到“进行中”



 类似资料:
  • 我在java中有一个函数,在这个函数中我试图获取未读的消息。例如,如果我在broker中有偏移量为0、1、2的消息,这些消息已经被使用者读取,并且如果我关闭我的使用者一个小时。那时我产生的信息偏移量为3,4,5。之后,当我的消费者启动时,它应该从偏移量3读取消息,而不是从0读取消息。但是,它要么读取所有的消息,要么读取启动Kafka Consumer后产生的消息。我想读那些未读或未提交的消息 我尝

  • 当使用vscode的Git集成提交文件时,是否有任何方法可以编写多行提交消息,或者只限于一行? 到目前为止,VSCode在分段文件方面非常出色。但似乎我仍然必须从终端编写大部分提交消息。

  • 不一致js是一个用于Discord的API,允许开发人员为程序Discord制作插件。这是js中API代码的链接,https://github.com/hydrabolt/discord.js/ 不和谐被设置成像一个服务器,你在那里连接和聊天的渠道,我的问题是我如何从渠道拉消息数据。 他们所做的是在JSON缓存中设置所有通道,在通道中,对象是另一个带有消息对象的缓存(留档所说的)。但是当我到达消息

  • 问题内容: 我正在尝试从表中删除很多行。我想尝试将要删除的行放入游标中,然后继续对游标的每一行进行获取,删除,提交操作,直到它为空。 在下面的代码中,我们是行,并将其放入。 我如何修改下面的代码以从图片中删除TYPE,而只是简单地对光标本身进行操作即可。 问题答案: 为什么要分批提交?那只会减慢您的处理速度。除非有其他会话试图修改要删除的行,否则由于其他原因,这似乎是有问题的,最有效的方法是简单地

  • 我已经开始让我的制作人向Kafka发送数据,也让我的消费者提取相同的数据。当我在ApacheNIFI中使用ConsumerKafka处理器(kafka版本1.0)时,我脑海中很少有与kafka consumer相关的查询。 Q.1)当我第一次启动ConsumeKafka处理器时,我如何从开始和当前消息中读取消息? 问题2)以及在Kafka消费者关闭的情况下,如何在最后一条消费信息之后阅读信息? 在

  • 我有一个由IOThub触发的Azure函数。所以在Azure函数中,我有 如何从事件数据中获取设备id。 我试过了 它给出了一个错误的说法 以下文件说:https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-messages-construct ConnectionDeviceId包含设备ID。是否有人知道如何从EventDa