GitHub Actions定时任务未触发:Schedule触发器不显示
GitHub Actions定时任务不触发但手动执行正常的问题排查
问题详情
我开发了一个Python脚本并配置了GitHub Actions工作流文件run.yml,计划通过cron表达式0 22 * * *(对应每天韩国标准时间7点,UTC时间22点)自动执行脚本。但遇到以下问题:
- 定时任务完全未触发,GitHub Actions界面中无“已计划”状态标识(无时钟图标)
workflow_dispatch手动触发功能正常可用- 已完成的验证项:
- YAML文件无拼写错误
- 工作流文件已推送到默认分支(main)
- 仓库设置中已启用Actions权限
- 工作流文件确实存在于默认分支
- 调用API
/actions/workflows查询,工作流状态显示为active,但响应中缺失schedule属性
相关工作流配置代码:
on: schedule: - cron: '0 22 * * *' workflow_dispatch:
排查与解决建议
- 恢复仓库活跃度:GitHub会对超过60天无提交的仓库暂停定时任务调度。若仓库长期未更新,可提交一个空修改(执行
git commit --allow-empty -m "refresh schedule trigger"后推送到main分支),触发仓库活跃度更新,之后等待1-2小时观察定时任务是否恢复。 - 重新注册定时任务:临时修改workflow文件中的cron表达式(比如改为
1 22 * * *)并推送到main分支,等待几分钟后再改回原表达式重新推送,强制GitHub重新识别并注册定时任务。 - 确认工作流文件路径:确保
run.yml存放于仓库根目录下的.github/workflows/文件夹中,路径错误会导致GitHub无法识别定时配置。 - 检查组织级权限(若为组织仓库):如果是组织所属仓库,除了仓库级的Actions权限,还需确认组织设置中是否允许Actions定时任务运行。
- 清空日志过滤条件:在Actions页面清空搜索框,切换到“All workflows”视图,排查是否有被过滤掉的定时任务执行记录。
内容的提问来源于stack exchange,提问作者Park YeJun
相关产品推荐
相关产品推荐

