jenkins 上搜索不到的插件可以在如下地址下载:
http://updates.jenkins-ci.org/download/plugins/
1.Notification Plugin
介绍:消息反馈插件,可以向执行url接口返回构建进度:在队列中,正在构建,构建结果。
一般用来从外部触发jenkins时,向指定url返回构建,比如,同一个局域网的主机上的java程序自动触发了jenkins构建,使用该插件向该主机指定的接口反馈构建状态。
使用:主要的是红色框中的url配置,其它默认。
扩展:根据该功能介绍,还可以使用命令向上面个红框指定接口中传其它参数,注意满足json格式,如下:
export NOTIFY_URL="http://120.79.173.250:9201/JenkinsCallback"
curl -H "Content-Type:application/json" -X POST --data '{"dlinfo": [{"result_path": "'$recsdk_download'","version": "'$recsdk_version'","jid": "'$rs_jid'"}]}' $NOTIFY_URL
其它参数根据自己的配置获取。
2.build name setter plugin
介绍:修改构建的默认名字,默认显示的都是#2,#3,#4....之类的,可自定义名字如#2_test,#3_$branch,$4_$tag,#241_master_allcas等,即搭配传入的参数定义名字。
使用:
不过该插件有一个不好的地方,就是只能用系统原有的环境变量来设置(如何查看jenkins默认的环境变量呢:http://$jenkins_host:8080/jenkins/env-vars.html/),比如我们想设置为跟user_name 相关,但是user_name 并不是系统默认的jenkins环境变量,这个问题,下面的一个插件可以实现。
3.user build var plugin
介绍:使用该插件可以获取jenkins的环境变量,如触发者,job num, user id,jenkins_url 等环境变量,具体有哪些环境变量可用,可以直接在jenkins上新建一个任务,"构建"的地方执行一个shell执行: export
如下:
如上说到,这个插件也可以实现自定义构建名,配置如下:
达到的效果如下:
4.配置项:在必要的时候并发构建
介绍:勾选此选项可以在同一个工程里同时并行多个构建,是通过在.jenkins/workspace下创建多个带@的相关工程名,比如test,test@2,test@3,test@4表示并发了五个进程。
.jenkins/workspace/ 下目录:
使用:勾选改选项即可
效果:
5.配置项:Restrict where this project can be run
介绍:针对集群的jenkins的方式,即主从方式,当存在多个slave节点的时候,某些构建任务需要在执行slave节点上执行,就是用该配置项设置的。
使用:比如,要将test工程下发到标签为centos-233的slave节点执行时,如下配置:
效果:
备注:如果有多个节点可以使用时,中间用|| 分割,比如主jenkins和centos-233 都可以执行该任务,可以为“centos-233 || master”,如下:
至于如何添加slave节点,请参考我的另外一篇博客:http://www.cnblogs.com/zndxall/p/8297356.html
6.参数化构建过程
介绍:带参数构建,参数可以是多种类型的,下面介绍三种常用的使用
(6.1)string parameter: 参数为字符串,参考如下:
(6.2)choice parameter: 选项框,参考如下:
(6.3)node:和Restrict where this project can be run是一样的,执行在哪个节点上执行
效果图:
7.Build periodically
定时触发.选择 Build periodically,在 Schedule 中填写 0 * * * ,代表的分别是:分钟(0~59) 小时(0~23) 天(1~31) 月(1~12) 周 (0-7,0和7表示周天);所以 0 * * * 表示的就是每个小时的第 0 分钟执行一次构建。举个例子:每周六10点构建 0 10 * * 6,0-0分钟, 10-10点 -任意天 -任务月份 6-周六, 0可以改为H.
8.Poll SCM
定时感知代码分支是否有变化,如果有变化的话,执行一次构建.示例:H/5 * * * * 每五分钟去检查一下远程仓库,看代码是否发生变化。
9.Throttle builds
设置两个build任务之间最小间隔和同一个时间内最大任务数量 ,但是时间间隔最小是一小时为单位的,也就是说能设置的是,一个小时内能并行多少个任务。
使用:一小时执行四个任务,那么如果同时触发了四个构建,那么这四个构建,每15分钟执行一个。
效果如下:
但是我自己设置了,发现这些任务一次性的就执行了,并没有像描述的那样,间隔15分钟跑一个,日志如下:
10.配置项:安静期
设置一个时间来间隔每次构建的间隔,也就是触发多个构建时,任务之间相隔多久执行。我个人觉得可以结合并行选项“在必要的时候并发构建”使用,任务之间会相互影响时,使用该设置来错过相互影响的时间点。
使用:我设置了30秒的安静期
点击“高级”打开。
效果:同时触发了五个构建,和上面一个配置项的效果一样,会把后面的多次触发当成一个执行,看上一个插件的日志,目前还不清楚为什么,待后续研究下,先在此处记录下。
11.cppcheck插件
https://blog.csdn.net/jiang1986829/article/details/51328830