转至博客:上海-悠悠

前言

跑自动化用例每次用手工点击jenkins出发自动化用例太麻烦了,我们希望能每天固定时间跑,这样就不用管了,坐等收测试报告结果就行。

一、定时构建语法

* * * * *

(五颗星,中间用空格隔开)

第一颗*表示分钟,取值0~59
第二颗*表示小时,取值0~23
第三颗*表示一个月的第几天,取值1~31
第四颗*表示第几月,取值1~12
第五颗*表示一周中的第几天,取值0~7,其中0和7代表的都是周日

1.每30分钟构建一次:

H/30 * * * *

2.每2个小时构建一次

H H/2 * * *

3.每天早上8点构建一次

0 8 * * *

4.每天的8点,12点,22点,一天构建3次

0 8,12,22 * * *

(多个时间点,中间用逗号隔开)

5.问题来了:每个月的1-7号一天构建一次咋写呢?

请在屏幕下方写出你的答案,写对有奖励!

二、Build periodically

1.Build periodically:周期性进行项目构建,这个是到指定的时间必须触发构建任务

2.比如我想在每天的9点,17点,朝九晚五各构建一次,在Build periodically里设置如下

3.上面红色字体:Spread load evenly by using ‘H 9,17 * * *’ rather than ‘0 9,17 * * *’,这句话大概意思就是说,用这个语法会比后后面那个好:H 9,17 * * *

4.下一次构建时间是05时48分06秒,然后再下次是09时48分06秒

二、Poll SCM

1.Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作

2.如果我想每隔30分钟检查一次源码变化,有变化就执行

三、Job关联

1.举个案例场景,比如我下面Job1是web项目打包并发布的构建任务,我想每次打完包发布后,然后触发自动化测试Job2的构建。

(当然发布后,一般会等几分钟才会完全加载完成,再下一次构建的时候,可以用python加个脚本sleep几分钟)

2.构建触发器勾选Build after other projects are built,Projects to watch输入Job1的名称

(这里可以输入多个依赖的jobs,多个job中间用逗号隔开)

3.下面有三个选择,一般默认第一个就行

Trigger only if build is stable:构建稳定时触发

Trigger even if the build is unstable :构建不稳定时触发

Trigger even if the build fails : 构建失败的时候触发

4.上面设置好后,启动第一个Job完成后,就能接着启动第二个Job了

四、另外两种

1.触发远程构建 (例如,使用脚本)

2.GitHub hook trigger for GITScm polling: 这个是管理github上代码有变动时构建

最后这2个一般用的也少,了解下就行

注:Build periodically和Poll SCM两者是可以结合起来使用的

jenkins构建触发器定时任务Build periodically和Poll SCM【转载】的更多相关文章

  1. [原]Jenkins(二十一) jenkins再出发Build periodically和Poll SCM

    缘由: 使用jenkins的目的需要固定时间构建和间隔固定时间构建,所以才会用到这两个功能. 位置:这两个功能的位置位于每个job的config项中,如下图: [重要的注意点:]           ...

  2. 【Jenkins学习】【第二节】 jenkins构建触发器定时任务

    一.定时构建 Build periodically:定时执行构建任务,不管远程代码分支上的代码是否发生变化,都执行一次构建. 语法:* * * * *(五颗星,中间用空格隔开) 第一个:分钟,取值0~ ...

  3. jenkins 构建触发器 Poll SCM 和 Build periodically区别

    Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作.我的配置如下: */5 * * * * (每5分钟检查一次源码变化) Bu ...

  4. Jenkins构建触发器(定时构建项目)

    如上图所示,Jenkins通常通过点击“立即构建”来进行手动构建项目,其实也可以使用配置中的 Poll SCM和Build periodically来进行定时自动构建项目: 在“配置”——>“构 ...

  5. Jenkins系列-Jenkins构建触发器

    触发器说明 build whenever a snapshot dependency is built,当job依赖的快照版本被build时,执行本job. 触发远程构建 (例如,使用脚本):这里使用 ...

  6. Jenkins构建触发器

       我们在执行Jenkins的项目构建的时候一般都是通过web管理界面中的”构建”来执行项目构建操作,但是除此之外我们还可以通过项目配置中的”构建触发器”来触发构建操作, 其中”构建触发器”有一种方 ...

  7. Jenkins构建触发器的区别

    Build periodically:定时进行项目构建或执行(它不care源码是否发生变化),配置如下: 0 2 * * *  (每天2:00 必须build一次源码) 如果是要定时执行脚本,需要选择 ...

  8. Jenkins构建触发器定时Poll SCM、Build periodically

    一.时间设置语法 时间设置由5位组成:* * * * * 第一位:表示分钟,取值0-59. 第二位:表示小时,取值0-23. 第三位:表示日期,取值1-31. 第四位:表示月份,取值1-12. 第五位 ...

  9. 创建Jenkins构建触发器,代码提交至gitLab即自动触发构建

    下载所需插件,系统设置-->插件管理,搜索以下两个插件,选择安装 登录gitLab,生成一个Personal Access Tokens 进入Jenkins,添加api token,路径:首页- ...

随机推荐

  1. BZOJ1046 [HAOI2007]上升序列 【LIS + 字典序最小】

    1046: [HAOI2007]上升序列 Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 5410  Solved: 1877 [Submit][St ...

  2. js正则:两边字符固定,中间任意字符

    求些一个js正则!两边字符固定,中间任意字符.在一个长字符串里面匹配一小段,这一小段字符串开头和结尾都是固定的字符,就是中间是任意长度的字符.怎么写? /aa.+aa/ aa是你的固定字符,如果是反斜 ...

  3. 我们自己写的solr查询的代码作为search项目中的dao

    我们自己写的solr查询的代码作为search项目中的dao,但是启动时会报错: 其实就是说 searchServiceImpl 中我们 Autowired 的 SearchDao 类 spring ...

  4. Codeforces Round #540 (Div. 3) 部分题解

    Codeforces Round #540 (Div. 3) 题目链接:https://codeforces.com/contest/1118 题目太多啦,解释题意都花很多时间...还有事情要做,就选 ...

  5. udhcpd源码分析3--IP租赁管理

    1:重要的结构体 全局链表的成员struct dhcpOfferedAddr *leases 记录了当前租赁出去的IP信息 /* leases.h */ struct dhcpOfferedAddr ...

  6. ACM.hdu1025

    to get the ans of how many roads at most that can be built between two line without intersection of ...

  7. [Spark经验一]Spark RDD计算使用的函数里尽量不要使用全局变量

    比如RDD里的计算调用了别的组件类里的方法(比如hbase里的put方法),那么序列化时,会将该方法所属的对象的所有变量都序列化的,可能有些根本没有实现序列化导致直接报错.也就是spark的api没有 ...

  8. 常见XSD问题

    < xs:elementname="status"> < xs:complexType> < xs:sequence> < xs:elem ...

  9. 省队集训 Day5 选举

    [题目大意] 小奇和魔法猪要竞选膜钟国的总统. 有 $n$ 个选民,编号为$1...n$,他们中有的人支持小奇,有的人支持魔法猪,还有的人保持中立. 现在你需要把选民分成若干个区间,每个区间的长度在$ ...

  10. 【洛谷 P3194】 [HNOI2008]水平可见直线 (单调栈)

    题目链接 把线段以斜率为第一关键字,截距为第二关键字升序排序. 然后维护一个单调栈,保证栈中两两线段的交点的\(x\)坐标单调上升就行了.栈中的线段即为所求. #include <cstdio& ...