[EXTERNAL] Re: FW: Newbie question on Redfish URI resource names

Jeff Friedman jeff.friedman at ztsystems.com
Thu Jun 9 06:40:13 AEST 2022


This answers my question, thank you. I will check out the #bmcweb-and-redfish channel as well.

Thanks again!

Jeff Friedman


This email and any files transmitted with it are privileged/confidential and intended solely for the use of the individual to whom they are addressed. If you have received this email in error, you are not authorized to distribute it in whole or in part. This communication does not constitute a contract offer, amendment, or acceptance of a contract offer, unless explicitly stated. 

-----Original Message-----
From: Ed Tanous <edtanous at google.com> 
Sent: Wednesday, June 8, 2022 12:18 PM
To: Jeff Friedman <jeff.friedman at ztsystems.com>
Cc: openbmc at lists.ozlabs.org
Subject: [EXTERNAL] Re: FW: Newbie question on Redfish URI resource names

On Wed, Jun 8, 2022 at 11:10 AM Jeff Friedman <jeff.friedman at ztsystems.com> wrote:
>
> Hello all,
>
>
>
> New to OpenBMC, and am not clear on one thing as pertaining to the Redfish schema and URI resource names:
>
>
>
> The DMTF Redfish schema URIs are defined as:
>
>
>
> /redfish/v1/Chassis/{ChassisId}/
>
> /redfish/v1/Managers/{ManagerId}
>
> /redfish/v1/Systems/{ComputerSystemId}
>
>
>
> Vendors can use their own names for {ChassisId}, {ManagerId}, and {ComputerSystemId} as long as they conform to the syntax rules.
>
>
>
> Question: Does OpenBMC specify names for these resources as part of the OpenBMC spec? Or does OpenBMC just refer to the existing DMTF Redfish schemas?

OpenBMC does not specify nor guarantee these names, which is in line with the Redfish specification.  The spec essentially states that odata.id is for walking the Redfish tree, and nothing else.  If you want to get a single object, you need to rely on $filter (either locally or on the client side).

>
>
>
> I ask because I have seen reference to the following names in examples for Managers and Systems on the OpenBMC website:
>
>
>
> /redfish/v1/Chassis/{ChassisId}/
>
> /redfish/v1/Managers/bmc/
>
> /redfish/v1/Systems/system/

The hardcoded ids of "bmc" and "system" are things we're actively trying to fix, because we need to support systems with more than one management controller, and more than one ComputerSystem resource.
Most of the discussion has happened in code reviews (on gerrit) and in discord in the #bmcweb-and-redfish channel.  You might check those out for more up to the minute information on what the plan is here, but the TL; DR is that those IDs need to change, as the redfish spec allows us to do.

>
>
>
> In summary, does OpenBMC specify these resource names as part of their spec, or does it refer to existing DMTF Redfish schema specs?

Kinda the later, the the Redfish specs say that this is an opaque field, and the client should not be using it for resource identification if you want to be compatible with more than just one system, which ideally every client should at least try to do (please don't hardcode openbmc-specific assumptions in your redfish client).

-Ed

>
>
>
> Thank you!
>
>
>
> Jeff Friedman
> Sr. Field Systems Engineer | ZT Systems
>
> M: 206.819.2824
>
>
>
> This email and any files transmitted with it are privileged/confidential and intended solely for the use of the individual to whom they are addressed. If you have received this email in error, you are not authorized to distribute it in whole or in part. This communication does not constitute a contract offer, amendment, or acceptance of a contract offer, unless explicitly stated.
>
>



More information about the openbmc mailing list