Jenkins pipline怎么设置定时跑脚本

目录

[示例:在Jenkins Pipeline中设置定时触发](#示例:在Jenkins Pipeline中设置定时触发)

使用pipeline指令设置定时触发

[使用Declarative Pipeline设置定时触发](#使用Declarative Pipeline设置定时触发)

[使用Scripted Pipeline设置定时触发](#使用Scripted Pipeline设置定时触发)

解释Cron表达式

保存和应用配置

小结


在Jenkins中,定时跑脚本(例如定时执行Pipeline)的主要方法是通过配置Jenkins Pipeline的定时触发器。你可以使用Cron表达式来定义定时任务的触发时间。

示例:在Jenkins Pipeline中设置定时触发

假设你已经有一个Jenkins Pipeline Job,你可以按照以下步骤来配置定时触发:

  1. 创建或编辑Pipeline

    • 登录到Jenkins。
    • 如果需要创建新的Pipeline,点击"新建任务"(New Item),然后选择"Pipeline"。否则,找到已有的Pipeline,点击进入后选择"配置"(Configure)。
  2. 配置Pipeline Script

    • 进入Pipeline的配置页面后,你可以在"Pipeline"部分定义你的Pipeline脚本。

使用pipeline指令设置定时触发

在Pipeline脚本中,你可以使用triggers块和cron方法来设置定时触发。下面是一个示例Pipeline脚本,设置为每天午夜12点运行:

python 复制代码
pipeline {
    agent any

    triggers {
        cron('H 0 * * *')
    }

    stages {
        stage('Example Stage') {
            steps {
                echo 'Running a scheduled job'
                // 这里放置你的脚本或步骤
            }
        }
    }
}

使用Declarative Pipeline设置定时触发

这里是一个更详细的Declarative Pipeline例子,设定为每周一到五的凌晨1点运行:

python 复制代码
pipeline {
    agent any
    
    triggers {
        cron('H 1 * * 1-5')
    }

    stages {
        stage('Prepare') {
            steps {
                echo 'Preparing..'
                // 这里放置准备步骤
            }
        }
        stage('Build Stage') {
            steps {
                echo 'Building..'
                // 这里放置构建步骤,例如执行脚本
                // sh 'path/to/your/script.sh'
            }
        }
        stage('Test Stage') {
            steps {
                echo 'Testing..'
                // 这里放置测试步骤
            }
        }
        stage('Deploy Stage') {
            steps {
                echo 'Deploying..'
                // 这里放置部署步骤
            }
        }
    }
}

使用Scripted Pipeline设置定时触发

你也可以使用Scripted Pipeline来设置定时触发,同样使用triggerscron功能。示例如下:

复制代码
node {
    triggers {
        cron('H 0 * * *')
    }

    stage('Example Stage') {
        echo 'Running a scheduled job'
        // 这里放置你的脚本或步骤
    }
}

解释Cron表达式

  • H: 使用H(哈希符号)来分散负载。它根据项目名称计算一个值,这样可以避免所有项目在同一时间触发。
  • 0: 代表"分钟"。0代表整点。
  • 1: 代表"小时"。1代表凌晨1点。
  • *: 万用符,表示每一天/每个月。
  • 1-5: 代表"周几"。1到5代表周一到周五。

保存和应用配置

完成上述配置后,点击页面底部的"保存"或"应用"按钮。你的Pipeline任务将按照你设置的定时计划自动运行。

小结

通过上述配置,你可以在Jenkins中设置Pipeline作业的定时运行。使用Cron表达式可以灵活地设置运行时间和频率。这种方法非常适合定时执行构建任务、测试任务和定时运行脚本等操作。确保在配置定时任务时,考虑负载和可能的影响,以避免潜在的性能问题。

相关推荐
草莓熊Lotso38 分钟前
Linux 文件描述符与重定向实战:从原理到 minishell 实现
android·linux·运维·服务器·数据库·c++·人工智能
历程里程碑42 分钟前
Linux22 文件系统
linux·运维·c语言·开发语言·数据结构·c++·算法
恋猫de小郭44 分钟前
Flutter Zero 是什么?它的出现有什么意义?为什么你需要了解下?
android·前端·flutter
崔庆才丨静觅7 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
passerby60618 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了8 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅8 小时前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅9 小时前
5分钟快速搭建 AI 平台并用它赚钱!
前端
七夜zippoe9 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
崔庆才丨静觅9 小时前
比官方便宜一半以上!Midjourney API 申请及使用
前端