配置前要注意的点:

  先安装插件:set build description

  安装该插件后,在【Post-build Actions】栏目中会多出description setter功能,可以实现构建完成后设置当次build的描述信息。这个描述信息不仅会显示在build页面中,同时也会显示在历史构建列表中。

  有了这个前提,要将二维码图片展示在历史构建列表中貌似就可以实现了,能直观想到的方式就是采用HTMLimg标签,将<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使用规则的更多相关文章

  1. jenkins插件使用小结

    jenkins官网:https://wiki.jenkins-ci.org/display/JENKINS/Building+a+software+project jenkins插件: 1.AnsiC ...

  2. 转【jenkins插件】

    开源版本的Jenkins 具有三大能力:Master-Slave的分布式构建调度能力.Pipeline编排能力.强大的开源生态(插件)能力. 2017年4月,Jenkins创始人KK(Kohsuke ...

  3. [原]Jenkins(十五)---jenkins插件之deploy

    /** * lihaibo * 文章内容都是根据自己工作情况实践得出. *如有错误,请指正 * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horiz ...

  4. Jenkins插件管理

    1.配置jenkins需要的maven.jdk路径 [root@db01 secrets]# echo $JAVA_HOME /application/jdk [root@db01 secrets]# ...

  5. 持续集成之Jenkins插件使用(一)- 多个job之间的串并联

    转载自:http://qa.blog.163.com/blog/static/190147002201391661510655/ Jenkins除了开源和免费,还有一个最吸引人的功能之一就是支持插件. ...

  6. 【我的Android进阶之旅】 Android Studio插件之Jenkins插件介绍

    一Jenkins插件功能介绍 1Jenkins任务列表 2切换Jenkins分组 3构建Jenkins任务 4进入构建Jenkins任务的页面 5进入最后一次构建Jenkins任务的页面 6增加Jen ...

  7. Jenkins持续集成企业实战系列之Jenkins插件下载及邮件配置-----05

    注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.    最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...

  8. Jenkins插件、war下载地址

    1.jenkins的war包下载地址 地址:http://mirrors.jenkins-ci.org/,打开链接后,表格有war列,Releases行是短期更新包.LTS是长期更新包.一般选择Rel ...

  9. [原创]使用Gradle的插件EnIDE build的时候,输出的中文总是乱码。

    使用Gradle的插件EnIDE build的时候,输出的中文总是乱码.解决办法:在EnIDE的设置里面,设置JVM options GRADLE_OPTS 为:-Dfile.encoding=UTF ...

随机推荐

  1. tbox协程使用之切换与等待

    tbox的协程实现,是stackfull模式的,需要指定独立堆栈和协程函数,目前暂时还不能像golang那样实现堆栈的动态增长,之后会对其进行支持. 目前提供下面一些功能特性: 1. 提供yield切 ...

  2. OSPF协议——原理及实验

    首先命令部分: ospf 1 进入ospf协议 area 0 划定自治区域 因为实验只用了1个区域所以参数就为0 也就是骨干区域 network +网段+反写掩码(0.0.0.255)指定运行OSPF ...

  3. SpringCloud异常

    Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could ...

  4. jvm性能监控(5)-jdk自带工具 VisualVM

    一.在服务器的jdk的bin目录下添加配置文件 jstatd.all.policy [root@localhost /]# cd /usr/local/src/jdk1.8.0_131/bin/ [r ...

  5. [Codeforces 997C]Sky Full of Stars(排列组合+容斥原理)

    [Codeforces 997C]Sky Full of Stars(排列组合+容斥原理) 题面 用3种颜色对\(n×n\)的格子染色,问至少有一行或一列只有一种颜色的方案数.\((n≤10^6)\) ...

  6. P2324 [SCOI2005]骑士精神(A*)

    P2324 [SCOI2005]骑士精神 A*与爆搜的不同就是它有一个估价函数$h(x)$ 这个估价函数一般设为从当前状态到终点状态的估计最短步数,这样可以有效剪枝 但估计值必须严格小于等于实际剩余步 ...

  7. npm run dev 报错:Error: Cannot find module 'webpack-cli/bin/config-yargs'

    使用 npm run dev 时报错: Error: Cannot find module 'webpack-cli/bin/config-yargs' 原因是找不到webpack-cli这个包,使用 ...

  8. 常见前端面试题http部分

    1.常见http状态码 100 Continue 继续,一般在发送post请求时,已发送了http header之后服务端将返回此信息,表示确认,之后发送具体参数信息 200 OK 正常返回信息 20 ...

  9. CentOS7单用户模式修改密码

    以下内容均摘抄自:https://blog.csdn.net/ywd1992/article/details/83538730  亲测有用,谢谢大佬的好文章 1.启动centos系统,并且当在GRUB ...

  10. HTML基础:<a>标签 编写个人收藏夹

    编写个人收藏夹 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <t ...