【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,会直接显示原文本,显示为如下格式:

相关推荐
逻辑羊驼3 小时前
VSCode+MobaXterm+X11可视化界面本地显示
运维·服务器·ubuntu·3d
fendouweiqian4 小时前
nginx 反向代理使用变量的坑
运维·nginx
Zacks_xdc4 小时前
【前端】使用Vercel部署前端项目,api转发到后端服务器
运维·服务器·前端·安全·react.js
W-GEO4 小时前
Nginx 高性能调优指南:从配置到原理
运维·nginx
pound1274 小时前
Linux
linux·运维·服务器
@CLoudbays_Martin114 小时前
为什么动态视频业务内容不可以被CDN静态缓存?
java·运维·服务器·javascript·网络·python·php
盟接之桥6 小时前
盟接之桥说制造:在安全、确定与及时之间,构建品质、交期与反应速度的动态平衡
大数据·运维·安全·汽车·制造·devops
dbdr09017 小时前
Linux 入门到精通,真的不用背命令!零基础小白靠「场景化学习法」,3 个月拿下运维 offer,第二十六天
linux·运维·服务器·网络·python·学习
鹧鸪云光伏与储能软件开发7 小时前
投资储能项目能赚多少钱?小程序帮你测算
运维·数据库·小程序·光伏·光伏设计软件·光伏设计
群联云防护小杜7 小时前
服务器异常磁盘写排查手册 · 已删除文件句柄篇
运维·服务器·nginx·开源·lua