如何显示GitHub Action任务完成的预计到达时间(ETA)?
GitHub Actions 任务完成ETA实现方案
可以通过计算历史运行时长平均值来实现ETA显示,具体操作思路如下:
- 拉取历史运行数据:借助GitHub API获取目标Workflow的历史运行记录,提取每次成功运行的实际耗时(即
created_at到completed_at的时间差)。 - 计算平均耗时基准:筛选掉异常的历史记录(比如因失败中断、资源波动导致的超长/超短耗时),将剩余有效数据取平均值,作为当前任务的预计运行时长参考。
- 实时计算并展示ETA:在当前Workflow运行过程中,通过自定义脚本或Action记录任务启动时间,结合平均耗时算出预计完成时间,直接输出到Workflow日志中。
需要注意的是,如果Workflow的任务内容发生变更,历史数据的参考价值会降低,建议定期更新基准数据;也可以把这套计算逻辑封装成自定义GitHub Action,方便在不同Workflow中复用。
内容的提问来源于stack exchange,提问作者Intrastellar Explorer
相关产品推荐
相关产品推荐

