Github操作cron调度程序在错误的时间运行



我用以下代码创建了一个github操作,该操作应该每天凌晨1点运行:

on:
schedule:
- cron: '0 1 * * *'
jobs:
update-stats:
runs-on: ubuntu-latest
steps:
# code

在我看来,它很直。行动正在进行,但完全超出了计划。

Mon, 12 Sep 2022 03:48:58 GMT
Current runner version: '2.296.1'
Mon, 12 Sep 2022 03:48:58 GMT  Operating System
Mon, 12 Sep 2022 03:48:58 GMT  Ubuntu
Mon, 12 Sep 2022 03:48:58 GMT  20.04.5
Mon, 12 Sep 2022 03:48:58 GMT  LTS

即使我们考虑时区,它也在48分钟运行。它是如何工作的?

根据Github Actions官方文档上的时间表注释

注意:在GitHub Actions工作流运行的高负载期间,schedule事件可能会延迟。高负载时间包括每小时开始一次。若要减少延迟的可能性,请将工作流安排在一小时中的不同时间运行。


此外,在GitHub支持社区的一次讨论中(无法保证计划的作业?(,GitHub合作伙伴@brightran表示,很多时候,触发计划的工作流时可能会有延迟:

通常,延迟时间约为3到10分钟。有时,它可能甚至几十分钟,或者一个多小时。

他还解释说,如果延迟时间太长,当天可能不会触发计划的工作流。因此,对于需要执行保证的生产任务,不建议使用GitHub Actions计划工作流。

最新更新