步骤中处理内部构建日志

问题描述 投票:0回答:2

我想

grep
构建日志来计算编译器警告的数量。是否可以在此步骤或上一步中对构建日志运行命令?

TeamCity Enterprise 2022.04.4(内部版本 108763)

teamcity
2个回答
0
投票

您可以尝试将编译器的输出保存到文件中,然后对其进行 grep。例如

make 2>&1 | tee make.log
grep -o 'WARN' make.log | wc -l

在那种情况下

tee
将命令输出打印到标准输出和文件


0
投票

我找到了一种从 TeamCity 获取运行日志的方法。有点迂回的方式,但它有效:

warning_count=$(curl https://<teamcity-server>/downloadBuildLog.html?buildId=%teamcity.build.id% --user "%system.teamcity.auth.userId%:%system.teamcity.auth.password%" | grep -c 'warning: ')

它使用

curl
获取日志的方式与从web UI下载日志的方式相同。然后将结果输入
grep
.

附带奖励:

warning_count
可用于创建统计值:

echo "##teamcity[buildStatisticValue key='warning_count' value='$warning_count']"
© www.soinside.com 2019 - 2024. All rights reserved.