有没有办法将 JavaScript 合并到 Jenkins 顶部的描述字段中?
每当我添加脚本标签时,当您查看源代码时,它都会被 Jenkins 删除。
<script> </script>
如果有人有建议或方向指向我,那就太好了。
这样做的主要目的是对本地机器上影响构建的标志进行简单检查,并在描述中显示其状态。
有没有办法将 JavaScript 合并到 Jenkins 顶部的描述字段中?
每当我添加脚本标签时,当您查看源代码时,它都会被 Jenkins 删除。
<script> </script>
如果有人有建议或方向指向我,那就太好了。
这样做的主要目的是对本地机器上影响构建的标志进行简单检查,并在描述中显示其状态。
根据这个答案,Jenkins 默认应用 HTML 清理策略,它只允许某些 HTML 标记和属性。<script>
标签不是其中之一。
但是,这些描述的显示方式是可插入的。
如果你想使用这个<script>
标签,你需要安装一个格式化插件,比如“Anything Goes”格式化程序——它不会剥离任何 HTML(导致 XSS 的风险)——然后在主 Jenkins 配置中启用它。
当您说“在 Jenkins 的顶部”时,我假设您是指 Jenkins UI 中工作页面的顶部。
根据这个错误报告, 剥离所有 HTML 标记开始于 2010 年。(Hudson 是 Jenkins 从 2011 年左右分叉出来的项目)。
我想他们正在剥离页面显示的 HTML,因此直接在 Jenkins 服务器上编辑文件也可能不起作用。我会考虑使用 Jenkins API 来更新职位描述以显示您需要的信息。
另一个想法是创建一个安装在浏览器中的用户脚本。然后它会提取状态,并将其注入到 Jenkins 界面中。
一种方法是使用带有Tampermonkey或GreaseMonkey 的浏览器用户脚本 - 仅限 Firefox插件。用户需要插件和您的用户脚本。这将允许您获取数据、更改页面 DOM 等以自定义 Jenkins 工作流程或显示。可以将脚本配置为仅匹配某些主机和 url。