jenkins插件set build description使用规则
配置前要注意的点:
先安装插件:set build description
安装该插件后,在【Post-build Actions】
栏目中会多出description setter
功能,可以实现构建完成后设置当次build的描述信息。这个描述信息不仅会显示在build页面中,同时也会显示在历史构建列表中。
有了这个前提,要将二维码图片展示在历史构建列表中貌似就可以实现了,能直观想到的方式就是采用HTML
的img
标签,将<img src='qr_code_url'>
写入到build描述信息中。
这个方法的思路是正确的,不过这么做以后并不会实现我们预期的效果。
这是因为Jenkins出于安全的考虑,所有描述信息的Markup Formatter
默认都是采用Plain text
模式,在这种模式下是不会对build描述信息中的HTML编码进行解析的。
要改变也很容易,Manage Jenkins
-> Configure Global Security
,将Markup Formatter
的设置更改为Safe HTML
即可。
首先说明2点:
1.这个url指向一张图片
2.我想通过正则匹配到这个图片地址,然后在descripiotn中通过<img src = url>的形式,在jenkins构建历史中展示出这张图片
示例:
测试文本:
appQRCodeURL: https://www.pgyer.com/app/qrcodeHistory/6d2176e2fec26df62f907296237e78910f45b2ff711d81f6e2a926ff45xxxxx
Regular expression填写:
appQRCodeURL: ([a-zA-z]+://[^\s]*)
Description填写:
<img src ="\1" height="" width="" ><a href='https://www.pgyer.com/xxxx'>Install Online</a>
解释:
1.Description使用 \n这种形式去引用Regular expression 中正则表达式匹配到的结果(只会匹配括号中括起来的内容)
2.如果正则表达式中有多个()括号,则可以使用\1\2来对应这些括号
碎碎念:
- 在这里我只想匹配到 https://xxx 这个url网址,我以为正则表达式部分这样写[a-zA-z]+://[^\s]* 就可以匹配到了。
- 事实上,我在用在线正则表达式测试的时候确实也匹配到了,
- 但在使用jenkins时,<img src = "\1"> 出来的结果却是这样的,并没有和我预期一样展示出图片。
接下来排查问题,图片展示不出来,肯定是图片的路径有问题。
直接访问url地址可以看到图片,说明url本身没有问题。
所以问题出在对图片的引用这里。
- 首先确认正则表达式是否正确的匹配到了图片地址呢?
在 Regular expression处输入https://www.pgyer.com/app/qrcodeHistory/...(...表示正则表达式匹配后面的内容),
Description处什么也不写,这样执行构建后,构建历史中会直接展示正则表达式匹配到的内容,我们就可以查看匹配到的结果是否和我们预期的一致了
展示的效果是这样的。点开...可以访问到图片。
看构建详情是匹配到了url地址的
百思不得其解的时候,看到了下面地址中的博客,才明白过来,原来
在jenkins的 set build description这个插件中,如果想要引用到正则表达式匹配到的结果,
一定要在正则表达式外面用()英文的小括号括起来。
划重点:
因为 \1表示引用 正则表达式中第1个用小括号括起来,匹配到的内容,
所以如果description中使用了\1引用,则正则表达式中一定要有1组用()括起来的正则表达式,才能有引用到的结果啊
看一下说明文档:
1
Regular expression参数的含义:
Description参数的含义:
另附一个 APP版本号的正则表达式
BuildVersion: (([1-9]\d|[1-9])(\.([1-9]\d|\d)){2})
使用方式 :
<b>"\1" </b>
效果:
参考了:
https://blog.csdn.net/weiguang1017/article/details/78549607
jenkins插件set build description使用规则的更多相关文章
- jenkins插件使用小结
jenkins官网:https://wiki.jenkins-ci.org/display/JENKINS/Building+a+software+project jenkins插件: 1.AnsiC ...
- 转【jenkins插件】
开源版本的Jenkins 具有三大能力:Master-Slave的分布式构建调度能力.Pipeline编排能力.强大的开源生态(插件)能力. 2017年4月,Jenkins创始人KK(Kohsuke ...
- [原]Jenkins(十五)---jenkins插件之deploy
/** * lihaibo * 文章内容都是根据自己工作情况实践得出. *如有错误,请指正 * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horiz ...
- Jenkins插件管理
1.配置jenkins需要的maven.jdk路径 [root@db01 secrets]# echo $JAVA_HOME /application/jdk [root@db01 secrets]# ...
- 持续集成之Jenkins插件使用(一)- 多个job之间的串并联
转载自:http://qa.blog.163.com/blog/static/190147002201391661510655/ Jenkins除了开源和免费,还有一个最吸引人的功能之一就是支持插件. ...
- 【我的Android进阶之旅】 Android Studio插件之Jenkins插件介绍
一Jenkins插件功能介绍 1Jenkins任务列表 2切换Jenkins分组 3构建Jenkins任务 4进入构建Jenkins任务的页面 5进入最后一次构建Jenkins任务的页面 6增加Jen ...
- Jenkins持续集成企业实战系列之Jenkins插件下载及邮件配置-----05
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
- Jenkins插件、war下载地址
1.jenkins的war包下载地址 地址:http://mirrors.jenkins-ci.org/,打开链接后,表格有war列,Releases行是短期更新包.LTS是长期更新包.一般选择Rel ...
- [原创]使用Gradle的插件EnIDE build的时候,输出的中文总是乱码。
使用Gradle的插件EnIDE build的时候,输出的中文总是乱码.解决办法:在EnIDE的设置里面,设置JVM options GRADLE_OPTS 为:-Dfile.encoding=UTF ...
随机推荐
- < 备考CET6 - 作文模板句 - 话题:重要性/做选择 >
CET6 - 作文模板句 - 重要性/做选择 重要性 开头 Currently, We are entering a brand new era filled with (opportunities ...
- 《JAVA设计模式》之建造模式(Builder)
在阎宏博士的<JAVA与模式>一书中开头是这样描述建造(Builder)模式的: 建造模式是对象的创建模式.建造模式可以将一个产品的内部表象(internal representation ...
- [Linux] 029 脚本安装包
1. 脚本安装包 脚本安装包并不是独立的软件包类型,常见安装的是源码包 是人为把安装过程写成了自动安装的脚本,只要执行脚本,定义简单的参数,就可以完成安装 非常类似于 Windows 下软件的安装方式 ...
- Java程序流程控制
程序流程控制有 选择,循环,以及跳转结构 选择结构中无非就是 If 和 switch语句我两种都做了一些小案例 1. 利用Scanner库来获得控制台用户输入的数字与代码中定义的变量比较 packag ...
- cgi+lighttpd上传大文件失败解决办法
问题: - 前端页面点击上传按钮,不超过30M的小文件顺利上传到板子指定位置,上传60Md的更新包,出错,http状态码413——请求实体过大 环境: - web服务器——lighttpd1.4.30 ...
- maven私服nexus3.9安装配置
maven私服nexus3.9安装配置 私服介绍 私服是指私有服务器,是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构建.有了私服之后,当 Maven 需要下载构件时,直接请求私服 ...
- pass value from shell to sql
echo 'please enter new userid need create' read new_usr echo 'please enter userid to model' read mod ...
- 牛客网NOIP赛前集训营-提高组(第六场)A-最长路
题目描述 有一张 n 个点 m 条边的有向图,每条边上都带有一个字符,字符用一个数字表示. 求以每个点为起点的最长路,输出走过的边的字符构成的字符串的字典序最小的方案. 为了方便,你需要这样输出方案: ...
- Python 分段利润提成
题目:企业发放的奖金根据利润提成.利润(I)低于或等于10万元时,奖金可提10%:利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%:20万到40万之 ...
- hdu 4619 Warm up 2 (二分匹配)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4619 题意: 平面上有一些1×2的骨牌,每张骨牌要么水平放置,要么竖直放置,并且保证同方向放置的骨牌不 ...