如何获取TeamCity常规设置下的Build Name字段值?
TeamCity获取Build Name字段解决方案
方法1:使用内置预定义变量(推荐,无需调用API)
你要的General Settings下的构建配置固定名称,TeamCity有官方内置参数,在脚本中可以直接读取转换后的环境变量:
- 构建配置的固定名称(即General Settings页的Name字段值):对应参数
teamcity.buildConfName,PowerShell中读取环境变量$env:TEAMCITY_BUILDCONFNAME即可获取 - 构建运行时的动态名称(如果配置了自定义构建名称模板,生成的单次运行的构建名称):对应参数
build.name,PowerShell中读取环境变量$env:BUILD_NAME即可获取
示例代码:
# 读取构建配置固定名称 $buildConfigName = $env:TEAMCITY_BUILDCONFNAME # 读取当前运行实例的动态构建名称 $runtimeBuildName = $env:BUILD_NAME # 后续拼接MS Teams webhook消息逻辑即可直接使用上述变量
方法2:通过TeamCity REST API获取
如果有特殊场景需要走接口拉取,可以调用构建配置查询接口获取对应名称:
- 接口地址为
/app/rest/buildTypes/id:<构建配置ID>/name,返回值就是General Settings下的Name字段 - 构建配置ID可以直接通过内置环境变量
$env:TEAMCITY_BUILDTYPEID获取,无需手动配置 - 调用示例:
$teamcityHost = "替换为你的TeamCity服务根地址" $buildTypeId = $env:TEAMCITY_BUILDTYPEID $accessToken = "替换为你的TeamCity个人访问令牌" $headers = @{ "Authorization" = "Bearer $accessToken" "Accept" = "text/plain" } $buildConfigName = Invoke-RestMethod -Uri "$teamcityHost/app/rest/buildTypes/id:$buildTypeId/name" -Headers $headers -Method Get
内容的提问来源于stack exchange,提问作者livetoski78
相关产品推荐
相关产品推荐

