Jenkins 的彩色控制台输出很好,但默认的白色背景使黄色文本极难阅读。 Blue Ocean 插件通过将黄色文本重新着色为焦橙色解决了这个问题,在白色/黑色背景上显示效果同样好。
由于 Blue Ocean 已被弃用并且加载它并不总是方便,我一直在查看 ANSI-Color 插件颜色图 将黄色重新映射为橙色。问题是,我无法让它实际交换颜色。
根据文档,应该足够简单,转到“管理 Jenkins”->系统->“ANSI 颜色”->高级并全局更新黄色的“xterm”颜色映射从
#CDCD00
到 #FF8700
(根据 wikipedia,这是有效的 ANSI 256 颜色。
在管道范围内将
options { ansiColor('xterm') }
添加到我的 Jenkinsfile 中,可以按预期从 dotnet build
获得彩色输出,但在控制台输出中我只得到黄色文本而不是替换值。
在浏览器中,我可以看到页面源代码中标记了转义代码,并且它使用默认的十六进制代码。如果我手动将十六进制代码更改为
#FF8700
,文本将更改为正确的颜色,因此看起来颜色似乎无法渲染。
<pre class="console-output">MSBuild version 17.9.4+90725d08d for .NET
Creating a model to represent the project...
Loading project references...
Loading project files...
Building the project model and resolving object interdependencies...
Validating the project model...
Writing model to /jenkins/workspace/<redacted>...
<!--[39;49m--><!--[33m--><span style="color: #CDCD00;">/jenkins/workspace<redacted>
...
我缺少什么技巧吗?