【问题标题】:Jenkins periodic buildJenkins 定期构建
【发布时间】:2017-11-23 22:12:22
【问题描述】:

是否有可能阻止完整的 jenkins 作业运行,即定期安排;如果自上次构建以来没有 SCM 更改。

例如,

有一个每日夜间构建,用于创建构建。此作业的完成触发(上游项目)该构建的自动化测试作业。

我希望能够拥有两样东西

  1. 如果自上次作业后 SCM 没有更改,则停止第一个构建作业
  2. 第二个上游自动化测试作业仅在未运行 1 周时运行。 (在第一个作业触发后)

提前致谢

【问题讨论】:

    标签: jenkins jenkins-pipeline


    【解决方案1】:

    第一部分很简单,而不是将“定期构建”设置为“轮询 SCM”并使用相同的时间表。这正是它的作用:定期检查更改并仅在有更改时才运行作业。

    第二部分(触发另一个有时间限制的作业)更复杂。除了您通常的构建触发方案之外,一个选项是“Throttle builds”(每周 1 个)。另一种是“触发远程构建(例如,从脚本)”选项,并检查某种脚本或服务是否满足所需条件。

    【讨论】:

    • 适用于第一部分,检查第二部分,谢谢:)
    【解决方案2】:

    第一个

    您是否每天晚上都尝试对 SCM 进行民意调查?如果没有更改,Jenkins 作业将不会启动。

    0 23 * * *
    

    将在每晚 11 点运行

    第二次 使用以下插件:https://wiki.jenkins.io/display/JENKINS/Run+Condition+Plugin

    【讨论】:

    • 好吧,让我试一试。
    • 如果自上次运行以来没有任何变化,它将启动机器人不做任何事情。只需 1-2 秒
    • 适用于第一部分。谢谢:)
    猜你喜欢
    • 2016-11-02
    • 2014-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-13
    • 1970-01-01
    相关资源
    最近更新 更多