【已评审】固件管理支持PowerOn,PowerCycle生效形式

背景

当前,固件管理的统一生效接口(包括Redfish和WebRest)仅支持“复位生效”与“下电生效”两种方式。为支持某些需在“整机上电”时才能生效的固件,现有生效方式存在不足。这类固件要求在下电状态下注册,并在后续上电操作中直接生效,因此需要在redfish和webrest统一生效接口新增PowerOn(即整机上电)的生效控制方式。

当前存在固件(如bios),支持定制生效方式,客户在定制之后生效控制方式会定制为PowerCycle。当前固件管理支持PowerCycle生效的处理,但是统一生效接口没有PowerCycle的选项,因此需要在redfish和webrest统一生效接口新增PowerCycle(即整机下电再上电)的生效控制方式。

整体方案

在redfish和webrest统一生效接口新增PowerOn(即整机上电)和PowerCycle(即整机下电再上电)的生效控制方式。
当存在生效控制方式为PowerOn的固件时,选择PowerOn并触发统一生效接口,即可生效需要上电生效的待生效固件。
当存在生效控制方式为PowerCycle,选择PowerCycle并触发统一生效接口,即可生效需要下电再上电生效的待生效固件。

评审点一

webrest统一生效接口入参ActivationActions(生效控制方式)新增PowerOn、PowerCycle选项

uri/UI/Rest/BMCSettings/UpdateService/StartActive
变化类型 :入参新增取值PowerOn、PowerCycle
操作类型 : POST
应用场景 :统一生效页面一键触发生效
请求参数 :ActivationActions(取值ResetBMC、PowerOff、PowerOn、PowerCycle
操作权限 :有"PowerOff"、“PowerOn”、“PowerCycle"选项:BasicSetting与PowerMgmt;无"PowerOff”、“PowerOn”、"PowerCycle"选项:BasicSetting
示例:

URL: /UI/Rest/BMCSettings/UpdateService/StartActive
操作类型:POST
请求参数:
{ 
    //  ""ActivationActions"为可选参数,取值:"ResetBMC"、"PowerOff"、"PowerOn"、"PowerCycle"
     "ActivationActions": [
          "ResetBMC",
          "PowerOff",
          "PowerOn"
          "PowerCycle"
    ]
}

评审点二:redfish统一生效接口新增生效控制方法PowerOn、PowerCycle选项

uri/redfish/v1/UpdateService/Actions/Oem/Huawei/UpdateService.StartActivate
变化类型 :入参新增取值PowerOn、PowerCycle
操作类型 : POST
请求参数 :ActivationControl(取值ResetBMC、PowerOff、PowerOn、PowerCycle
操作权限 :有"PowerOff"、“PowerOn”、“PowerCycle"选项:BasicSetting与PowerMgmt;无"PowerOff”、“PowerOn”、"PowerCycle"选项:BasicSetting
示例:

URI: /redfish/v1/UpdateService/Actions/Oem/Huawei/UpdateService.StartActivate
操作类型:POST
接口功能:所有待生效固件开始生效
请求消息体:
{
    // 可选:"ResetBMC"、"PowerOff"、 "PowerOn"、"PowerCycle"
    "ActivationControl": [
         "ResetBMC" ,
         "PowerOff",
         "PowerOn"
         "PowerCycle"
    ]
}

评审点三

在对应的Web前端界面新增整机上电,整机下电再上电控制按钮

属性名称 选项类型 说明
整机上电 按钮点选 整机上电生效,该生效方式在下电场景使用,选择之后会整机上电
整机下电再上电 按钮点选 整机下电再上电生效

评审结论

通过,具体结论如下:

  • 评审点1:同意 UIRest 接口 /UI/Rest/BMCSettings/UpdateService/StartActive 请求参数 ActivationActions 增加参数选项 PowerOnPowerCycle,分别用于 上电生效下电再上电生效 两种固件生效控制类型;
  • 评审点2:同意 Redfish 接口 /redfish/v1/UpdateService/Actions/Oem/Huawei/UpdateService.StartActivate 请求参数 ActivationControl 增加参数选项 PowerOnPowerCycle,用于 上电生效下电再上电生效 两种固件生效控制类型;
  • 评审点3:同意 WEB 固件升级-固件更新 页面 生效控制复选框中新增两种生效控制类型:整机上电 和 整机下电再上电,分别用于 上电生效下电再上电生效 两种固件生效控制类型

【预审】

  1. 背景中为什么要新增北向接口的理由没说清楚,当前描述仅仅是功能描述
    思考:为什么要在WEB上增加上电生效?当前生效控制类型已经可以多选,上电本来就是服务器基本操作,在升级阶段上电的意义在哪儿
  2. WEB上的布局是 生效控制类型 还是 生效操作类型?属性名称怎么又是 整机下电,究竟是上电还是下电?
  3. 该评审议题相关应该还有 UIRest 接口以及在线联机帮助,一起补充完整