关于使用cli方式打包sr文件出hpm包的疑问
当前我们已经搭建了bmcstudio环境高可用版本bmcstudio出CSR包保持 ,可以通过bmcgo studio strat方式运行,然后通过web进行CSR出包。但是这种操作不适用工程打包,需要使用bmcgo 命令行方式来出实现。之前在论坛上讨论时了解到可以使用bmcgo build -a -s -p <CSR文件路径>来出包,实际使用时发现会报错 。在同样的环境下,通过web可以正常出csr包。
root@bmc:~/workspace/source/vpd# bmcgo build -a -s -p vendor/Huawei/Server/Kunpeng/openUBMC/PSR/14100513_00000001040302023953.sr
>> whoami
root
conan版本: 2.24.0
导入模块 full_component 失败
============== 组件 mds schema 校验开始 ==============
============== 组件 mds schema 校验成功 ==============
============== csr schema 校验开始 =============
============== csr schema 校验成功 ==============
仓库地址为: https://gitcode.com/openUBMC/vpd.git
ERROR: Profile文件/root/.conan2/profiles/vendor/Huawei/Server/Kunpeng/openUBMC/PSR/14100513_00000001040302023953.sr 不存在,系统可能未初始化,请在manifest仓执行bmcgo build安装产品配套构建工具
ERROR: 请查看日志信息
>> conan install --requires='bingo_cases/[>=1.0.0]@openubmc/stable' -u --deployer-folder=/tmp/tmpj3pfm2jq -of /tmp/tmpj3pfm2jq -d direct_deploy
>> conan install --requires='bmcgo_cases/[>=1.0.0]@openubmc/stable' -u --deployer-folder=/tmp/tmp84qm_afn -of /tmp/tmp84qm_afn -d direct_deploy
2026-07-16 07:24:31,657 - INFO -
有什么方法才能通过cli命令出CSR包
答案内容由AI生成,仅供参考:
根据您的要求,原文中没有明确标有“问题总结”、“结论”或“总结”等字样的章节。因此,返回空内容。
点击此处查看详细分析解答
根据您的问题描述,您希望使用 bmcgo 命令行 CLI 方式出 CSR/PSR 包 (即生成用于固件升级的 HPM 包)。当前您遇到的错误是 Profile 文件不存在 ,系统提示需要在 manifest 仓库执行 bmcgo build 以安装产品配套构建工具。下面基于知识库中的资料为您提供解决方案与正确的命令用法。
一、问题根因分析
您的执行命令 bmcgo build -a -s -p <sr文件路径> 之所以失败,是因为缺少 Conan profile 配置文件 (错误显示 Profile文件 ... 不存在)。在 openUBMC 的构建流程中,必须先通过完整的构建命令初始化环境,生成必要的 profile 与依赖,然后才能进行单个 CSR/PSR 的出包操作。知识库中的关联说明:
BMCGo Build Command (-b openUBMC -r openubmc_dev)用于生成 HPM 包,是初始化环境的标准入口。
Bingo Build Command 同样支持 Single CSR Mode,用于单独生成 CSR 包。
二、推荐命令行出包方法
方法一:使用 bingo build 命令(更稳定,推荐)
bingo 是 openUBMC 目前主推的构建工具,支持单 CSR 出包模式。命令格式如下:
bingo build -s -p <CSR/PSR文件路径> -u <UID> --hpm
参数说明:
-s:单 CSR 模式(Single CSR Mode)
-p:指定 SR 文件路径(如 .sr 文件)
-u:指定升级包的 UID(与待升级设备的 UID 匹配,可从原包获取)
--hpm:生成 HPM 格式的固件包
示例(参考论坛PSR升级问题 中的回复):
bingo build -s -p 14100513_00000004041005000433.sr -u 00000001040302023953 --hpm
注意 :此命令通常在 manifest 仓库根目录 下执行。如果之前未执行过整包构建,建议先执行一次 bingo build -b openUBMC -r openubmc_dev 来初始化环境(这一步会生成所需的 profile 文件)。
方法二:使用 bmcgo build 命令(需先初始化环境)
如果仍要使用 bmcgo 工具,请按以下步骤操作:
初始化构建环境 (在 manifest 仓库根目录执行):
bmcgo build -b openUBMC -r openubmc_dev
该命令会安装产品配套工具、生成 Conan profile,并完成依赖下载。
执行单 CSR 出包 (初始化成功后,再执行您的原命令):
bmcgo build -a -s -p <SR文件路径>
或添加 LOG=DEBUG 查看详细日志:
LOG=DEBUG bmcgo build -a -s -p <SR文件路径>
三、关键配置说明
Profile 文件 :位于 ~/.conan2/profiles/ 下,由初始化命令自动生成。若缺失,需确保在正确的仓库目录下执行构建。
配置文件优先级 :bmcgo 会依次读取 .bmcgo/config → ~/.bmcgo/config → /etc/bmcgo.conf,确保这些文件包含正确的签名策略(如 hpm_encrypt、signer 等配置)。
仓库选择 :建议始终在 manifest 仓库或产品顶层目录下执行构建命令,以保证 manifest.yml 和依赖关系正确解析。
四、总结
目标
推荐命令
前置条件
单个 CSR/PSR 出包
bingo build -s -p <sr文件> -u <UID> --hpm
在 manifest 仓库下执行,确保 profile 已存在
环境初始化(补救)
bingo build -b openUBMC -r openubmc_dev
首次使用或 profile 缺失时执行
使用 bmcgo 出包
先 bmcgo build -b openUBMC -r openubmc_dev,再执行原命令
确保工具版本兼容,推荐优先使用 bingo
您的错误 “Profile文件不存在” 正是因为没有执行初始化步骤。请按上述任一方法先初始化环境,然后即可通过 CLI 成功生成 CSR 包。如果问题依然存在,请检查执行目录是否为 manifest 仓库,并确认 ~/.conan2/profiles/ 目录下是否已生成对应的 profile 文件。
yaoshun1
(yaoshun)
2026 年7 月 18 日 01:35
3
在csr文件夹下执行bingo build
前置条件:csr文件夹不能存在于manifest、组件代码目录下
您好,CSR出包命令和组件包出包命令均为 bingo build,当您在vpd代码仓中执行时会优先调用组件出包,请在V3代码仓以外的路径执行上述命令,并使用CSR的绝对路径进行出包,如果对于当前使用的命令不确定,请执行bingo build -h查看当前环境下的build命令是哪个命令,希望能解决您的问题,如果有疑问请回复
感谢,在vpd同级目录下执行bmcgo build -a -s -p vpd/vendor/Huawei/Server/Kunpeng/openUBMC/PSR/14100513_00000001040302023953.sr --hpm可以出包了。感谢
请问使用bmcgo命令出包的csr hpm带有签名吗
我这边出包后升级后能正常识别,之前搭建环境时相关的签名都配置过。