如何在TeamCity构建步骤中获取构建启动时间?
TeamCity 获取构建触发启动时间(无需额外插件/脚本)
不需要额外插件或自定义脚本,TeamCity自带预定义参数/环境变量可以直接获取构建触发启动的真实时间,常用的有以下几种:
%build.start.date%:返回构建启动日期,默认格式为yyyyMMdd(例:20240520)%build.start.time%:返回构建启动时间,默认格式为HHmmss(例:143025)%build.start.timestamp%:返回构建启动的毫秒级Unix时间戳(例:1716205825000),可自行转换为任意格式- 系统环境变量形式:对应上述参数的环境变量名会自动转换为大写、点替换为下划线,比如
$BUILD_START_DATE(bash)或%BUILD_START_DATE%(Windows CMD),可直接在脚本中调用
示例用法
在bash构建步骤中,可直接输出格式化后的触发时间:
# 使用TeamCity参数格式化输出 echo "Build triggered at %build.start.date:yyyy-MM-dd% %build.start.time:HH:mm:ss%" # 或者使用系统环境变量做格式转换 echo "Build triggered at ${BUILD_START_DATE:0:4}-${BUILD_START_DATE:4:2}-${BUILD_START_DATE:6:2} ${BUILD_START_TIME:0:2}:${BUILD_START_TIME:2:2}:${BUILD_START_TIME:4:2}"
自定义格式说明
TeamCity支持对日期/时间参数直接指定格式,比如:
%build.start.date:yyyy-MM-dd%将默认的yyyyMMdd转为2024-05-20格式%build.start.time:HH:mm:ss%将默认的HHmmss转为14:30:25格式
这些参数获取的是整个构建触发启动的时间,而非当前步骤执行的时间,完全符合需求,比用date命令的替代方案更准确。
内容的提问来源于stack exchange,提问作者Ayush Kumar
相关产品推荐
相关产品推荐

