• jenkins学习14-构建触发器之定时构建和轮询 SCM


    前言

    跑自动化用例每次用手工点击jenkins出发自动化用例太麻烦了,我们希望能每天固定时间跑,这样就不用管了,坐等收测试报告结果就行。
    jenkins的定时任务是用的crontab语法,参考这篇https://www.cnblogs.com/yoyoketang/p/11167181.html

    定时构建语法

    五颗星,中间用空格隔开

    * * * * *
    
    • 第一颗*表示分钟,取值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 * * *

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

    定时构建(Build periodically)

    定时构建(Build periodically):周期性进行项目构建,这个是到指定的时间必须触发构建任务.
    比如我想在每天的9点,17点,朝九晚五各构建一次,在定时构建(Build periodically)里设置如下

    这时候会看到一个提示分散负载应该用 ‘H 9,17 * * *’ 而不是 ‘0 9,17 * * *’,这个意思是让我们尽量用H 9,17 * * *

    那么前面的H是什么意思呢?

    为了允许定期计划的任务在系统上产生负载,应在可能的情况下使用符号H ( for"哈希") 。 
    例如对于十几个日常工作,使用 0 0 * * * 将导致午夜的大峰值。 相反,使用H * * * 每天仍然会执行每一次作业,但同时使用有限的资源,更好地使用有限的资源。
    

    所以这里改成H 9,17 * * *

    可以看到下次运行的时间:

    上次运行的时间 Tuesday, March 24, 2020 5:14:12 PM CST; 下次运行的时间 Wednesday, March 25, 2020 9:14:12 AM CST.
    

    轮询 SCM(Poll SCM)

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

    忽略钩子 post-commit: 关于钩子(webhook)可以参考这篇https://www.cnblogs.com/yoyoketang/p/12535907.html

    如果勾选了,那么前面那篇设置的钩子(webhook)就会失效。

  • 相关阅读:
    repo
    manifest
    Gerrit使用简介
    id_rsa id_rsa.pub
    数字签名原理及其应用
    RSA DSA
    ssh(安全协议外壳)
    Numpy基本数据结构
    Numpy
    .bat 批处理
  • 原文地址:https://www.cnblogs.com/yoyoketang/p/12562612.html
Copyright © 2020-2023  润新知