背景
访问Storage/Volumes或Storages/Volumes创建逻辑盘,没传请求体,请求也成功了,创建了任务。会导致创建的逻辑盘缺少必要的Drives和RaidLevel等属性,结果不可预测
关联ISSUE
整体方案
- redfish资源Storage/Volumes的POST请求体中,Oem属性和其下级属性OemIdentifier增加Required限定
- redfish资源Storages/Volumes的POST请求体中,Oem属性和其下级属性OemIdentifier增加Required限定
评审点
- redfish资源Storage/Volumes的POST请求体中,Oem属性和其下级属性OemIdentifier增加Required限定(POST接口)
- redfish资源Storages/Volumes的POST请求体中,Oem属性何其下级属性OemIdentifier增加Required限定(POST接口)
详细描述
评审点1:redfish资源Storage/Volumes的POST请求体中,Oem属性和其下级属性OemIdentifier增加Required限定(POST接口)
资源Uri:/redfish/v1/Systems/:systemid/Storage/:storageid/Volumes
资源版本:openubmcvolume.v1_0_0.json
属性评审点:
POST请求体参数Oem
| 属性名 | 类型 | 示例/取值约束 | readonly | 易变属性 | 实现 PATCH | 操作权限 | 描述 |
|---|---|---|---|---|---|---|---|
| Oem | object | 非null . eg: {OemIdentifier: {“Drives”: {…}, “VolumeRaidLevel”: {…}}…} | / | / | / | / | 创建逻辑盘需要的Oem属性 |
| OemIdentifier | object | 非null. eg: “Huawei”: {{“Drives”: {…}…} | / | / | / | / | 厂商ID |
输入空,访问POST响应示例
{
"code": "Baase.1.0 GeneralError",
"message": "A general error has occured. See ExtendedInfo for more information",
"Message.ExtendedInfo": [
{
...
"Message": "The create operation failed because the required property Oem was missing from the request"
}
]
}
评审点2:redfish资源Storages/Volumes的POST请求体中,Oem属性何其下级属性OemIdentifier增加Required限定(POST接口)
资源Uri:/redfish/v1/Systems/:systemid/Storages/:storageid/Volumes
资源版本:openubmcvolume.v1_0_0.json
属性评审点:
POST请求体参数Oem
| 属性名 | 类型 | 示例/取值约束 | readonly | 易变属性 | 实现 PATCH | 操作权限 | 描述 |
|---|---|---|---|---|---|---|---|
| Oem | object | 非null . eg: {OemIdentifier: {“Drives”: {…}, “VolumeRaidLevel”: {…}}…} | / | / | / | / | 创建逻辑盘需要的Oem属性 |
| OemIdentifier | object | 非null. eg: “Huawei”: {{“Drives”: {…}…} | / | / | / | / | 厂商ID |
输入空,访问POST响应示例
{
"code": "Baase.1.0 GeneralError",
"message": "A general error has occured. See ExtendedInfo for more information",
"Message.ExtendedInfo": [
{
...
"Message": "The create operation failed because the required property Oem was missing from the request"
}
]
}
是否准备好AI预审
是
评审结论
问题闭环后通过
-
同意redfish资源Storage/Volumes的POST请求体中,Oem属性和其下级属性OemIdentifier增加Required限定(POST接口)
资源Uri:/redfish/v1/Systems/:systemid/Storage/:storageid/Volumes
资源版本:openubmcvolume.v1_0_0.json
限定属性:POST请求体参数Oem -
同意redfish资源Storages/Volumes的POST请求体中,Oem属性何其下级属性OemIdentifier增加Required限定(POST接口)
资源Uri:/redfish/v1/Systems/:systemid/Storages/:storageid/Volumes
资源版本:openubmcvolume.v1_0_0.json
限定属性:POST请求体参数Oem
遗留问题
- 修改配套schema,和映射器