当前位置:首页 > 文章列表 > 科技周边 > 业界新闻 > GitHub Actions 九月更新有哪些工作流变化

GitHub Actions 九月更新有哪些工作流变化

来源:17golang原创 2026-09-05 23:06:39 0浏览 收藏

GitHub Actions 2026 年 9 月初这次更新,重点不是增加一个新的触发器,而是让持续集成系统更容易回答三个问题:runner 什么时候必须升级、工作流读取 Dependabot 告警需要多大权限、一个 reusable workflow 里的 job 到底由哪个文件定义。三项能力已经分别落到 REST API、GITHUB_TOKEN 权限和 job 上下文中。

要点速览
  • 新增 runner 版本弃用查询 API,可看到注册支持和运行时支持的截止时间。
  • vulnerability-alerts 权限支持 readnone,可以把读取 Dependabot alerts 的权限单独收窄。
  • reusable workflow 新增四个 job.workflow_* 属性,但 GitHub Enterprise Server 暂不提供。

三项更新分别解决什么问题

这次公告适合按工程任务拆开看,而不是把它当成一次 YAML 语法大改:

更新实际解决的问题需要记住的边界
runner deprecations REST API提前安排 runner 升级,避免注册或运行时支持突然结束返回的是某个版本的支持时间,不是替你完成升级
vulnerability-alerts只给工作流读取 Dependabot alerts 的权限只支持 readnone,仍要按工作流实际需求配置
job.workflow_*在复用工作流中识别真正定义当前 job 的文件GitHub Enterprise Server 不提供这些属性
GitHub Actions runner 生命周期、GITHUB_TOKEN 最小权限和 reusable workflow 来源定位三项更新的关系图
图1:三项更新分别落在 runner 生命周期、令牌权限和 reusable workflow 定位三个工程边界。

runner 版本弃用怎么提前排进升级计划

自托管 runner 容易出现“机器还在线,但版本已经接近淘汰”的情况。新 REST API 可以在 repository、organization 或 enterprise 层级查询指定 runner 版本:

GET /actions/runners/deprecations/{version}

响应里重点看 runner_versionruntime_deprecates_atregistration_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_refgithub.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 的实际来源。

GitHub Actions caller workflow 调用 reusable workflow 时 job.workflow_ref 等属性定位定义当前 job 的文件
图2:在 reusable workflow 中,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

版本声明
本文转载于:17golang原创 如有侵犯,请联系study_golang@163.com删除
三号动漫安卓版本怎么核对?设备兼容、功能入口与安全提醒三号动漫安卓版本怎么核对?设备兼容、功能入口与安全提醒
上一篇
三号动漫安卓版本怎么核对?设备兼容、功能入口与安全提醒
Go 浮点数保留两位小数为什么仍有误差
下一篇
Go 浮点数保留两位小数为什么仍有误差
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
查看更多
AI推荐
  • SuperCLUE中文大模型评测基准:功能、能力维度与应用指南
    SuperCLUE
    SuperCLUE是权威的中文大语言模型综合评测基准,涵盖语言理解、知识应用、AI Agent智能体及安全性等12项核心能力。通过多轮对话与客观测试,定期发布榜单与技术报告,为模型研发、优化及行业选型提供科学依据。
    155次使用
  • C-Eval中文评测基准:大语言模型多学科能力评估指南
    C-Eval
    深入了解C-Eval中文评估套件,涵盖52个学科与4级难度。本文详解其功能特点、Zero-shot/Few-shot使用方法及代码示例,助您全面评测LLM中文理解与泛化能力。
    85次使用
  • ClickPrompt:AI提示词生成与优化工具,支持Stable Diffusion、ChatGPT及代码辅助
    ClickPrompt
    ClickPrompt是一款专为AI提示词编写者设计的开源在线工具,支持Stable Diffusion绘图、ChatGPT对话及GitHub Copilot代码辅助。提供Prompt自动生成、一键运行、社区分享及可视化优化功能,帮助用户高效获取精准AI输出。
    45次使用
  • PromptHero官网:AI提示词搜索、优化与学习平台,支持Midjourney/Stable Diffusion
    PromptHero
    PromptHero是专业的AI提示词搜索引擎与优化平台,支持Stable Diffusion、Midjourney等主流模型。提供海量提示词库、分类搜索、在线课程及社区互动,助力用户高效生成高质量AI图像与文本。
    25次使用
  • OpenArt免费开源指南:Stable Diffusion Prompt Book提示词手册详解
    Stable Diffusion Prompt Book
    深入解析OpenArt推出的Stable Diffusion Prompt Book,这本免费的开源提示词指南涵盖从基础语法到高级技巧,提供风格化词库与参数建议,助您优化AI绘画生成效果。
    28次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码