GitHub Actions定时任务配置完全指南:从Cron语法到实战示例

ops/2025/2/3 9:40:11/

你好,我是悦创。

博客网站:https://blog.bornforthis.cn/

本教程将详细讲解如何在GitHub Actions中配置定时任务(Scheduled Tasks),帮助你掌握 Cron 表达式的编写规则和实际应用场景。

一、定时任务基础配置

1.1 核心语法结构

on:schedule:- cron: "分 时 日 月 周"

1.2 参数解析

组件取值范围说明
0-59分钟
0-23小时(UTC时间)
1-31月份中的日期
1-12 或 JAN-DEC月份
0-6 或 SUN-SAT星期(0=周日)

二、Cron表达式详解

2.1 特殊字符说明

符号示例作用
** * * * *任意值
,0,30 * * * *多个值
-0-5 * * * *范围值
/*/15 * * * *间隔值

2.2 常用配置模板

on:schedule:# 每5分钟(GitHub最小间隔)- cron: "*/5 * * * *"# 每日UTC时间0点- cron: "0 0 * * *"# 每周一北京时间上午8点- cron: "0 0 * * 1"timezone: Asia/Shanghai# 每月1号正午执行- cron: "0 12 1 * *"

三、高级配置技巧

3.1 时区设置

- cron: "0 8 * * *"timezone: Asia/Shanghai  # 支持IANA时区数据库格式

3.2 分支过滤

on:schedule:- cron: "0 0 * * *"branches:  # 限定触发的分支- main- release/*

3.3 多任务配置

on:schedule:- cron: "0 9 * * 1-5"   # 工作日早9点- cron: "0 18 * * 1-5"  # 工作日晚6点- cron: "0 12 * * 0"    # 周日中午12点

四、注意事项

  1. 执行延迟:GitHub Actions的定时任务可能有1-10分钟的延迟
  2. 频率限制
    • 公共仓库:每月2000分钟免费额度
    • 私有仓库:每月500分钟免费额度
  3. 日志查看:执行记录可在仓库的 Actions 标签页查看
  4. 表达式验证:推荐使用 crontab.guru 调试表达式

五、实战应用场景

5.1 自动化测试

name: Daily Test
on:schedule:- cron: "0 0 * * *"
jobs:test:runs-on: ubuntu-lateststeps:- run: npm test

5.2 数据备份

name: Weekly Backup
on:schedule:- cron: "0 3 * * 6"  # 每周六凌晨3点
jobs:backup:runs-on: ubuntu-lateststeps:- name: Backup databaserun: ./scripts/backup.sh

5.3 定时通知

name: Morning Reminder
on:schedule:- cron: "0 9 * * 1-5"  # 工作日早9点
jobs:notify:runs-on: ubuntu-lateststeps:- uses: actions-slack@v3with:payload: |{"text": "每日站会时间到!"}

SEO优化提示:本文包含高频搜索关键词「GitHub Actions定时任务」「Cron配置指南」「自动化工作流」,建议在相关技术社区和博客平台发布时保留标题结构。


http://www.ppmy.cn/ops/155271.html

相关文章

6.攻防世界php_rce

进入题目页面如下 进入页面后也没有发现注入点,加上题目提示是php,还有rce RCE(Remote Code Execution)远程代码执行漏洞 基本概念 远程代码执行指攻击者无需物理接触目标系统,通过网络等远程方式,向目标…

PHP实现混合加密方式,提高加密的安全性(代码解密)

代码1&#xff1a; <?php // 需要加密的内容 $plaintext 授权服务器拒绝连接;// 1. AES加密部分 $aesKey openssl_random_pseudo_bytes(32); // 生成256位AES密钥 $iv openssl_random_pseudo_bytes(16); // 生成128位IV// AES加密&#xff08;CBC模式&#xff09…

Rust 数据类型详解:Scalar 与 Compound 类型

Rust 数据类型详解&#xff1a;Scalar 与 Compound 类型 Rust 是一门强类型语言&#xff0c;其类型系统设计严谨且功能强大。Rust 的数据类型可以分为两大类&#xff1a;Scalar&#xff08;标量&#xff09;类型 和 Compound&#xff08;复合&#xff09;类型。本文将详细介绍…

【Qt】各种常用的按钮(button)

按钮是界面上经常使用的组件&#xff0c;常用的4种按钮组件是普通按钮(QPushButton类)、工具按钮(QToolButton 类)、单选按钮(QRadioButton类)、复选框(QCheckBox类)&#xff0c;它们都有共同的父类QAbstractButton(见图4-2)&#xff0c;所以它们有一些共有的特性。 Qt 中常用…

广度优先搜索算法笔记

广度优先搜索 上一回我们讲了深度优先搜索&#xff0c;那么这会我们来讲一讲他的好兄弟&#xff0c;也就是bfs。那么上一回我们知道dfs是不撞南墙不回头&#xff0c;也就是一条路走到底。但是广搜不一样&#xff0c;他是一层一层的搜索&#xff0c;就是一颗树的样子&#xff0…

[paddle] 矩阵相关的指标

行列式 det 行列式定义参考 d e t ( A ) ∑ i 1 , i 2 , ⋯ , i n ( − 1 ) σ ( i 1 , ⋯ , i n ) a 1 , i 1 a 2 , i 2 , ⋯ , a n , i n det(A) \sum_{i_1,i_2,\cdots,i_n } (-1)^{\sigma(i_1,\cdots,i_n)} a_{1,i_1}a_{2,i_2},\cdots, a_{n,i_n} det(A)i1​,i2​,⋯,in​…

【DeepSeek】本地快速搭建DeepSeek

博主未授权任何人或组织机构转载博主任何原创文章&#xff0c;感谢各位对原创的支持&#xff01; 博主链接 博客内容主要围绕&#xff1a; 5G/6G协议讲解 高级C语言讲解 Rust语言讲解 文章目录 本地快速搭建DeepSeek一、安装及配置ollama二、DeepSeek模型…

数字化创新者如何利用开源2+1链动模式AI智能名片S2B2C商城小程序源码重塑市场地位

摘要&#xff1a;在数字化转型的浪潮中&#xff0c;数字化创新者正通过整合前沿技术&#xff0c;重塑行业格局&#xff0c;引领市场变革。本文深入探讨了开源21链动模式、AI智能名片以及S2B2C商城小程序源码等技术在数字化创新中的应用&#xff0c;旨在揭示这些技术如何助力企业…