Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add update service support #63

Closed
wants to merge 5 commits into from

Conversation

geissonator
Copy link

Basic support to view and update software/firmware inventory items using Redfish UpdateService schema.

Resolves #62

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Testing:
Default get command on Redfish enabled OpenBMC:
{
    "@odata.context": "/redfish/v1/$metadata#UpdateService.UpdateService",
    "@odata.id": "/redfish/v1/UpdateService",
    "@odata.type": "#UpdateService.v1_2_0.UpdateService",
    "Description": "Service for Software Update",
    "FirmwareInventory": {
        "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory"
    },
    "HttpPushUri": "/redfish/v1/UpdateService",
    "Id": "UpdateService",
    "Name": "Update Service",
    "ServiceEnabled": true
}

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Tested:
Output from Redfish enabled OpenBMC system
{
    "@odata.context": "/redfish/v1/$metadata#SoftwareInventoryCollection.SoftwareInventoryCollection",
    "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory",
    "@odata.type": "#SoftwareInventoryCollection.SoftwareInventoryCollection",
    "Members": [
        {
            "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/16acf692"
        },
        {
            "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/52d25a1b"
        },
        {
            "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/ace821ef"
        }
    ],
    "Members@odata.count": 3,
    "Name": "Software Inventory Collection"
}
Tested:
Output from Redfish enabled OpenBMC system
{
    "@odata.context": "/redfish/v1/$metadata#SoftwareInventory.SoftwareInventory",
    "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/16acf692",
    "@odata.type": "#SoftwareInventory.v1_1_0.SoftwareInventory",
    "Description": "BMC update",
    "Id": "16acf692",
    "Members@odata.count": 1,
    "Name": "Software Inventory",
    "RelatedItem": [
        {
            "@odata.id": "/redfish/v1/Managers/bmc"
        }
    ],
    "Status": {
        "Health": "OK",
        "HealthRollup": "OK",
        "State": "Enabled"
    },
    "Updateable": false,
    "Version": "2.7.0-dev-383-gdf3fc40"
}
Tested:
Output from Redfish enabled OpenBMC system:
{
    "@Message.ExtendedInfo": [
        {
            "@odata.type": "/redfish/v1/$metadata#Message.v1_0_0.Message",
            "Message": "Successfully Completed Request",
            "MessageArgs": [],
            "MessageId": "Base.1.4.0.Success",
            "Resolution": "None",
            "Severity": "OK"
        }
    ]
}

Verified on back end that image was properly loaded into the flash chip.
@mraineri
Copy link
Contributor

@geissonator sorry this took so long, but would it be possible to consider migrating this functionality to use the MultipartHttpPushUri methodology instead? The forum has interop concerns with the HttpPushUri method, and would like to encourage folks to migrate if possible.

@geissonator
Copy link
Author

Hey @mraineri , sure, we've got a story to track this. I'll just close this PR for now and we'll see when we can get to ibm-openbmc/dev#500. Although some of the basic commits in this series (basic command line support, firmware inv, ..) could still be relevant as -is.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

UpdateService support in Redfishtool
2 participants