如何使用管道检索与jenkins中的构建相关联的工作项?

时间:2018-01-24 14:17:26

标签: jenkins tfs jenkins-pipeline

当我在jenkins管道中触发构建时,我使用build.changeSets变量来检索所有要通过电子邮件发送的更改,如下所示:

  def changeSets = build.changeSets
  if(changeSets != null) {
    def hadChanges = false %>
  <table class="section">
    <tr class="tr-title">
      <td class="td-title" colspan="2">Cambios</td>
    </tr>
    <% changeSets.each() { 
      cs_list -> cs_list.each() { 
        cs -> hadChanges = true %>
    <tr>
        <td class="td-subtitle">Usuario:</td>
        <td class="td-author">
        <%= cs.metaClass.hasProperty('commitId') ? cs.commitId : cs.metaClass.hasProperty('revision') ? cs.revision : cs.metaClass.hasProperty('changeNumber') ? cs.changeNumber : "" %>
        <B><%= cs.author %></B>
        </td>
    </tr>

但是我不知道如何重新检索与此更改相关的工作项,我该怎么办呢?

1 个答案:

答案 0 :(得分:0)

如果您使用TFS作为源代码管理器并使用Jenkins构建,因为您已经检索了更改集,那么您可以使用TFS changeset REST API获取工作项:

GET http://SERVER:8080/tfs/Collection/_apis/tfvc/changesets/{changesetID}/workItems

enter image description here

您还可以尝试使用Jenkins REST API来检索构建详细信息。 (每个页面的右下角都有一个REST API链接,jus尝试导航到特定的构建,然后使用REST API检查构建信息。)

另请查看下面的文章,它可能会有所帮助(最后一部分):

Visual Studio Team Services Integration with Jenkins