代码仓
中
BMC Studio用户指南
更新时间: 2025/11/22
在AtomGit上查看源码

BMC Studio是一款可视化的配置工具,用于辅助BMC进行灵活定制。支持配置CSR、资源协作接口、MDS、接口映射,同时也支持在线调试、板卡定制、原生开发、接口定制以及一键出包等功能。

简介 ​

BMC Studio分为“开发任务”和“操作模块”两个板块,您可以在首页单击“切换视图”进行切换。

  • 操作模块

    • CSR配置:CSR描述了板卡上的具体组成结构,包括链路拓扑和器件描述信息,记录板卡的静态硬件信息。
    • 资源协作接口配置:支持从系统视角对BMC软件管理功能的抽象定义,包含接口和路径的定义,先定义接口,再使用路径实现这个接口。
    • MDS配置:APP的模型描述文件,定义APP如何管理资源协作接口和具体存在的私有属性。
    • 接口映射配置:支持定义接口请求与资源协作接口的对应关系、接口及属性的校验信息、属性执行映射的前置与后置处理等。
  • 开发任务

    • 板卡定制:支持对新增的板卡器件进行定义以及对已有板卡的器件适配。
    • 原生开发:支持开发新的APP功能。
    • 接口定制:支持定制北向接口和对Redfish、WebREST、CLI、SNMP接口映射配置的新增、修改和删除。
    • 编译构建:上传工具生成的CSR文件,对接编译服务器,实现一键编译出包。

安装BMC Studio ​

接入设备管理和在线调试 ​

此功能主要用于管理Qemu设备和和BMC设备,并提供了在线调试接口和查询数据库的功能。

在BMC Studio首页,单击右上角“设备管理”按钮,进入“接入设备管理”界面。

说明:
管理Qemu设备以及在线调试的操作,请参见BMC Studio Qemu设备管理使用指南。
连接SSH的操作方法,请参见BMC Studio SSH连接功能操作指南。

仓库部署 ​

以下视频介绍了BMC Studio 仓库部署操作指导,通过该视频您可以详细了解仓库部署的具体步骤,从而有效提升BMC Studio的部署效率。

配置工作空间 ​

首次使用BMC Studio,必须配置默认空间,如果未配置则无法进入系统。

默认空间配置 ​

说明:
默认工作空间配置完成后,暂不支持删除。

  1. 首次登录BMC Studio,界面提示配置默认空间。

  2. 根据实际需求配置默认空间。

    • 空间名称:填写工作空间的名称,要求如下:
      • 支持数字、字母、下划线和点号(.),且必须包含数字或字母。
      • 工作空间名称设定后不支持修改。
      • 工作空间的名称不能重复,建议用产品名称命名。
    • 数据导入方式:请根据实际情况,选择数据导入的方式。
      • 如果选择“导入Manifest”:则通过Manifest来初始化空间数据。
      • 如果选择“指定文件路径”:则导入本地开发环境的数据作为空间数据进行管理。
      • 如果选择“自定义”:则需要手动上传一个文件夹或 zip 压缩包作为初始化的工作空间数据。
    • Git地址:请输入Manifest的git仓库地址。
    • 远端分支名称:请选择待开发产品对应的Manifest分支。
    • 指定文件路径:“数据导入方式”选择“指定文件路径”时必填。请输入本地开发环境的数据所在的路径。例如:/usr/share/bmc_studio/server/users/xxxxx/oem_files。
    • 一键迁移:数据导入方式”选择“指定文件路径”时支持此勾选项。如果勾选,则表示将指定路径下的工作数据无损迁移到BMC Studio工作空间进行管理。
  3. 填写完毕后,单击“确认”,完成配置。

新建工作空间 ​

新建的工作空间可用于管理不同系列化产品,空间之间的数据相互独立。最多支持创建10个(包含默认工作空间)。

  1. 在BMC Studio首页,单击右上角工作空间按钮。

  2. 选择“新建工作空间”。

  3. 根据实际需求配置空间信息,详细参数可参考“配置默认空间”中的参数说明。

  4. 填写完毕后,单击“确认”。

  5. 根据弹框提示,选择跳转到新的工作空间。

  6. 单击右上角“仓库管理”按钮进入仓库。

  7. 选择产品名称,为新的工作空间指定产品。

  8. 单击“一键仓库部署”拉取对应产品的代码仓库到创建的工作空间内。

    说明:
    新建的工作空间如果未执行“一键仓库部署”,模型文件将显示不存在。
    执行一键仓库部署需要有仓库权限。

切换工作空间 ​

支持工作空间相互切换。

说明:
切换工作空间不会删除工作空间内的数据。
工具拉取代码和执行模型检查时,不支持切换工作空间。
切换工作空间成功后,工具的所有操作都是基于新工作空间的数据。
切换工作空间不会删除切换前和切换后工作空间的数据。

  1. 在BMC Studio首页,单击右上角工作空间名称。

  2. 选择需要切换的工作空间。

  3. 单击“切换到此空间”。提示“操作成功”表示空间切换成功。

删除工作空间 ​

最多支持创建10个工作空间,如果达到创建上限,则需要删除已有的工作空间,才可继续创建。

说明:
默认工作空间不支持删除。
工具拉取代码和执行模型检查时,不支持删除工作空间。
删除工作空间会解除工具与工作目录的关系。
如果删除正在使用的工作空间,删除成功后将自动切换到默认工作空间。

  1. 在BMC Studio首页,单击右上角工作空间名称。

  2. 选择需要删除的工作空间。

  3. 单击“删除此空间”,弹出删除确认的提示框,请确认后操作。

    • 确认删除操作,请单击“确认”。如果勾选“同步删除工作空间数据”,删除成功后数据无法恢复,请谨慎操作。
    • 取消删除操作,请单击“取消”。
  4. 确认后,完成删除工作空间操作。

操作模块 ​

配置CSR模块 ​

CSR描述了硬件板卡的物理组成结构,包括链路拓扑和器件描述信息。将一个可独立更换的Fru抽象为板卡(组件和部件),为每一个板卡都定义一个CSR描述文件,在运行过程中由BMC系统自动发现和解析。

说明:
支持查看文件代码和比对代码修改前后数据,具体操作方法请参考代码预览和查看修改章节。

修改模型 ​

  1. 在BMC Studio选择操作模块的首页,选择CSR。
  2. 进入CSR模型界面,工具会自动识别产品空间中的CSR仓库。
  3. 在CSR列表中,选择需要操作的模型。
  4. 搭建模型。
  5. 修改完毕后,单击“保存”。

新增组件仓 ​

  1. 在BMC Studio选择操作模块的首页,选择CSR。
  2. 点击图中所示的加号按钮。
  3. 选择需要上传的文件夹,然后点击右下角的“打开”。

新增文件夹 ​

  1. 在BMC Studio选择操作模块的首页,选择CSR。

  2. 在CSR列表中,选择需要新增文件夹的目标文件夹。

  3. 单击目标文件夹后的“操作”。例如:需要在vpd文件夹下新增文件夹,请单击vpd后的“操作”按钮。

  4. 选择“新增文件夹”。

  5. 输入文件夹名称,完成新建操作。

    说明:
    名称仅支持数字、字母和下划线。

新增组件 ​

目前提供三种方式新增组件

手动新增 ​

  1. 在BMC Studio选择操作模块的首页,选择CSR。

  2. 在CSR列表中,选择需要新增组件的目标文件夹。

  3. 单击目标文件夹后的“操作”。例如:需要在src文件夹下新增组件,请单击src后的“操作”按钮。

  4. 选择“新增组件”。

  5. 填写组件名称、格式版本和数据版本。数据版本和格式版本要求为A.BC的格式校验,A、B、C均为0-255的数字(不能有前导零)。

  6. 填写完毕后,单击“保存”。

上传组件 ​

  1. 在BMC Studio选择操作模块的首页,选择CSR。
  2. 在CSR列表中,选择需要新增组件的目标文件夹。
  3. 单击目标文件夹后的“操作”。例如:需要在src文件夹下新增组件,请单击src后的“导入本地sr文件”按钮。
  4. 选择需要上传的sr文件,并点击“打开”

复制CSR ​

  1. 在BMC Studio选择操作模块的首页,选择CSR。
  2. 在CSR列表中,选择需要复制的目标文件夹。
  3. 单击目标文件后的“操作”,然后点击复制按钮。
  4. 选择您要将 CSR 复制过去的文件夹,点击文件名后的“操作”,然后点击粘贴按钮。

删除组件 ​

支持撤销删除操作,具体操作方法方法请参考“常用操作”章节中的撤销删除文件和撤销修改。

  1. 在CSR列表中,选择需要删除的文件、模型或组件,单击“操作”。

  2. 选择“删除”。

  3. 工具弹出确认删除的提示框,请根据情况选择。

    • 确认删除,请单击“确认”。
    • 取消删除,请单击“取消”。

CSR页面检查 ​

以下视频介绍了 BMC Studio 的 CSR 页面模型检查操作指导,通过该视频您可以详细了解 CSR 模型检查的具体步骤,模型检查可以检查出模型之间不一致的错误,并给出告警提示。

同步代码 ​

通过Git命令,将CSR配置提交到代码仓。

  1. 选择要同步代码的主文件夹,单击“操作”。

  2. 选择“同步代码”。

  3. 如果提示“代码同步成功”,表示同步代码操作成功。

    说明:
    如果弹出“代码同步失败”,提示“检测到待同步数据与工具本地数据存在冲突,请通过其它工具解决冲突。
    您也可以执行强制覆盖操作,此操作不可逆,存在数据丢失的风险”。建议先通过其他工具解决冲突,再执行代码同步。

适配板卡 ​

适配板卡具体操作流程,请参见BMC Studio板卡适配指南。

CSR出包 ​

支持单个和批量打包CSR。

说明:
批量生成时仅支持下载为HPM包格式。
选择的CSR文件中,必须包含UID,且批量出包中的UID不能重复。

单个CSR打包 ​

  1. 模型配置完成后,单击页面右上角“CSR出包”。

  2. 参考以下内容,填写出包信息。

    • FormatVersion:填写Format的版本。
    • DataVersion:填写Data的版本。
    • EEPROM大小限制:选择16k或32k。
    • OEM定制信息:选填项,请根据情况选择是否上传OEM定制信息。上传要求格式为.bin,大小不超过4KB。
    • 下载选项:勾选下载生成的格式,可同时勾选多个。支持HPM、二进制bin、json文件。
  3. 单击“CSR出包”。生成的CSR将自动下载到本地。如果通过ssh连接了 BMC 真机,则还可以选择“出包并升级到BMC”将出的包直接生效到真机环境。

批量CSR打包 ​

批量生成时仅支持下载为HPM包格式。

  1. 在CSR列表右上方单击“批量CSR出包”。

  2. 勾选需要出包的文件,单击CSR出包。

  3. 参考以下内容,填写出包信息。

    • OEM共享文件:上传的OEM文件可用于全部CSR出包使用。
    • EEPROM大小限制:选择16k或32k。
    • OEM文件:为对应的CSR上传OEM文件,上传要求格式为.bin,大小不超过4KB。
    • 使用共享文件:如果勾选,表示携带“OEM共享文件”中上传的文件。如果不勾选,表示不携带“OEM共享文件”中上传的文件直接携带本文件选择的对应“OEM文件”。
    • 删除:删除对应的CSR文件。
  4. 单击“批量CSR出包”。

说明:
“出包并升级到BMC”功能需要您有真实服务器,并且通过BMC Studio连接到这台机器才能使用,可以将出完的包直接生效到环境中。 详情请见

生效到 QEMU ​

在连接到 Qemu 后,可以将文件直接生成到 Qemu 环境。 在点击了按钮后,可以选择生效方式。 BMC Studio 会把该文件以对应的方式生效到 Qemu。

配置资源协作接口 ​

资源协作接口即为从系统视角对BMC软件管理功能的抽象定义。资源协作接口包含对象和接口的定义,接口以bmc.kepler开头。

说明:
支持查看文件代码和比对代码修改前后数据,具体操作方法请参考代码预览和查看修改章节。

修改资源协作接口/路径信息 ​

说明:
配置资源协作接口的基本信息时,属性、方法和信号要求至少配置一个。

  1. 选择需要操作的资源协作接口/路径。
  2. 修改资源协作接口的配置。
  3. 修改资源协作接口路径的配置。
  4. 修改完毕后,单击“保存”,完成修改。

新增文件夹 ​

  1. 选择需要新增文件夹类型,路径或接口。

  2. 在资源协作接口列表中,选择需要新增文件夹的目标文件。

  3. 单击目标文件夹后的“操作”。以新增路径文件举例,例如:需要在Accessor文件夹下新增文件夹,请单击Accessor后的“操作”按钮。

  4. 选择“新增文件夹”。

  5. 输入文件夹名称,完成新建操作。

说明:
名称仅支持数字、字母和下划线,且要求不能以数字开头。

新增资源协作接口/路径 ​

  1. 在资源协作接口列表中选择新增的类型:接口/路径。

  2. 在资源协作接口的列表中,选择需要新增接口或路径的目标文件。

  3. 单击目标文件夹后的“操作”。例如:需要在kepler文件夹下新增资源协作接口,请单击kepler后的“操作”按钮。

  4. 选择“新增资源协作接口”。

  5. 参考“修改资源协作接口/路径信息”中的参数列表。配置资源协作接口/路径。

  6. 配置完成后,单击“保存”。

检查 ​

  1. 在资源协作接口/路径列表中,选择需要检查的文件,单击“操作”。

  2. 选择“检查”,工具开始检查所选文件的模型一致性。

  3. 检查完成后,单击“检查结果”可查看详情。界面展示“错误提示”、“错误影响”和“修复建议”。

删除资源协作接口/路径 ​

支持撤销删除操作,具体操作方法请参考撤销删除文件和撤销修改。

  1. 在资源协作接口/路径列表中,选择需要删除的文件,单击“操作”。

  2. 选择“删除”。

  3. 工具弹出确认删除的提示框,请根据情况选择。

    • 确认删除,请单击“确认”。
    • 取消删除,请单击“取消”。

配置MDS ​

MDS是APP的模型描述文件,定义了该APP管理的资源协作接口和私有属性。

说明:
支持查看文件代码和比对代码修改前后数据,具体操作方法请参考代码预览和查看修改章节。

修改MDS信息 ​

说明:
信息填写完毕后,未保存当前页面信息,切换页面时会清空当前页面编辑的全部内容,请谨慎操作。

  1. 选择需要操作的文件。
  2. 修改配置信息。
  3. 修改完毕后,单击“保存”,完成修改。

检查 ​

  1. 在MDS列表中,选择需要检查的文件,单击“操作”。

  2. 选择“检查”,工具开始检查所选文件的模型一致性。

  3. 检查完成后,单击“检查结果”可查看详情,界面展示“错误提示”、“错误影响”和“修复建议”。

同步代码 ​

通过Git命令,将MDS配置提交到代码仓。

  1. 选择要同步代码的主文件夹,单击“操作”。

  2. 选择“同步代码”。

  3. 如果提示“代码同步成功”,表示同步代码操作成功。

    说明:
    如果弹出“代码同步失败”,提示“检测到待同步数据与工具本地数据存在冲突,请通过其它工具解决冲突。
    您也可以执行强制覆盖操作,此操作不可逆,存在数据丢失的风险”。建议先通过其他工具解决冲突,再执行代码同步。

删除MDS文件 ​

  1. 在MDS列表中,选择需要删除的文件,单击“操作”。

  2. 选择“删除”。

  3. 工具弹出确认删除的提示框,请根据情况选择。

配置接口映射 ​

使用Redfish/WebREST/SNMP/CLI的设计,引入数据映射器机制,框架解析数据映射配置,将接口请求转发到资源协作接口,拼装返回对应格式的数据。

映射配置定义了如下内容:

  • 接口请求与资源协作接口的对应关系。
  • 接口及属性的校验信息。
  • 属性执行映射的前置与后置处理等。

新增文件夹 ​

  1. 选择需要新增的接口类型:Redfish、WebREST、CLI或SNMP。

  2. 在文件列表中,选择需要新增文件的目标文件夹。

  3. 单击目标文件后的“操作”。例如:需要在Accounts文件夹下新增文件夹,请单击Accounts后的“操作”按钮。

  4. 输入文件夹名称,完成新建操作。名称仅支持数字、字母、下划线和中划线,且要求不能以数字开头。

新增接口映射 ​

  1. 选择需要新增的接口类型:Redfish、WebREST、CLI或SNMP。

  2. 在文件列表中,选择需要新增接口映射的目标文件夹。

  3. 单击目标文件后的“操作”。例如:需要在Accounts文件夹下新增接口映射,请单击Accounts后的“操作”按钮。

  4. 选择“新增接口映射”。

  5. 输入接口名称。名称仅支持数字、字母、下划线和中划线,且要求不能以数字开头。

  6. 单击“新增资源”,输入URI资源。

  7. 单击“确认”接口新增成功。

  8. 配置接口信息。

检查 ​

  1. 在接口文件或文件夹中,选择需要检查的文件,单击“操作”。

  2. 选择“检查”,工具开始检查所选文件的模型一致性。

  3. 检查完成后,单击“检查结果”可查看详情。界面展示“错误提示”、“错误影响”和“修复建议”。

删除接口文件 ​

支持撤销删除操作,具体操作方法请参考“常用操作”章节中的“撤销删除文件和撤销修改”。

  1. 在接口文件列表中,选择需要删除的文件,单击“操作”。

  2. 选择“删除”。

  3. 工具弹出确认删除的提示框,请根据情况选择。

开发任务 ​

板卡定制 ​

板卡定制,分为以下两种情况。

  • 板卡新增:定制新的板卡时,对新的器件进行定义,对新增板卡定制前,请先执行以下操作。
    1. 在原生开发定义资源协作接口和路径,操作方法请参考:操作模块 >资源协作接口配置。
    2. MDS里进行管理定义的资源协作接口。
    3. 打开对应的CSR开关。
  • 板卡适配:基于已有器件库,对硬件组件进行定制,包含对组件上器件类型、数量的编排等操作。

定义新器件操作流程(板卡新增) ​

  1. 在BMC Studio首页,单击“板卡定制”,进入定制板卡操作界面。

  2. 请按照如下流程新增器件,操作方法参见配置CSR模型章节。

    1. (可选)新增CSR模型文件夹。
    2. 新增CSR组件。
    3. 配置模型数据。
    4. 保存配置。
  3. 单击“保存”完成配置。

定制硬件组件(板卡适配) ​

板卡适配详细操作可参见BMC Studio板卡适配指南。

原生开发 ​

使用原生开发功能开发新的APP。

  1. 在BMC Studio首页,单击“原生开发”,进入原生开发操作界面。

  2. 为板卡定义资源协作接口信息。请按照如下流程配置,具体操作方法参见配置资源协作接口章节。

    1. (可选)新增资源协作接口文件夹。
    2. 新增资源协作接口。
    3. 新增资源协作接口路径。
    4. 保存配置。
  3. 在原生开发的导航条上,单击“MDS”。

  4. 为板卡配置MDS信息。具体操作方法参见配置MDS。

  5. 配置完成后,单击“保存”。

接口定制 ​

可使用BMC Studio定制北向接口,包含对Redfish、WebREST、CLI、SNMP接口映射配置的新增、修改和删除,具体操作方法,请参考配置接口映射。

编译构建 ​

BMC Studio的工作空间包含多个代码仓,这些代码仓可能被本地管理或被设置为Git工作空间。用户可通过页面配置Git仓地址,将代码同步到工作空间。工具也会自动扫描工作空间,识别出Git仓,并在仓库管理页面展示。

说明:
选择Manifest产品后,才可进行仓库初始化操作。仓库完成初始化操作后,才可获取代码。

  1. 参考以下内容选择出包信息。

    • 一键出包:基于该产品空间的本地代码一键出包。仅root用户支持一键出包。
    • Git仓库地址:工作空间中的Git代码仓。
    • 本地分支名称:默认取值为导入Manifest时选择的远端分支,可手动切换分支。
    • 同步远端最新配置:本地分支选择后,单击此按钮进行切换。说明:切换本地分支时将同步最新的远端代码。切换分支时,要求本地代码和Manifest的库上最新代码不能存在冲突,如果存在冲突,请手动解决冲突后再切换分支。
    • 产品名称:选择分支对应的产品名称,切换产品后需重新进行仓库部署。如果该产品已执行过一键仓库部署,则无须再重新进行仓库部署。
    • 一键仓库部署:根据Manifest中产品的配置信息,动态获取仓库配置并完成全量仓库代码的获取。
      • 如果有代码变动,会弹框提示是否覆盖代码,
      • 如果代码未变动,不会提示覆盖代码,但会做代码检查。
    • 获取全量代码:一键拉取全量仓库代码到对应的分支。 支持编辑个人远端地址和个人远端分支。
  2. 单击“一键出包”,选择对应产品。

  3. 在组件列表勾选需要出包的组件。

  4. 单击“下一步:出包”,出包会显示进度条,出包成功之前请勿执行其他操作。

说明:
一键仓库部署和获取全量代码只能拉取有权限的仓库,只要有一个组件仓库拉取成功,则表示操作成功,未能成功拉取的仓库可查看“仓库日志”确认原因。
如果出包失败,仓库管理右侧的“构建日志”列会展示出包失败的日志,可下载全量日志到本地进行分析。
如果出包成功,仓库管理右侧的“固件信息”列会展示出包信息,单击“下载”将固件包下载到本地。
固件包仅保留三天,失效后将无法下载。
“一键仓库部署”和“获取全量代码”的日志将展示在仓库日志中。

代码预览 ​

使用代码预览功能,可在工具界面预览各文件的代码,同时支持在预览界面直接修改并保存代码。

  1. 选择需要查看代码的文件。
  2. 单击页面右侧的“代码预览”按钮。
  3. 界面右侧展示对应文件的代码。

说明:
如需搜索代码内的关键字,请将鼠标选中代码框内的任意位置,使用Ctrl+F,输入关键字搜索。代码内存在多个相同的关键字时,可使用Ctrl+G跳转。 DDS文件不支持编辑保存。

模型检查 ​

BMC Studio支持模型的可视化配置,模型与模型之间存在配套关系,通过此功能可以检查出模型之间不一致的错误,并给出告警提示。

说明:
工具根据默认的检查规则,检查指定的模型。
如果错误级别未定义或取值不符合规范要求,无法勾选“CSR扩展规则检查样例”。

  1. 在工具首页单击右上角“模型检查”按钮。

  2. 进入“模型检查”界面。

  3. 选择想要检查的规则。

  4. 单击右上角“开始检查”按钮。

  5. 工具将根据已有的检查规则,检查各模型一致性。

  6. 检查结束后,可在“检查结果”页签查看检查详情。参数说明请参考如下:

    • 规则ID:检查规则的ID。
    • 所属模型:可筛选需要展示的报错模块。
    • 错误提示:具体错误原因。
    • 错误影响:错误的影响。
    • 修复建议:具体的修复建议。
    • 告警等级:可筛选展示的高级等级。“严重”,“一般”,“提示”。
    • 产生时间:最后一次检查结果的时间。
  7. 单击右上角“导出”可将检查结果导出至本地。

常用操作 ​

查看修改 ​

使用“查看修改”功能,可将修改前和修改后的数据进行比对,同时支持在预览界面直接修改并保存代码。

说明:
仅支持比对最近一次保存前后的数据。

  1. 选择操作模块。

  2. 单击左上角“查看修改”的按钮。

  3. 选择目标文件,比对修改前后的数据。

    • 如需搜索代码内的关键字,请将鼠标选中需要搜索的代码框内任意位置,使用Ctrl+F,输入关键字搜索。代码内存在多个相同的关键字时,可使用Ctrl+G跳转。
    • 勾选“统一缩进查看”,可统一缩进格式,便于查看。
    • 如需编辑数据,请单击右上角“编辑”按钮,编辑完成后,单击“保存”。

撤销删除文件和撤销修改 ​

CSR配置、资源协作接口、接口映射均支持撤销删除文件和撤销修改,MDS仅支持撤销修改。

注意:
撤销不会有弹框再次确认,单击”撤销“后,工具将直接执行撤销操作。
撤销修改后,代码将变为初始拉取的状态。

撤销修改和撤销删除的方法一致,以下以CSR中的文件已被删除,需要撤销删除的操作。

  1. 进入CSR操作模块。

  2. 在CSR列表上方单击蓝色字体“查看修改"。

  3. 选择需要撤销删除的文件,单击后方的“撤销”按钮。如果需要批量撤销,可勾选需要操作的文件,单击最上方的“撤销”按钮进行操作。

侧边栏 ​

BMC Studio 目前有侧边栏,可以实现 openubmc.cn 常用链接的跳转。 五个图标从上到下分别是:

卸载BMC Studio ​

在 linux 命令行中执行以下命令可卸载BMC Studio。

bash
dpkg -P bmc-studio