Jenkins 构建日志已编码子 jobs/projects 的 URL

Jenkins build log has encoded URLs to child jobs/projects

我的 Jenkins(RHEL 上的 1.539)作业名为“Parent-Job”,配置为“Trigger/call 构建在其他项目上";触发的项目名为“Child-Job”。

Jenkins "console output" 显示正确的输出(带有 HTML 链接到已触发的子作业的纯文本),如下所示:

Console Output

Started by user Rodin, A
[EnvInject] - Loading node environment variables.
Building on master in workspace /var/test/build/jendev_home/jobs/Parent-Job/workspace
No emails were triggered.
Waiting for the completion of Child-Job
Child-Job #44 completed. Result was SUCCESS
...

但是在 build 目录中的 "log" 文件中,控制台输出中出现的链接都是 encoded,我无法解析这些链接,因为编码文本与预期值不匹配,如下所示:

Building on master in workspace /var/test/...
No emails were triggered.
Waiting for the completion of ESC[8mha:A..._very_long_encoded_value_...9M1g0N0AcApv0yfqQAAAA=ESC[0mChild-Job
...

我如何提取控制台输出的文本,与 Jenkins 控制台 上显示的格式完全相同text/html?

我需要将日志通过电子邮件发送给不同的用户,附件中的长编码链接会使他们忽略日志文件中的其他重要细节。

您可以使用 wget 命令获取控制台输出(在 post 构建步骤脚本中):

wget -O my_console.log ${BUILD_URL}consoleText