我知道可以使用 AnsiColor 插件在控制台输出中显示颜色。我测试了下面的基本示例:
// This shows a simple build wrapper example, using the AnsiColor plugin.
node {
// This displays colors using the 'xterm' ansi color map.
ansiColor('xterm') {
// Just some echoes to show the ANSI color.
stage "\u001B[31mI'm Red\u001B[0m Now not"
}
}
然而,这个例子太基础了,本质上是硬编码的。是否可以利用 AnsiColor 对整个控制台输出进行颜色编码?例如,当我为 .NET 项目执行 Nuget 和 MSBuild 时,我希望控制台输出对警告、错误等进行颜色编码。
The AnsiColor 插件“向控制台输出添加对 ANSI 转义序列(包括颜色)的支持”(https://wiki.jenkins.io/display/JENKINS/AnsiColor+Plugin)。它仅充当包装器,以便 Jenkins 控制台输出正确显示颜色,插件本身不会向控制台输出添加 ANSI 转义序列或颜色。
一个很好的例子是Ansible 插件其中“可以使用参数‘colorized: true’启用彩色输出”(https://wiki.jenkins.io/display/JENKINS/Ansible+Plugin#AnsiblePlugin-ColorizedOutput). The Ansible 插件的彩色输出需要AnsiColor 插件否则 Jenkins 控制台输出无法显示颜色。
彩色输出,无需AnsiColor 插件包装:
stage('build'){
node('master'){
...
ansiblePlaybook colorized: true, installation: 'ansible2.5.11', inventory: 'inventory/hosts', playbook: 'playbooks/example.yml'
}
}
![**Ansible Plugin** colorized: true without **AnsiColor** wrapper](https://i.stack.imgur.com/N0lnA.png)
彩色输出AnsiColor 插件包装:
stage('build'){
node('master'){
...
ansiColor('xterm') {
ansiblePlaybook colorized: true, installation: 'ansible2.5.11', inventory: 'inventory/hosts', playbook: 'playbooks/example.yml'
}
}
}
![**Ansible Plugin** colorized: true with **AnsiColor** wrapper](https://i.stack.imgur.com/Hg3ky.png)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)