Skip to main content

PATCH– Update update service status

Use the PATCH method to update the updateservice resource properties and status.

Request URL

PATCH https://<BMC_IPADDR>/redfish/v1/UpdateService

Request body

FieldTypeDescription

HttpPushUriTargets

Array

Items: string

Item count: 0-1

 

HttpPushUriTargets[N]

StringAn array of URIs that indicate where to apply the update image. It is initially blank, and the value updated by client is not kept after XCC2 reset.

HttpPushUriTargetsBusy

BooleanAn indication of whether any client has reserved the HttpPushUriTargets property. The value is initially false, and is not kept after XCC2 reset.

VerifyRemoteServerCertificate

BooleanIf the property is set to true, the service will verify the certificate of the HTTPS server referenced by the ImageURI property in SimpleUpdate prior to sending the transfer request.

HttpPushUriOptions

ObjectExpanded
 

HttpPushUriApplyTime

ObjectExpanded
  

ApplyTime

String

The property needs to be set prior to performing a firmware update via Http Push Update. If it is “Immediate”, the firmware update flow will start immediately after image is uploaded. If it is “Oneset”, the flow will be in pending after image is uploaded and will resume when the Host is booting on or rebooting.

The setting survives across XCC2 power cycles.

Response

The response returns same content as GET operation with updated properties.

Status code

HTTP Status CodeError Message ID
500InternalError

Example

The following example is PATCH body

{
"HttpPushUriTargets" : [
"/redfish/v1/UpdateService/FirmwareInventory/BMC-Backup"
]
}

After the PATCH operation runs successfully, querying the update service resource returns below example JSON response:

{
"RemoteServerCertificates": {
"@odata.id": "/redfish/v1/UpdateService/RemoteServerCertificates"
},
"HttpPushUriTargets": [
"/redfish/v1/UpdateService/FirmwareInventory/BMC-Backup"
],
"FirmwareInventory": {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory"
},
"ServiceEnabled": true,
"MultipartHttpPushUri@Redfish.OperationApplyTimeSupport": {
"@odata.type": "#Settings.v1_3_4.OperationApplyTimeSupport",
"SupportedValues": [
"Immediate",
"OnReset",
"OnStartUpdateRequest"
]
},
"@odata.type": "#UpdateService.v1_11_0.UpdateService",
"@odata.id": "/redfish/v1/UpdateService",
"Actions": {
"#UpdateService.SimpleUpdate": {
"target": "/redfish/v1/UpdateService/Actions/UpdateService.SimpleUpdate",
"title": "SimpleUpdate",
"Targets@Redfish.AllowableValues": [
"/redfish/v1/UpdateService/FirmwareInventory/BMC-Backup"
],
"TransferProtocol@Redfish.AllowableValues": [
"TFTP",
"SFTP",
"HTTPS",
"HTTP"
],
"@Redfish.ActionInfo": "/redfish/v1/UpdateService/SimpleUpdateActionInfo",
"@Redfish.OperationApplyTimeSupport": {
"@odata.type": "#Settings.v1_3_4.OperationApplyTimeSupport",
"SupportedValues": [
"Immediate",
"OnReset",
"OnStartUpdateRequest"
]
}
},
"Oem": {
"#LenovoUpdateService.BundleRollback": {
"target": "/redfish/v1/UpdateService/Actions/Oem/LenovoUpdateService.BundleRollback",
"title": "BundleRollback"
},
"#LenovoUpdateService.UpdateFromRepository": {
"target": "/redfish/v1/UpdateService/Actions/Oem/LenovoUpdateService.UpdateFromRepository",
"title": "UpdateFromRepository"
},
"#LenovoUpdateService.GetRepoUpdateDetail": {
"target": "/redfish/v1/UpdateService/Actions/Oem/LenovoUpdateService.GetRepoUpdateDetail",
"title": "GetRepoUpdateDetail"
}
},
"#UpdateService.StartUpdate": {
"target": "/redfish/v1/UpdateService/Actions/UpdateService.StartUpdate",
"title": "StartUpdate",
"@Redfish.ActionInfo": "/redfish/v1/UpdateService/StartUpdateActionInfo"
}
},
"MaxImageSizeBytes": 250000000,
"HttpPushUriOptions": {
"HttpPushUriApplyTime": {
"ApplyTime": "Immediate",
"ApplyTime@Redfish.AllowableValues": [
"Immediate",
"OnReset"
]
}
},
"@odata.etag": "\"12fc6cd9e7d7735944e43b\"",
"HttpPushUri": "/fwupdate",
"MultipartHttpPushUri": "/mfwupdate",
"Description": "Lenovo firmware update service.",
"HttpPushUriTargetsBusy": false,
"Name": "Update Service",
"Oem": {
"Lenovo": {
"BundleRepoAvailableSpaceInKB": 2004634,
"FirmwareServices": {
"@odata.id": "/redfish/v1/UpdateService/Oem/Lenovo/FirmwareServices"
},
"@odata.type": "#LenovoUpdateService.v1_0_0.LenovoUpdateService"
}
},
"VerifyRemoteServerCertificate": false,
"@odata.context": "/redfish/v1/$metadata#UpdateService.UpdateService",
"Status": {
"HealthRollup": "OK",
"State": "Enabled",
"Health": "OK"
},
"Id": "UpdateService"
}