问题描述:
openUBMC本地构建时,在VPD仓增加板卡sr,进行组件编译后,再进行版本构建后,进入BMC后台,使用find命令,未找到新增的sr
诉求:
能否提供解决方案
现有docker版本构建记录说明:
- 新增sr文件
- 添加路径到profile

- 组件编译构建

- 在manifest中添加当前组件

- 在manifest中整体构建出包
问题描述:
openUBMC本地构建时,在VPD仓增加板卡sr,进行组件编译后,再进行版本构建后,进入BMC后台,使用find命令,未找到新增的sr
诉求:
能否提供解决方案
现有docker版本构建记录说明:



cat /etc/package_info | grep vpd
可以看看环境上的vpd组件版本是不是对的
1、产品集成的逻辑是“组件打包什么文件,产品就集成什么文件”,请检查组件的conan包package目录,确定组件正确打包了的文件。
2、ipmcget -d v检查bmc的构建时间和版本,确保是你期望的bmc版本。
3、检查/etc/package_info,确定正确集成了你期望的组件&版本。
-o vpd:board_name=openUBMC 。manifest/temp/build_xxx_debug_dev/conan_index/vpd/opt/bmc查看是否有新增的sr,其中xxx为构建的单板名。好的,感谢各位支持,已经找到方案,需要在manifest.yml中的VPD指定board_name为S920X20后,再到X20 profile.txt中添加就实现加载
1.编译完成后可以直接再manifest/temp/build_openUBMC_debug_dev/tmp_root/opt/bmc/sr目录下查找是否文件有编译进去
那manifest.yml中vpd这个boardname如何配置呢,现在发现改为openUBMC后出包,会报WARN: [‘TaiShanServer2.9.0_CSR’, ‘vpd’]存在重复文件opt/bmc/sr/xxx

vpd当前提供了3个产品单板,如下所示,对应3个不同的conan包,包含的sr文件也有所不同。

看这3个单板是否满足业务需要,如果满足,选一个单板即可。
如果不满足业务需要,要搭配产业的CSR组件使用。使用board_name: common ,如下所示:
manifest/temp/build_xxx_debug_dev/conan_index/vpd/opt/bmc 查看sr是否满足要求。我们最开始用的common,新增sr未生效,然后我们指定了单板未openUBMC或者X20,会与taishan仓原有的sr冲突
因为我们项目最开始开发的sr是基于taishan仓来改的(现在未开放),现在放在VPD仓的openUBMC 单板下
- TaiShan
profile.txt
- xxx
xx.sr
添加需要vpd中的sr到profile.txt中,或自开发的sr添加到profile.txt中。
- conan:vpd_example/0.01
options:
board_name: Taishan
规避编译冲突问题方案:可以将conan二进制的TaishanServer2.9.0目录下的cffc下的sr移到vpd仓的openUBMC下,然后manifest.yaml中注释TaishanServer2.9.0组件