【Jenkins】显示 HTML 标签

需求

在 Jenkins 中显示 HTML 标签内容(例如格式化的文本、颜色、图标等)是一个常见的需求,如下,编译工程显示当前编译的分支:

但 Jenkins 默认会出于安全考虑(防止 XSS 攻击)转义 HTML 标签,导致这些标签不会被解析为格式化的文本,而是直接以纯文本形式显示。但 Jenkins 默认会出于安全考虑(防止 XSS 攻击)转义 HTML 标签,导致这些标签不会被解析为格式化的文本,而是直接以纯文本形式显示。

如何实现

安装 Markup Formatter 插件

  • 在 Jenkins 的管理 页面中,进入 插件管理 > 可用插件

  • 搜索 Markup Formatter插件并安装。

设置描述信息

在您的 Jenkinsfile 或脚本中,设置 currentBuild.description

Groovy 复制代码
pipeline {
    agent {
        ...
    }

    stages {
        stage('Description') {  
            steps {  
                script {  
                    // 设置构建描述  
                    currentBuild.description = "分支: <span style='font-size:12px;color:green;'>${Branch}</span>"
                }
            }
        }  


}

全局安全配置

  • 在 Jenkins 的 Manage Jenkins ,进入 Security

  • 找到 标记格式器 ,选择 Safe HTML

**【注意】**虽然插件会过滤掉一些危险内容,但仍然需要谨慎使用,避免引入恶意脚本。

如果没有设置标记格式器为Safe HTML,而是原值:Plain Text,会直接显示原文本,显示为如下格式:

相关推荐
轩轶子23 分钟前
【Macbook环境配置】Macbook设置ssh免密登陆服务器
运维·服务器·ssh
Dillon Dong24 分钟前
服务器运维:Linux 磁盘查看 & 清理常用命令
linux·运维·服务器
ben9518chen29 分钟前
Linux用户管理
linux·运维·服务器
root666/1 小时前
【后端开发-nginx】proxy_pass和proxy_redirect参数作用
运维·nginx
2501_940414082 小时前
搞了一次平台工程,我把本地的 Docker Desktop 彻底卸了
运维·docker·容器
看见繁华2 小时前
Linux 交叉编译实践笔记
linux·运维·笔记
咕噜企业分发小米2 小时前
直播云服务器安全防护有哪些最新的技术趋势?
运维·服务器·安全
tianyuanwo2 小时前
深入解析CentOS 8中NetworkManager重启后DNS配置被覆盖的机制与解决方案
linux·运维·centos·dns
cly12 小时前
Ansible自动化(十五):加解密详解
运维·自动化·ansible
程序员zgh2 小时前
Linux 系统调用
linux·运维·服务器·c语言·c++·系统安全