背景
硬件发生故障需要更换备件时,需要人工从官网下载配套的固件,且固件可能有多个,固件升级易出错且效率低,如果有特殊配置,还需要手动进行配置备份和恢复,效率低。
运维人员希望能够在备件更换时,固件自动升级,配置自动恢复,无需人工操作。因此需要固件管理提供本地固件仓,在备件更换时能自动升级的机制
关联ISSUE
暂无
整体方案
1.新增查询本地固件仓的固件信息的资源协作接口
2.新增展示本地固件仓容量的资源协作接口
3.新增本地固件仓固件信息的资源协作接口
4.新增删除本地固件仓固件的资源协作接口
5.新增生效本地固件仓固件的资源协作接口
评审点一 新增查询本地固件仓固件的资源协作接口
详细描述
资源协作path: /bmc/kepler/UpdateService(原有)
资源协作interface: bmc.kepler.UpdateService (原有)
变化类型:新增方法
方法名称:GetLocalImages
| 方法名称 | 权限 | 请求签名 | 请求参数 | 响应签名 | 响应参数 | 说明 |
|---|---|---|---|---|---|---|
| GetLocalImages | ReadOnly | NA | NA | a(sa{ss}) | array<object> 类型,本地固件仓的所有固件信息。其中具体的参数说明如下:FirmwareId:string 类型,固件标识 FirmwareInfo dictionary 类型,固件信息。 |
查询本地固件仓的所有固件信息 |
评审点二 新增本地固件仓容量的资源协作接口
详细描述
资源协作path: /bmc/kepler/UpdateService(原有)
资源协作interface: bmc.kepler.UpdateService (原有)
变化类型:新增属性
| 属性名称 | 签名 | 说明 | 取值范围 | 默认值 | 属性读写 | 属性权限 | 属性值来源 | 持久化 | 属性广播 |
|---|---|---|---|---|---|---|---|---|---|
| LocalImageStoreTotalCapacityBytes | u | 本地固件仓存储的总字节数 | - | - | 只读 | ReadOnly | CSR配置 | 否 | false |
| LocalImageStoreAvailableCapacityBytes | u | 本地固件仓存储的可用的字节数 | - | - | 只读 | ReadOnly | 总字节数-已使用字节数 | 否 | false |
评审点三 新增存放本地固件仓固件信息的资源协作接口
详细描述
资源协作path:/bmc/kepler/UpdateService/FirmwareInventory/:Id/LocalImage(新增)
资源协作interface: bmc.kepler.UpdateService.LocalImage(新增)
变化类型:新增属性
| 属性名称 | 签名 | 说明 | 取值范围 | 默认值 | 属性读写 | 属性权限 | 属性值来源 | 持久化 | 属性广播 |
|---|---|---|---|---|---|---|---|---|---|
| Id | s | 固件ID | - | - | 只读 | ReadOnly | 主键 | 掉电持久化 | false |
| PackageName | s | 固件包名 | - | - | 只读 | ReadOnly | 掉电持久化 | false | |
| FirmwareType | s | 固件类型 | - | 只读 | ReadOnly | 解析出来的固件类型 | 掉电持久化 | false | |
| Version | s | 本地固件仓中固件的版本 | - | 只读 | ReadOnly | 固件包内版本 | 掉电持久化 | false | |
| PackageSize | s | 本地固件仓中固件包的大小,单位KB | - | 只读 | ReadOnly | 固件包内版本 | 掉电持久化 | false |
评审点四 新增删除本地固件仓固件的资源协作接口
详细描述
资源协作path:/bmc/kepler/UpdateService/FirmwareInventory/:Id/LocalImage(新增)
资源协作interface: bmc.kepler.UpdateService.LocalImage(新增)
变化类型:新增方法
方法名称:DeleteLocalImage
| 方法名称 | 权限 | 请求签名 | 请求参数 | 响应签名 | 响应参数 | 说明 |
|---|---|---|---|---|---|---|
| DeleteLocalImage | BasicSetting | NA | NA | u | TaskId 数据类型:U32,任务ID | 删除本地固件仓固件 |
评审点五 新增生效本地固件仓固件的资源协作接口
详细描述
资源协作path:/bmc/kepler/UpdateService/FirmwareInventory/:Id/LocalImage(新增)
资源协作interface: bmc.kepler.UpdateService.LocalImage(新增)
变化类型:新增方法
方法名称:ActiveLocalImage
| 方法名称 | 权限 | 请求签名 | 请求参数 | 响应签名 | 响应参数 | 说明 |
|---|---|---|---|---|---|---|
| ActiveLocalImage | BasicSetting | NA | NA | u | TaskId 数据类型:U32,任务ID | 删除本地固件仓固件 |