【已评审】新增资源协作接口和webrest接口以支持dump BIOS FLASH

ISSUE链接(必填,此议题关联的issue):

支持dump BIOS FLASH

背景(必填,文字描述议题背景,如需求来源、问题场景):

在BIOS异常时,为了便于定位BIOS的问题,需要将整片BIOS FLASH的内容都dump出来做分析,支持WEB和redfish下载BIOS FLASH内容,显示下载进度

决策点(必填,一句话描述待决策点)

1、新增资源协作接口实现dump BIOS FLASH

2、新增WebRest接口以支持dump BIOS FLASH

详细描述(必填,描述待评审接口的详细内容):

1、新增资源协作接口

方法 备注说明
资源path /bmc/kepler/Systems/:SystemId/Bios 已有path
资源interface bmc.kepler.Systems.Bios 已有interface
方法名称 ExportFirmware 新增
方法权限 BasicSetting 新增
说明 导出对应系统的BIOS FLASH内容
请求签名 s
请求参数说明 OutputFilePath:签名s,表示导出路径,支持本地导出、远程导出
本地导出路径格式:“/tmp/文件路径”
远程导出路径格式:“文件传输协议://用户名:密码@ip地址/目录/文件名” ,其中文件传输协议包括五种:sftp、https、nfs、cifs、scp
响应签名 u
响应参数说明 TaskId:U32类型,导出任务的Id

2、新增POST接口

取值
URI /UI/Rest/System/Bios/ExportFirmware
接口类型 POST
变化类型 新增接口
接口说明 导出bios固件
请求消息体 {
SystemId”: SystemId
}
响应消息体 {
TaskUrl”: TaskUrl
}

请求参数说明

参数 说明 类型 可选/必选
SystemId 导出BIOS固件所属的系统Id,如果不指定表示导出所有系统 integer 可选

响应参数说明

参数 说明 类型
TaskUrl 导出任务的Url String

评审结论

1、同意资源协作接口bmc.kepler.Systems.Bios新增如下方法:

  • ExportFirmware,用于导出BIOS固件数据,请求签名为s,参数OutputFilePath表示导出路径,支持本地导出、远程导出,响应签名为u,参数TaskId表示异步任务Id, 权限为BasicSetting

2、同意新增webrest接口
URI: /UI/Rest/System/Bios/ExportFirmware
接口类型:POST
请求参数:

  • SystemId,表示待导出的BIOS固件所属的系统Id,类型为integer,可选参数,默认导出所有系统的BIOS固件

响应参数:

  • TaskUrl,表示异步导出任务的Url,类型为string

遗留问题

1、需要确认导出的内容是否存在敏感信息
结论:BMC会对敏感信息部分内容进行擦除,确保最终导出的文件不存在敏感信息