GitHub Actions 九月更新有哪些工作流变化
GitHub Actions 2026 年 9 月初这次更新,重点不是增加一个新的触发器,而是让持续集成系统更容易回答三个问题:runner 什么时候必须升级、工作流读取 Dependabot 告警需要多大权限、一个 reusable workflow 里的 job 到底由哪个文件定义。三项能力已经分别落到 REST API、GITHUB_TOKEN 权限和 job 上下文中。
- 新增 runner 版本弃用查询 API,可看到注册支持和运行时支持的截止时间。
vulnerability-alerts权限支持read与none,可以把读取 Dependabot alerts 的权限单独收窄。- reusable workflow 新增四个
job.workflow_*属性,但 GitHub Enterprise Server 暂不提供。
三项更新分别解决什么问题
这次公告适合按工程任务拆开看,而不是把它当成一次 YAML 语法大改:
| 更新 | 实际解决的问题 | 需要记住的边界 |
|---|---|---|
| runner deprecations REST API | 提前安排 runner 升级,避免注册或运行时支持突然结束 | 返回的是某个版本的支持时间,不是替你完成升级 |
vulnerability-alerts | 只给工作流读取 Dependabot alerts 的权限 | 只支持 read 和 none,仍要按工作流实际需求配置 |
job.workflow_* | 在复用工作流中识别真正定义当前 job 的文件 | GitHub Enterprise Server 不提供这些属性 |

runner 版本弃用怎么提前排进升级计划
自托管 runner 容易出现“机器还在线,但版本已经接近淘汰”的情况。新 REST API 可以在 repository、organization 或 enterprise 层级查询指定 runner 版本:
GET /actions/runners/deprecations/{version}
响应里重点看 runner_version、runtime_deprecates_at 和 registration_deprecates_at。前者描述查询的版本,后两者分别对应运行时支持结束和新 runner 注册支持结束。工程上可以把它接到每周的 runner inventory 检查里:先收集当前版本,再按时间字段排序,给临近截止日期的版本创建升级工单。
这里不要把“查询到日期”误解成“GitHub 会自动替换 runner”。升级动作仍然要由团队完成,包括确认自定义工具链、镜像和标签是否兼容。API 的价值是把维护窗口变成可查询数据。
vulnerability-alerts 权限怎样写得更小
如果一个工作流只需要读取 Dependabot alerts,不必继续依赖更宽泛的令牌权限。可以在工作流顶层或具体 job 里写:
permissions:
contents: read
vulnerability-alerts: read
jobs:
audit:
runs-on: ubuntu-latest
steps:
- name: Check dependency alerts
run: echo "read Dependabot alerts here"
read 表示只读访问,none 则明确关闭这项权限。建议把权限声明放在需要它的最小范围内,并检查组织级默认权限,避免某个 job 因复制旧模板而继承不必要的能力。这个变化改善的是令牌边界,不会自动替你修复依赖漏洞。
reusable workflow 怎样定位真正的定义文件
复用工作流时,调用方和被调用方都可能有自己的文件路径。原来的 github.workflow_ref 与 github.workflow_sha 更偏向当前调用上下文;新属性把“定义当前 job 的工作流”单独暴露出来:
- name: Record workflow source
run: |
echo "ref=${{ job.workflow_ref }}"
echo "sha=${{ job.workflow_sha }}"
echo "repo=${{ job.workflow_repository }}"
echo "file=${{ job.workflow_file_path }}"
四个属性分别是完整 ref、工作流文件的 commit SHA、定义文件所在的 owner/repo 以及相对仓库根目录的文件路径。它们适合写入审计日志、构建摘要或故障诊断信息:当多个仓库复用同一套 workflow 时,排查者能知道当前 job 的实际来源。

job.workflow_* 指向定义当前 job 的文件,与调用方层面的 github.workflow_* 不是同一层信息。如果 job 直接定义在普通 workflow 中,job.workflow_ref 会与 github.workflow_ref 对应;只有进入 reusable workflow 场景,两者的定位差异才真正明显。还要注意,这四个属性当前不适用于 GitHub Enterprise Server,迁移脚本不要默认它们一定存在。
升级后可以按这张清单检查
- 把自托管 runner 版本与 deprecations API 的两个日期放进定期检查,按 registration 和 runtime 分别安排窗口。
- 搜索工作流中的
permissions,将只读 Dependabot alerts 的 job 改为vulnerability-alerts: read,并保留必要的其他权限。 - 在 reusable workflow 的诊断输出中记录四个
job.workflow_*值;对缺少这些值的 GHES 环境保留兼容分支。
这样处理后,这次九月更新就不只是“看过公告”:runner 有了升级时间线,令牌有了更窄的权限边界,复用工作流也有了可追踪的来源信息。
常见问题
runner deprecations API 会直接升级 runner 吗?
不会。它只返回指定版本的注册和运行时支持截止时间,升级、镜像替换和兼容性验证仍由团队安排。
vulnerability-alerts: read 能修改 Dependabot 告警吗?
公告定义的是只读权限。它适合读取告警并生成检查结果,不应被当成修改或关闭告警的写权限。
为什么 reusable workflow 里还要记录 workflow SHA?
文件路径能说明来源位置,SHA 能帮助把一次运行对应到当时的具体版本。两者一起记录,排查复用工作流变更时更可靠。
事实依据:GitHub Actions Early September 2026 updates;相关接口和上下文细节可继续查看 GitHub REST API 文档 与 Contexts reference。
三号动漫安卓版本怎么核对?设备兼容、功能入口与安全提醒
- 上一篇
- 三号动漫安卓版本怎么核对?设备兼容、功能入口与安全提醒
- 下一篇
- Go 浮点数保留两位小数为什么仍有误差
-
- 科技周边 · 业界新闻 | 2小时前 | OpenTelemetry MCP AI可观测性 CNCF Observability Summit
- CNCF Observability Summit 2026 的 AI 议题有哪些
- 225浏览 收藏
-
- 科技周边 · 业界新闻 | 2小时前 |
- CNCF 终端用户案例怎样提升 GPU 利用率
- 385浏览 收藏
-
- 科技周边 · 业界新闻 | 2小时前 |
- CNCF 欢迎 OVHcloud 成为白金会员意味着什么
- 188浏览 收藏
-
- 科技周边 · 业界新闻 | 2小时前 | 云原生 · 人工智能 · 业界新闻 · Kubernetes AI推理 模型服务 KubeCon CloudNativeCon
- KubeCon 2026 新增 AI 推理议程透露哪些工程重点
- 250浏览 收藏
-
- 科技周边 · 业界新闻 | 2小时前 | 云原生 · DNS · kubernetes · Kubernetes CNCF 多集群 K8gb GSLB DNS流量切换
- CNCF K8gb 进入孵化后适合解决什么流量问题
- 131浏览 收藏
-
- 科技周边 · 业界新闻 | 2小时前 | kubernetes · 业界新闻 · Kubernetes CNCF 平台工程 Kyverno 策略即代码 云原生治理
- CNCF Kyverno 毕业后策略即代码怎样落到平台治理
- 181浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- PubMedQA
- 深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
- 571次使用
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 615次使用
-
- LMArena
- LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
- 646次使用
-
- HELM
- 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
- 603次使用
-
- MMBench
- MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
- 421次使用
-
- Go 项目用 GitHub Actions 自托管 runner:版本强制执行前该怎么整理 CI
- 2026-07-09 340浏览
-
- Go go.mod 的 toolchain 指令怎样约束开发环境版本
- 2026-10-16 281浏览
-
- Go 工具链自动升级值得开吗:GOTOOLCHAIN、go 指令与 CI 可复现性的取舍
- 2026-07-26 316浏览
-
- Go 项目怎么在 CI 里固定工具链:GOTOOLCHAIN、go.mod 与版本矩阵
- 2026-08-12 488浏览
-
- Go 1.27 响应文件怎么传给编译工具:@file 语法与 CI 参数治理
- 2026-09-01 377浏览

