已关闭
[需求]: 支持SSU模组的BIOS启动参数设置和查询 #466
huangleisheng创建于  7月22日关闭于  10 天前
huangleisheng成员
7月22日 创建

感谢您为社区贡献新需求!请按照以下提示提供详细信息,以便我们更好地理解并跟进。

版本分支

openUBMC main

需求属性

所属版本

openUBMC26.09

工作量

NA

是否需要编码

是否免测试

周边依赖

NA

需求来源

NA

需求描述

简要说明

支持SSU模组的BIOS启动参数设置和查询

系统用户

开发、测试、运维、网管

前置条件

BMC运行正常

主成功场景

北向接口:redfish、web
配置优先启动项、生效模式
获取优先启动项、生效模式、默认启动项
启动项取值:系统盘、PXE-GE、PXE-UBC/PXE-UBOE
生效模式取值:永久有效、单次有效

扩展场景(含异常场景)

NA

约束

NA

非功能需求

likedislike
openUBMC-robotopenUBMC-robot成员
7月22日 添加了label:sig/sig-component-drivers
openUBMC-robotopenUBMC-robot成员
7月22日 关联了看板:openUBMC 26.09 需求看板
openUBMC-robot
openUBMC-robot成员
7月22日 评论:

欢迎来到 openUBMC 社区

Hey @yelvsub , 感谢你对社区的贡献.

机器人使用手册

有关指令的使用,可以点击 说明文档论坛 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。

联系指引

有疑问可以联系 SIG: sig-component-drivers ,
维护者是: @dongyushan, @net_swift_wangchen, @sam_h1973, @u012924942, @weixin_37569011, @xiaoxinglxs ,
优秀贡献者是: @changxingOpenUBMC, @chenshengfan, @leessential, @net_swift_tianwen, @xiapengc1, @yelvsub .

likedislike
openUBMC-robot
openUBMC-robot成员
7月22日 评论:

Issue 工作流介绍

社区的需求和缺陷的工作流状态处于纳管中。

类型 上个状态 下个状态 评论命令 谁可以操作
需求 待办的 已接纳 /todo2accepted SIG组: sig-release-management (maintainer)
需求 已接纳 开发中 /accepted2developing 仓库成员角色: Maintainer, Committer, Contributor, Owner
需求 开发中 转测中 /developing2testing 仓库成员角色: Maintainer, Committer, Contributor, Owner
需求 转测中 待验收 /testing2UAT 仓库成员角色: Maintainer, Committer, Contributor, Owner
需求 待验收 已完成 /UAT2done SIG组: sig-QA (maintainer,committer)
需求 待办的 已挂起 /todo2suspended SIG组: sig-release-management (maintainer)
需求 已挂起 已接纳 /suspended2accepted SIG组: sig-release-management (maintainer)
需求 待办的 已拒绝 /todo2rejected SIG组: sig-release-management (maintainer)
需求 已拒绝 已接纳 /rejected2accepted SIG组: sig-release-management (maintainer)
likedislike
wangjian成员
7月25日 评论:

/todo2accepted

likedislike
openUBMC-robotopenUBMC-robot成员
7月25日 issue状态由 待办的 改变为 已接纳
huangjiapei成员
8月17日 评论:

/accepted2developing

likedislike
openUBMC-robotopenUBMC-robot成员
8月17日 issue状态由 已接纳 改变为 开发中
Lliucong成员
24 天前 关联了pull request:feat:支持ssu启动参数配置以及bios升级
Lliucong成员
24 天前 关联了pull request:feat: 支持SSU启动项配置
Lliucong成员
23 天前 关联了pull request:feat:支持ssu启动参数配置以及bios升级
Lliucong成员
23 天前 删除了关联的pull request:feat:支持ssu启动参数配置以及bios升级
zhaotianli成员
22 天前 评论:

PR #1479 回顾分析: 【921bd0a464a053563eb7a49bea1900d6】feat: 支持SSU启动项配置

仓库: openUBMC/rackmount
分支: main (hwliuc/rackmount_tmp) → main
合并时间: 2026-08-28 22:40:34 (UTC+8)
作者: hwliuc
关联需求: [issue #466] 支持ASU模组的BIOS启动参数设置和查询


1. AI 检视意见追踪

本 PR 经历两轮 AI 检视:首轮(08-22,openUBMC-robot 检视报告 + atomgit-bot 深度检视)与第二轮(08-27,Richardli25 账号发布的维度化深度检视报告)。

首轮 AI 检视(2026-08-22 11:25)

# 来源 AI 发现 后续处理 说明
1 openUBMC-robot Systems.json PATCH 参数路径与 ReqBody 结构不一致,PreferredBootSource 无法传递(警告) ✅ 已采纳修复 e780bf0a(08-22 17:20)修改;最终版 SetBootOptions 使用 ${ReqBody/Oem/{{OemIdentifier}}/ExtendedBoot/PreferredBootSource},与 ReqBody 结构一致,讨论已解决
2 openUBMC-robot / atomgit-bot Bios.json PATCH 参数路径与 ReqBody 不一致,EffectivePeriod/PreferredBootMedium 无法传递(警告 / High) ✅ 已采纳修复 ReqBody 重构为嵌套 PreferredBootMedium 对象(Target/EffectivePeriod),参数路径 ${ReqBody/PreferredBootMedium/...} 与结构一致;对应修改见 be7ccf10(08-28 16:34)
3 openUBMC-robot GetBootSourceOverrideTarget Switch 缺 None 分支(建议) ⏳ 未响应 最终代码 Switch 仍仅含 PxeOverEthernet/PxeOverUB/Hdd 三分支;讨论虽被标记解决但代码未改,第二轮检视问题5 复提后仍未修复
4 atomgit-bot DefaultBootOrder 引用源键 AliasBootOrder,应为 Destination 目标键 BootOrder(Medium) ✅ 已采纳修复 e780bf0a(08-22 17:20)修改该行;最终版为 ${ProcessingFlow[3]/Destination/BootOrder}

第二轮深度检视(2026-08-27 16:55,AI 生成格式报告)

# AI 发现 后续处理 说明
1 web_backend GET 的 GetPath Id 缺 SSU 前缀,可能误匹配普通 Chassis(Major) ✅ 已采纳修复 最终版改用 bmc.dev.SSU 接口 + Script tonumber(Uri.id) 数字 Id 定位资源,不再拼接字符串 Id
2 Bios.json GET 的 Destination 源键 AliasBootOrder 疑似笔误,BootOrder 恒空(Major) ✅ 已采纳修复 最终版 Destination 直接使用 BootOrder,与 RspBody 引用一致
3 redfish SSU GET RspBody 缺 @odata.context/@odata.id/Id/Name(Major) ⏳ 未响应 最终 RspBody 仍仅含 @odata.type/BiosVersion/Boot/Oem;合入前机械合规预检(08-28 22:35)仍报 RF-META error,属带已知问题合入
4 SSU PATCH 缺 ResourceExist 校验(Minor) 🔶 部分处理 最终 PATCH 仍无 ResourceExist,但 Lua 插件 set_boot_options 对空路径抛 OperationFailed 兜底(错误形态非 404)
5 GetBootSourceOverrideTarget Switch 缺 None 分支(Minor,复提) ⏳ 未响应 同首轮 #3
6 GET 广告 AllowableValues 但 PATCH 不接受标准 BootSourceOverrideTarget(Minor) ⏳ 未响应 最终 PATCH 仅开放 Boot.BootSourceOverrideEnabled 与 Oem PreferredBootSource,标准写路径未开放,未见设计说明
7 未更新 CHANGELOG.md(Minor) ⏳ 未响应 最终 commit 仅含 6 个文件,无 CHANGELOG 条目
指标 结果
AI 意见总数(去重) 10
已采纳并修复 5
部分处理(缓解) 1
未响应 4

2. 人工检视补充

  • 检视人: DataSculptor(wangjian)、yelvsub(huangleisheng)
  • 意见概要:
    • DataSculptor:① 资源协作接口 bmc.dev.Bios 在 mdb_interface 中未定义;② 新增代码硬编码实例 ID(/Systems/1),应使用动态段引用;③ 北向接口新增/修改但 PR 未附社区评审帖链接
    • yelvsub:① 没有改 schema(Redfish CSDL/JSON Schema 未同步)
  • 解决状态: 全部已解决(resolved)
    • ① 最终方案改为 Lua 插件 orchestrator.ssu_boot_options 经 mdb 代理直调设备方法,插件注释明确说明绕过声明式接口限制的原因(接口定义本体需在 mdb_interface 仓库另行合入)
    • ② e780bf0a(08-22 17:20)改为动态段引用
    • ③ 评审帖 topic 7508 于 08-24 评审通过后关联
    • ④ 最终 commit(08-28 22:14)补充 openubmccomputersystem_v1.xml 与 openubmccomputersystem.v1_0_0.json 两份 schema(ExtendedBoot/PreferredBootSource/DefaultBootOrder),yelvsub 随后 /lgtm + /approve

3. 评审贴覆盖情况

评审贴链接:【待评审】新增接口管理SSU BIOS模块(2026-08-24 评审结论:同意)

评审点 是否涵盖
评审点1:新增设备树协作接口 bmc.dev.Bios 及 Version 属性 ✅ 已涵盖(北向消费侧:redfish/web GET 经 bmc.dev.Bios 读取 Version)
评审点2:新增设备树协作接口 bmc.dev.BootOptions(BootSourceOverrideEnabled/BootSourceOverrideTarget/BootOrder 属性 + SetStartOptionFlag/SetStartOption 方法) ✅ 已涵盖(北向消费侧:GET 读取三属性,PATCH 经 Lua 插件调用两方法)

覆盖统计: 2/2(本 PR 为北向消费侧实现,南向接口定义本体在 mdb_interface 仓库维护)

4. 总结

  • 开发者对两轮 AI 检视响应积极:首轮 4 项发现中 3 项当日内(08-22 17:20)完成修复;第二轮 3 个 Major 中 2 个在最终版本修复。PATCH 写路径从声明式 Method 调用重构为 Lua 插件代理直调,一次性解决了参数路径不一致与 mdb_interface 接口未定义两个问题,是本 PR 检视驱动下的关键方案调整。
  • 遗留 4 项未响应意见集中在规范性/边界场景:Redfish 元字段缺失(机械预检门禁持续报告 RF-META error)、Switch 缺 None 分支、标准 BootSourceOverrideTarget 写路径未开放、CHANGELOG 未更新。其中元字段缺失与 None 分支属于 GET 路径潜在功能缺陷,建议在后续版本或转测阶段跟进修复。
  • 人工检视价值显著:DataSculptor 的 mdb_interface 依赖提醒直接推动了插件化方案落地;yelvsub 的 schema 缺失提醒促成了 CSDL/JSON Schema 补齐(合入当天完成)。人工意见全部闭环后 PR 才获得 lgtm/approve 并合入。
  • 值得关注:PR 在机械合规预检报 error 的情况下约 5 分钟后即合入,建议社区明确 RF-META 类 error 是否应作为合入门禁。

此回顾分析由 AI(opencode + GLM)自动完成

likedislike
Lliucong成员
22 天前 关联了pull request:feat:支持ssu启动参数配置以及bios升级
huangjiapei成员
12 天前 评论:

/developing2UAT

likedislike
openUBMC-robotopenUBMC-robot成员
12 天前 issue状态由 开发中 改变为 待验收
yanyajun成员
10 天前 评论:

/UAT2done

likedislike
openUBMC-robotopenUBMC-robot成员
10 天前 issue状态由 待验收 改变为 已完成
openUBMC-robotopenUBMC-robot成员
10 天前 关闭了 issue
Lliucong成员
2 天前 关联了pull request:feat(dmc): 新增SSU模组Bios与BootOptions设备树契约
Cchangdexing成员
6 小时前 修改标题为 “[需求]: 支持SSU模组的BIOS启动参数设置和查询”,原标题为“[需求]: 支持ASU模组的BIOS启动参数设置和查询”
Cchangdexing成员
6 小时前 修改了issue 的描述