UpdateService in Redfish

Tanous, Ed ed.tanous at intel.com
Wed Aug 22 01:07:18 AEST 2018


Yes, it should work, although it’s relatively new, so it’s possible there are bugs or corner cases we haven’t hit yet.  If you find new issues, it would be great if you could file them against the bmcweb project.

To use the endpoint, it should just be a matter of sending a POST request to the update URL containing the tarred image with the manifest in the body.  It works very similarly to the existing update endpoints, it just meets the Redfish specifications.

One thing to watch out for is payload size.  Bmcweb imposes appropriate payload limits, but if you’re reverse proxying the server behind nginx, you might have nginx payload limits imposed and that’ll need to be updated.

-Ed

From: Henbin Chang [mailto:henbinchang at gmail.com]
Sent: Tuesday, August 21, 2018 1:02 AM
To: Tanous, Ed <ed.tanous at intel.com>; OpenBMC Maillist <openbmc at lists.ozlabs.org>
Subject: UpdateService in Redfish

Hi Ed,
I search the below commit in the bmcweb REPO.

commit acb7cfb4b571bd2045b1d269625ba054806a466d
Author: Jennifer Lee <jennifer1.lee at intel.com<mailto:jennifer1.lee at intel.com>>
Date:   Thu Jun 7 16:08:15 2018 -0700

    Implement POST for redfish UpdateService

    - POST an image file to /redfish/v1/UpdateServer uri will upload the
      image and activate it
    - Modified SoftwareInventoryCollection to list items with
      xyz.openbmc_project.Software.Activation/Activation property as
    "xyz.openbmc_project.Software.Activation.Activations.Active"
    - SoftwareInventory odata.id<http://odata.id> is identified with DBus generated uuid

May I know if BMC FW can be updated through UpdateService in Redfish?
If yes, could you share how to use it?

Besides that, I add some debug message in the redfish-core/lib/update_service.hpp but output nothing

Could you give some suggestion?
...
private:
  void doGet(crow::Response &res, const crow::Request &req,
             const std::vector<std::string> &params) override {
    std::cout << "Henbin=" << __FILE__<< ": "<<__LINE__ << "\n";
          BMCWEB_LOG_INFO << "Henbin=" << __FILE__<< ": "<<__LINE__ << "\n";
    res.jsonValue = Node::json;
    res.end();
  }
...

Thanks.

BRs,
Henbin.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ozlabs.org/pipermail/openbmc/attachments/20180821/8e806c55/attachment-0001.html>


More information about the openbmc mailing list