【已评审】完善network_adapter组件部分接口属性在获取失败场景下的定义

背景

现状:当前network_adapter组件存在部分属性类型为bool,属性默认值只能为false或者true;

问题场景:如果实际不支持获取相关属性或获取失败时显示为默认值,但实际值可能与默认值不一致,导致信息显示不准确;

涉及属性:

接口 属性 属性说明
bmc.kepler.Systems.NetworkPort AutoConnectOnBoot 开机是否自动启用网络连接
bmc.kepler.Systems.NetworkPort.VLAN AutoConnectOnBoot 开机是否自动启用网络连接
bmc.kepler.Systems.OpticalModule RxLossState 光模块接收端信号是否丢失
bmc.kepler.Systems.OpticalModule TxLossState 光模块发送端信号是否丢失
bmc.kepler.Systems.OpticalModule TxFaultState 光模块发送端是否故障
bmc.kepler.Systems.OpticalModule TypeMatch 光模块类型是否匹配
bmc.kepler.Systems.OpticalModule SpeedMatch 光模块速率是否匹配

关联ISSUE

https://gitcode.com/openUBMC/network_adapter/issues/294

整体方案

1、新增属性:AutoConnectOnBootValidity、RxLossStateValidity、TxLossStateValidity、TxFaultStateValidity、TypeMatchValidity、SpeedMatchValidity表明对应的属性的值是否有效,类型为bool,true表示有效(当前值是通过带外或iBMA真实获取到的有效值),北向根据实际获取到值正常显示,false表示无效(当前未通过带外或iBMA成功获取到该属性),无效时北向显示为null;
2、redfish资源IsOnBoot新增null类型,未获取到AutoConnectOnBoot时该资源显示为null;

评审点

1、资源协作接口bmc.kepler.Systems.NetworkPort新增属性AutoConnectOnBootValidity;
2、资源协作接口bmc.kepler.Systems.NetworkPort.VLAN新增属性AutoConnectOnBootValidity;
3、资源协作接口bmc.kepler.Systems.OpticalModule新增属性RxLossStateValidity、TxLossStateValidity、TxFaultStateValidity、TypeMatchValidity、SpeedMatchValidity;
4、redfish资源IsOnBoot新增null类型,未获取到AutoConnectOnBoot时该资源显示为null;

详细描述

接口链接:

bmc.kepler.Systems.NetworkPort

变更属性:

变更类型 属性名称 签名 只读 变化通知 属性描述 访问权限 属性来源 持久化类型 变更影响
新增 AutoConnectOnBootValidity b 只读 变化通知 表示AutoConnectOnBoot的值是否有效 ,true:有效,false:无效 ReadOnly NA 不持久化 需要对应修改北向接口的逻辑,若无效则对应的值显示为null

接口链接:

bmc.kepler.Systems.NetworkPort.VLAN

变更属性:

变更类型 属性名称 签名 只读 变化通知 属性描述 访问权限 属性来源 持久化类型 变更影响
新增 AutoConnectOnBootValidity b 只读 变化通知 表示AutoConnectOnBoot的值是否有效,true:有效,false:无效 ReadOnly NA 不持久化 需要对应修改北向接口的逻辑,若无效则对应的值显示为null

接口链接:

bmc.kepler.Systems.OpticalModule

变更属性:

变更类型 属性名称 签名 只读 变化通知 属性描述 访问权限 属性来源 持久化类型 变更影响
新增 RxLossStateValidity b 只读 变化通知 表示RxLossState的值是否有效,true:有效,false:无效 ReadOnly NA 不持久化 需要对应修改北向接口的逻辑,若无效则对应的值显示为null
新增 TxLossStateValidity b 只读 变化通知 表示TxLossState的值是否有效,true:有效,false:无效 ReadOnly NA 不持久化 不涉及
新增 TxFaultStateValidity b 只读 变化通知 表示TxFaultState的值是否有效,true:有效,false:无效 ReadOnly NA 不持久化 需要对应修改北向接口的逻辑,若无效则对应的值显示为null
新增 TypeMatchValidity b 只读 变化通知 表示TypeMatch的值是否有效,true:有效,false:无效 ReadOnly NA 不持久化 不涉及
新增 SpeedMatchValidity b 只读 变化通知 表示SpeedMatch的值是否有效,true:有效,false:无效 ReadOnly NA 不持久化 不涉及

变更redfish资源schema文件

资源:IsOnBoot
描述:该属性用于指定系统启动时是否激活网络
涉及文件:
openubmcethernetinterface.v1_0_0.json
openubmcvlannetworkinterface.v1_0_0.json
变更点:属性新增null类型,未获取到AutoConnectOnBoot时该资源显示为null

是否准备好AI预审

评审结论

1、同意资源协作接口bmc.kepler.Systems.NetworkPort新增属性AutoConnectOnBootValidity,类型为bool,只读,变化通知,读权限为RedOnly,无持久化,属性true表示有效(当前值是通过带外或iBMA真实获取到的有效值),北向根据实际获取到值正常显示,false表示无效(当前未通过带外或iBMA成功获取到该属性),无效时北向显示为null;
2、同意资源协作接口bmc.kepler.Systems.NetworkPort.VALN新增属性AutoConnectOnBootValidity,类型为bool,只读,变化通知,读权限为RedOnly,无持久化,属性true表示有效(当前值是通过带外或iBMA真实获取到的有效值),北向根据实际获取到值正常显示,false表示无效(当前未通过带外或iBMA成功获取到该属性),无效时北向显示为null;
3、同意资源协作接口bmc.kepler.Systems.OpticalModule新增属性RxLossStateValidity、TxLossStateValidity、TxFaultStateValidity、TypeMatchValidity、SpeedMatchValidity,类型为bool,只读,变化通知,读权限为RedOnly,无持久化,属性分别表示RxLossState、TxLossState、TxFaultState、TypeMatch、SpeedMatch当前是否有效,true表示有效(当前值是通过带外或iBMA真实获取到的有效值),北向根据实际获取到值正常显示,false表示无效(当前未通过带外或iBMA成功获取到该属性),无效时北向显示为null;
4、同意redfish资源IsOnBoot新增null类型,未获取到AutoConnectOnBoot时该资源显示为null;

遗留问题