TFS2018构建步骤中如何通过构建变量获取触发用户及触发时间?
在TFS 2018构建步骤中获取触发用户与构建触发时间
当然可以!TFS 2018提供了内置的构建变量来直接获取这两个信息,下面我给你详细说明怎么在构建步骤里使用它们:
获取触发构建的用户用户名
- 首先,TFS 2018内置了
Build.RequestedFor变量,它会返回触发构建的用户的显示名称(比如John Doe)。在构建步骤里,你可以直接用$(Build.RequestedFor)的语法引用它,比如在命令行步骤里输出:echo 触发构建的用户:$(Build.RequestedFor) - 如果需要获取用户的登录用户名(比如域账号里的
jdoe这类短名称),可以结合Build.RequestedForEmail变量来提取。比如在PowerShell构建步骤里,你可以这样处理:# 从邮箱中提取用户名部分 $userEmail = $env:BUILD_REQUESTEDFOREMAIL $userName = $userEmail.Split('@')[0] Write-Host "触发构建的用户用户名:$userName"
获取构建的触发时间
- TFS 2018的
Build.QueuedTime变量就是用来记录构建触发并进入队列的时间,它的格式是ISO 8601标准格式(比如2024-05-20T08:15:30.123Z)。直接引用的话,在命令行步骤里可以这么写:echo 构建触发时间:$(Build.QueuedTime) - 如果需要更易读的时间格式,比如
2024-05-20 16:15:30(本地时间),可以在PowerShell步骤里做格式转换:# 将ISO时间转换为本地时间并格式化 $queuedTime = [DateTime]$env:BUILD_QUEUEDTIME $formattedTime = $queuedTime.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss") Write-Host "格式化后的构建触发时间:$formattedTime"
这些变量都是TFS构建系统自动填充的,不需要你额外配置,只要在对应的构建步骤里直接引用就行。
内容的提问来源于stack exchange,提问作者doorman
相关产品推荐
相关产品推荐

