Upgrade management devices
Submit management devices for upgrade.
Request
Request body to consist of JSON object with field “deviceIds” - array of Manager device UUIDs to be queued for upgrade.
Security
| Any | Super User | System Admin | Security Admin | Operator |
|---|---|---|---|---|
| superUser | systemAdmin |
HTTP method
POST /manager/api/json/1.0/upgradeManagementDevices.adm HTTP/1.1 Host:{manager.dsnet}
Content-Type: application/json {"deviceIds": ["5d597d4c-6424-74a1-11ab-825f86979143"]}
Curl method
curl -u {admin}:{password} -k
https://{manager.dsnet}/manager/api/json/1.0/upgradeManagementDevices.adm --header "Content-Type:
application/json" -d ‘{"deviceIds": ["5d597d4c-6424-74a1-11ab-825f86979143"]}’
Parameters
None. JSON object containing field “deviceIds” to be sent in body of request.
Response
Response to consist of JSON object "system" containing system upgrade state, installed software upgrade repository version, upgrade repository signature verification status,, and array of management devices for which upgrade is required or in progress.
If a management device requires upgrade, "upgradeStatus" for that device will display as null.
While management device upgrade is in progress, "upgradeStatus" for that device will be displayed. Once device is successfully upgraded to the current upgrade repository version, it will no longer be displayed in response.
JSON response example
{
"responseStatus": "ok",
"responseHeader": {
"now": 1517517422962,
"status": "ok",
"requestId": "WnN6bqwTDyEAABys3dgAAABl"
},
"responseData": {
"system": {
"state": "managerUpgradeRequired",
"repoVersion": "3.13.1",
"repoSignatureVerified" : true,
"managementDevices": [
{
"uuid": "5d597d4c-6424-74a1-11ab-825f86979143",
"hostname": "vm-eqx20421l-mgr-02",
"deviceType": "manager",
"deviceHealth": "ok",
"version": "3.13.1",
"upgradeStatus": {
"state": "initiated",
"upgradeErrorCode": null,
"modificationTime": 1517518284256,
"markedForRemoval": false,
"halted": false,
"forceKilled": false,
"timeUntilEligibleForUpgrade": null
}
}
]
}
}
}
Parameters
| Parameter | Type | Description |
|---|---|---|
| system | object | Object containing system upgrade state, installed repository version, and array of management devices for which upgrade is required or in progress. |
| state | String | System upgrade state (e.g. “idle”, “deviceUpgradeAvailable”). |
| repoVersion | String | Version number of the installed software upgrade repository. |
| repoSignatureVerified | boolean | Indicates if the installed software upgrade repository had its signature verified. |
| managementDevices | array | Management devices requiring upgrade to installed software upgrade repository. Represented as array of objects. Each device object includes: |
| uuid | String | Device Universally Unique Identifier. |
| hostname | String | Device hostname. |
| deviceType | String | Device type. |
| deviceHealth | String | Device health. |
| version | String | Device’s current software version |
| upgradeStatus | object | Device’s upgrade status. Null value indicates device requires upgrade. |
| state | String | Device’s upgrade state (e.g. “pending”, “initiated”). |
| upgradeErrorCode | String | Code indicating reason for upgrade failure. |
| modificationTime | String | UNIX time when device upgrade was initiated. |
| markedForRemoval | boolean | Indicates device’s pending removal from upgrade queue. |
| halted | boolean | Indicates whether device upgrade has been temporarily halted. |
| forceKilled | boolean | Indicates whether device upgrade has been force-killed due to unrecoverable error. |
| timeUntilEligibleForUpgrade | Long | Milliseconds until device can safely be upgraded. |