【问题标题】:Schedule same Jenkins job multiple times each time with different parameters每次使用不同的参数多次安排相同的 Jenkins 作业
【发布时间】:2015-07-02 09:20:11
【问题描述】:

我有一个 Jenkins 参数化工作,我想安排每晚、早上和每周。 它基本上是一个启动/关闭环境作业,它在夜间关闭环境并在清晨启动它,周末是不同的时间表。那么如何在不创建三个单独的工作的情况下做到这一点呢?

我需要在不同的时间 1) 每个 (MON-FRI) 工作日早上 7 点 START 环境 2) 每个 (MON-FRI) 工作日晚上 8 点 STOP 环境

【问题讨论】:

  • 那么你需要3个参数吗?或者您想在 3 个不同的时间完成这项工作?例如 H 9,17 * * * 表示它将在上午 9 点和下午 5 点构建
  • 我需要在不同的时间 1)每个(周一至周五)工作日早上 7 点开始环境 2)每个(周一至周五)工作日晚上 8 点停止环境
  • 如果您想避免重复构建中的步骤,您可以设置 3 个作业在不同时间运行,然后让它们都触发启动/停止环境的相同作业.我认为不可能在一份工作中完成所有工作。

标签: jenkins jenkins-plugins


【解决方案1】:

默认情况下,Jenkins 不能做你想做的事,但是 Parameterized Scheduler 插件添加了你需要的功能。它允许您为每个时间表指定多个带有自定义参数值的时间表,如下所示:

#lets run against the integration environment at 15 past the hour
15 * * * * % env=int
#run QA too
30 * * * % env=qa

【讨论】:

    【解决方案2】:

    可以让您了解如何避免根据您的要求创建多个工作。

    1. 首先,您需要使用构建计划在早上 7 点和晚上 8 点触发您的工作

    2. 使用下面的脚本

    下面的脚本将检查您是在早上还是晚上、工作日或周末运行,并根据时间启动/停止您的环境

    如前所述,这只是一个有助于您接近的想法,您需要调整以下代码以满足您的确切要求

    注意:将 goto 的启动和停止部分中的 echo 部分替换为您的代码以启动和停止环境

    @echo off
    echo Current Date and Time %date%-%time%
    
    for /f %%a in ('date /t') do set "d=%%a"
    
    set "t=%time:~0,2%"
    
    
    if %t% GTR 12 goto Ni
    if %t% LSS 12 goto Day
    
    :Day
    
    if %d% == Mon goto start
    if %d% == Tue goto start
    if %d% == Wed goto start
    if %d% == Thu goto start
    if %d% == Fri goto start
    if %d% == Sat goto TBD
    if %d% == Sun goto TBD
    
    
    :Ni
    
    if %d% == Mon goto stop
    if %d% == Tue goto stop
    if %d% == Wed goto stop
    if %d% == Thu goto stop
    if %d% == Fri goto stop
    if %d% == Sat goto TBD
    if %d% == Sun goto TBD
    
    
    :start
    
    echo start an application
    
    goto last
    
    :stop
    
    echo stop an application
    
    
    :last
    
    echo last line
    

    【讨论】:

    • 这是什么脚本?我该如何使用它?
    • 这是一个 windows 脚本,它只是一个示例,说明如何根据时间和星期几通过一项作业从 jenkins 启动/停止 env,请注意,这只是一种方法不是整个代码
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多