TFS Build变量当前冲刺TFS 2015

时间:2017-02-22 16:34:36

标签: tfs2015 azure-pipelines-build-task

我们有一个CI构建服务器在进行自动构建,并希望在程序集版本中包含当前的sprint / iteration编号。是否有环境变量或简单的方法来获取构建过程中的当前sprint数? TFS On Perise 2015 Update 3

1 个答案:

答案 0 :(得分:7)

没有内置变量来获取当前sprint,但您可以使用REST API。 步骤进行:

  1. 将PowerShell文件添加到源代码管理中(例如,包含在项目中并签入)
  2. 代码:

    Param(
       [string]$collection,
       [string]$projectName,
       [string]$token
    )
    $uri="$collection/$projectName/_apis/work/teamsettings/iterations?`$timeframe=current&api-version=v2.0-preview"
    Write-Output $uri
    $result = Invoke-RestMethod -Uri $uri -Method Get -Headers @{Authorization=("Bearer {0}" -f $token)}
    
    Write-Output "success"
    Write-Output $result.value.path
    
    Write-Host "##vso[task.setvariable variable=currentSprint;]$($result.value.path)"
    
    1. 修改您的构建定义
    2. 单击“选项”选项卡,然后选中“允许脚本访问OAuth令牌”
    3. enter image description here

      1. 添加PowerShell构建步骤并指定PowerShell文件(步骤1)(参数:-collection $(System.TeamFoundationCollectionUri)-projectName $(System.TeamProject)-token $(System.AccessToken))
      2. enter image description here

        之后,当前的sprint值存储在currentSprint变量中。