Jenkins pipline怎么设置定时跑脚本

目录

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

使用pipeline指令设置定时触发

使用Declarative 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点运行:

pipeline {
    agent any

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

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

使用Declarative Pipeline设置定时触发

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

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表达式可以灵活地设置运行时间和频率。这种方法非常适合定时执行构建任务、测试任务和定时运行脚本等操作。确保在配置定时任务时,考虑负载和可能的影响,以避免潜在的性能问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/958690.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

机器人奇点:从宇树科技看2025具身智能发展

近年来,随着人工智能和机器人技术的飞速发展,具身智能(Embodied Intelligence)逐渐成为科技领域的热门话题。具身智能不仅赋予了机器人感知、决策和执行的能力,还通过与物理世界的交互,推动了人工智能从“离…

Tensor 基本操作1 unsqueeze, squeeze, softmax | PyTorch 深度学习实战

本系列文章 GitHub Repo: https://github.com/hailiang-wang/pytorch-get-started 目录 创建 Tensor常用操作unsqueezesqueezeSoftmax代码1代码2代码3 argmaxitem 创建 Tensor 使用 Torch 接口创建 Tensor import torch参考:https://pytorch.org/tutorials/beginn…

(详细)Springboot 整合动态多数据源 这里有mysql(分为master 和 slave) 和oracle,根据不同路径适配不同数据源

文章目录 Springboot 整合多动态数据源 这里有mysql(分为master 和 slave) 和oracle1. 引入相关的依赖2. 创建相关配置文件3. 在相关目录下进行编码,不同路径会使用不同数据源 Springboot 整合多动态数据源 这里有mysql(分为maste…

03垃圾回收篇(D3_垃圾收集器的选择及相关参数)

目录 学习前言 一、收集器的选择 二、GC日志参数 三、垃圾收集相关的常用参数 四、内存分配与回收策略 1. 对象优先在Eden分配 2. 大对象直接进入老年代 3. 长期存活的对象将进入老年代 4. 动态对象年龄判定 5. 空间分配担保 学习前言 本章主要学习垃圾收集器的选择及…

Hadoop特点和HDFS命令

Hadoop的特点 高扩展性: 可以根据数据量的增长进行扩展,可以扩展到数千台机器,每个机器都可以提供本地计算和存储资源 高容错性: 自动保存数据的多个副本,并能够在硬件故障的情况下重新分配计算任务,从而确保系统的高可用性和数据的不丢失。…

LetsWave脑电数据简单ERP分析matlab(一)

LetsWave是基于matlab的一款工具包,类似eeglab,也可以对数据进行预处理。习惯使用eeglab做数据预处理的,可以先在eeglab中做预处理,然后可以保存为*.set格式,最后在letswave中画图。 letswave下载地址:htt…

深度学习|表示学习|卷积神经网络|通道 channel 是什么?|05

如是我闻: 在卷积神经网络(CNN)中,channel(通道) 是指输入或输出数据的深度维度,通常用来表示输入或输出的特征类型。 通道的含义 输入通道(Input Channels):…

【机器学习】机器学习引领数学难题攻克:迈向未知数学领域的新突破

我的个人主页 我的领域:人工智能篇,希望能帮助到大家!!!👍点赞 收藏❤ 一、引言 在数学的浩瀚领域中,存在着诸多长期未解的难题,这些难题犹如高耸的山峰,吸引着无数数…

2024年美赛C题评委文章及O奖论文解读 | AI工具如何影响数学建模?从评委和O奖论文出发-O奖论文做对了什么?

模型假设仅仅是简单陈述吗?允许AI的使用是否降低了比赛难度?还在依赖机器学习的模型吗?处理题目的方法有哪些?O奖论文的优点在哪里? 本文调研了当年赛题的评委文章和O奖论文,这些问题都会在文章中一一解答…

Ubuntu如何安装redis服务?

环境: Ubuntu22.04 WSL2 问题描述: 如何安装redis服务? 解决方案: 1.在 Linux 上(如 Ubuntu/Debian)安装 1.通过包管理工具安装 Redis 服务器: sudo apt update sudo apt install redis…

最新-CentOS 7安装1 Panel Linux 服务器运维管理面板

CentOS 7安装1 Panel Linux 服务器运维管理面板 一、前言二、环境要求三、在线安装四、离线安装1.点击下面1 Panel官网链接访问下载,如未登录或注册,请登录/注册后下载2.使用将离线安装包上传至目标终端/tem目录下3.进入到/tem目录下解压离线安装包4.执行…

Centos类型服务器等保测评整/etc/pam.d/system-auth

修改服务器配置文件/etc/pam.d/system-auth,但是,把一下配置放在password的配置第一行才会生效 执行命令:配置口令要求:大小写字母、数字、特殊字符组合、至少8位,包括强制设置root口令! sed -i 14a pas…

OSCP - Proving Grounds - Quackerjack

主要知识点 端口转发 具体步骤 执行nmap扫描,开了好多端口,我先试验80和8081,看起来8081比较有趣 Nmap scan report for 192.168.51.57 Host is up (0.0011s latency). Not shown: 65527 filtered tcp ports (no-response) PORT STATE SERVICE …

日志收集Day005

1.filebeat的input类型之filestream实战案例: 在7.16版本中已经弃用log类型,之后需要使用filebeat,与log不同,filebeat的message无需设置就是顶级字段 1.1简单使用: filebeat.inputs: - type: filestreamenabled: truepaths:- /tmp/myfilestream01.lo…

9.中断系统、EXTI外部中断

中断系统原理 中断 中断系统是管理和执行中断的逻辑结构,外部中断是众多能产生中断的外设之一,所以本节我们就借助外部中断来学习一下中断系统。在以后学习其它外设的时候,也是会经常和中断打交道的。 中断:在主程序运行过程中…

Java如何实现反转义

Java如何实现反转义 前提 最近做的一个需求,是热搜词增加换一批的功能。功能做完自测后,交给了测试伙伴,但是测试第二天后就提了一个bug,出现了未知词 levis。第一眼看着像公司售卖的一个品牌-李维斯。然后再扒前人写的代码&…

[STM32 - 野火] - - - 固件库学习笔记 - - -十一.电源管理系统

一、电源管理系统简介 电源管理系统是STM32硬件设计和系统运行的基础,它不仅为芯片本身提供稳定的电源,还通过多种电源管理功能优化功耗、延长电池寿命,并确保系统的可靠性和稳定性。 二、电源监控器 作用:保证STM32芯片工作在…

js学习笔记(2)

一、函数 1.JavaScript 函数语法 函数就是包裹在花括号中的代码块,前面使用了关键词 function: function functionname() {// 执行代码 } 当调用该函数时,会执行函数内的代码。 可以在某事件发生时直接调用函数(比如当用户点…

自动驾驶之DriveMM: All-in-One Large Multimodal Model for Autonomous Driving

1. 写在前面 工作之后,主要从事于偏工程比较多的内容, 很少有机会读论文了,但2025年,由于之前有些算法的背景, 后面可能会接触一些多模态大模型相关的工作,所以又调头有点往算法的方向偏移, 而算法呢,很重要的一点就是阅读论文。2025年,再拾起论文这块的工作。 今天…

机器学习-数据集划分

文章目录 一. 为什么要划分数据集二. 数据集划分的方法1. 留出法:2. 交叉验证:将数据集划分为训练集,验证集,测试集3. 留一法:4. 自助法: 一. 为什么要划分数据集 为了能够评估模型的泛化能力,可…