* Move Inventory.Item.Board from Redfish Chassis to Redfish Assembly @ 2021-04-28 16:17 Gunnar Mills 2021-04-28 16:46 ` Ed Tanous 0 siblings, 1 reply; 5+ messages in thread From: Gunnar Mills @ 2021-04-28 16:17 UTC (permalink / raw) To: openbmc; +Cc: jason.m.bills, Ed Tanous, Derick From some discussion on Discord a few weeks ago. A newer way of thinking in Redfish is for a simple rack server to just have one Redfish Chassis and things like boards modeled as Redfish Assemblies under the Chassis.[1][2] Today we look for inventory item chassis and inventory item board[3] to populate the Chassis collection.[4] I propose we move the "Inventory.Item.Board" from Redfish Chassis to Redfish Assembly. Does this break anyone? Does anyone have an inventory item board that can't be a Redfish Assembly? Another option would be to only move certain inventory item boards to Redfish Assembly, determined by a BoardType or additional more detailed Inventory Item interfaces around boards. Unless this is needed though would prefer the former for simplicity. https://gerrit.openbmc-project.xyz/c/openbmc/bmcweb/+/39574 is adding the Assembly schema. This would be a later commit moving "Inventory.Item.Board". [1]https://redfish.dmtf.org/redfish/mockups/v1/1018 [2]https://redfishforum.com/thread/325/fru-properties-redfish [3]https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/xyz/openbmc_project/Inventory/Item/Board.interface.yaml [4]https://github.com/openbmc/bmcweb/blob/8d1b46d7f8d39db2ba048f9e9007106ca3a28c9b/redfish-core/lib/chassis.hpp#L189 https://redfish.dmtf.org/schemas/v1/Chassis.v1_15_0.json https://redfish.dmtf.org/schemas/v1/Assembly.v1_3_0.json Thanks, Gunnar ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Move Inventory.Item.Board from Redfish Chassis to Redfish Assembly 2021-04-28 16:17 Move Inventory.Item.Board from Redfish Chassis to Redfish Assembly Gunnar Mills @ 2021-04-28 16:46 ` Ed Tanous 2021-04-28 19:38 ` Gunnar Mills 0 siblings, 1 reply; 5+ messages in thread From: Ed Tanous @ 2021-04-28 16:46 UTC (permalink / raw) To: Gunnar Mills; +Cc: openbmc, Ed Tanous, Derick, Bills, Jason M On Wed, Apr 28, 2021 at 9:18 AM Gunnar Mills <gmills@linux.vnet.ibm.com> wrote: > > From some discussion on Discord a few weeks ago. A newer way of > thinking in Redfish is for a simple rack server to just have one Redfish > Chassis and things like boards modeled as Redfish Assemblies under the > Chassis.[1][2] Today we look for inventory item chassis and inventory > item board[3] to populate the Chassis collection.[4] I propose we move > the "Inventory.Item.Board" from Redfish Chassis to Redfish Assembly. > Does this break anyone? This will definitely break people, given that sensors can be attached to boards today, and (unless I'm mistaken) Assemblies don't have their own sensors. Is there a solution to the sensor issue baked into this proposal? > Does anyone have an inventory item board that > can't be a Redfish Assembly? > > Another option would be to only move certain inventory item boards to > Redfish Assembly, determined by a BoardType or additional more detailed > Inventory Item interfaces around boards. Unless this is needed though > would prefer the former for simplicity. I wouldn't be for this option for the same reasons you do. > > https://gerrit.openbmc-project.xyz/c/openbmc/bmcweb/+/39574 is adding > the Assembly schema. This would be a later commit moving > "Inventory.Item.Board". > > [1]https://redfish.dmtf.org/redfish/mockups/v1/1018 > [2]https://redfishforum.com/thread/325/fru-properties-redfish > > [3]https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/xyz/openbmc_project/Inventory/Item/Board.interface.yaml > > [4]https://github.com/openbmc/bmcweb/blob/8d1b46d7f8d39db2ba048f9e9007106ca3a28c9b/redfish-core/lib/chassis.hpp#L189 > > https://redfish.dmtf.org/schemas/v1/Chassis.v1_15_0.json > https://redfish.dmtf.org/schemas/v1/Assembly.v1_3_0.json > > Thanks, > Gunnar ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Move Inventory.Item.Board from Redfish Chassis to Redfish Assembly 2021-04-28 16:46 ` Ed Tanous @ 2021-04-28 19:38 ` Gunnar Mills 2021-04-28 19:44 ` Ed Tanous 0 siblings, 1 reply; 5+ messages in thread From: Gunnar Mills @ 2021-04-28 19:38 UTC (permalink / raw) To: Ed Tanous; +Cc: openbmc, Ed Tanous, Derick, Bills, Jason M On 4/28/2021 10:46 AM, Ed Tanous wrote: > On Wed, Apr 28, 2021 at 9:18 AM Gunnar Mills <gmills@linux.vnet.ibm.com> wrote: >> >> From some discussion on Discord a few weeks ago. A newer way of >> thinking in Redfish is for a simple rack server to just have one Redfish >> Chassis and things like boards modeled as Redfish Assemblies under the >> Chassis.[1][2] Today we look for inventory item chassis and inventory >> item board[3] to populate the Chassis collection.[4] I propose we move >> the "Inventory.Item.Board" from Redfish Chassis to Redfish Assembly. >> Does this break anyone? > > This will definitely break people, given that sensors can be attached > to boards today, and (unless I'm mistaken) Assemblies don't have their > own sensors. Is there a solution to the sensor issue baked into this > proposal? Looking at the documentation on the sensor associations[1], the bmcweb code, and association code[2] (e.g. [3]) sensors all look to be associated with an inventory item chassis today for Redfish Chassis <-> sensors. If there are sensors associated to boards with the "chassis" association ("all_sensors" is the reverse association), they would need to be moved to an inventory item chassis. I don't see any though unless I missed something. [1]https://github.com/openbmc/docs/blob/919a7b6816a5f16aa72d298e81e0756d95d5031e/architecture/sensor-architecture.md#association-type-1-linking-a-chassis-to-all-sensors-within-the-chassis [2]https://github.com/search?q=org%3Aopenbmc+all_sensors&type=code [3]https://github.com/openbmc/openbmc/blob/c3d88e4d9fcc08e1aae7cc9d0337c0261e996c64/meta-quanta/meta-gbs/recipes-phosphor/inventory/phosphor-inventory-manager/associations.json#L389 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Move Inventory.Item.Board from Redfish Chassis to Redfish Assembly 2021-04-28 19:38 ` Gunnar Mills @ 2021-04-28 19:44 ` Ed Tanous 2021-04-28 22:56 ` Gunnar Mills 0 siblings, 1 reply; 5+ messages in thread From: Ed Tanous @ 2021-04-28 19:44 UTC (permalink / raw) To: Gunnar Mills; +Cc: openbmc, Ed Tanous, Derick, Bills, Jason M On Wed, Apr 28, 2021 at 12:38 PM Gunnar Mills <gmills@linux.vnet.ibm.com> wrote: > > On 4/28/2021 10:46 AM, Ed Tanous wrote: > > On Wed, Apr 28, 2021 at 9:18 AM Gunnar Mills <gmills@linux.vnet.ibm.com> wrote: > >> > >> From some discussion on Discord a few weeks ago. A newer way of > >> thinking in Redfish is for a simple rack server to just have one Redfish > >> Chassis and things like boards modeled as Redfish Assemblies under the > >> Chassis.[1][2] Today we look for inventory item chassis and inventory > >> item board[3] to populate the Chassis collection.[4] I propose we move > >> the "Inventory.Item.Board" from Redfish Chassis to Redfish Assembly. > >> Does this break anyone? > > > > This will definitely break people, given that sensors can be attached > > to boards today, and (unless I'm mistaken) Assemblies don't have their > > own sensors. Is there a solution to the sensor issue baked into this > > proposal? > > Looking at the documentation on the sensor associations[1], > the bmcweb code, and association code[2] (e.g. [3]) sensors all look to > be associated with an inventory item chassis today for Redfish Chassis > <-> sensors. If there are sensors associated to boards with the > "chassis" association ("all_sensors" is the reverse association), they > would need to be moved to an inventory item chassis. I don't see any > though unless I missed something. Here's an example of something that's type Board that creates sensors. https://github.com/openbmc/entity-manager/blob/master/configurations/A2UL16RISER.json There are several more like this. The problem here is that they are in fact... a board. They are not a chassis under how we currently define the item interface, and moving them to be a Chassis would cause them to report as ChassisType = Rackmount in the Redfish Chassis schema, which is definitely incorrect. I don't mean to throw up roadblocks, and I definitely don't know what the solution is here, but we'll need to solve it before something like this can go through. > > [1]https://github.com/openbmc/docs/blob/919a7b6816a5f16aa72d298e81e0756d95d5031e/architecture/sensor-architecture.md#association-type-1-linking-a-chassis-to-all-sensors-within-the-chassis > > [2]https://github.com/search?q=org%3Aopenbmc+all_sensors&type=code > > [3]https://github.com/openbmc/openbmc/blob/c3d88e4d9fcc08e1aae7cc9d0337c0261e996c64/meta-quanta/meta-gbs/recipes-phosphor/inventory/phosphor-inventory-manager/associations.json#L389 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Move Inventory.Item.Board from Redfish Chassis to Redfish Assembly 2021-04-28 19:44 ` Ed Tanous @ 2021-04-28 22:56 ` Gunnar Mills 0 siblings, 0 replies; 5+ messages in thread From: Gunnar Mills @ 2021-04-28 22:56 UTC (permalink / raw) To: Ed Tanous; +Cc: openbmc, Ed Tanous, Derick, Bills, Jason M On 4/28/2021 1:44 PM, Ed Tanous wrote: >>> On Wed, Apr 28, 2021 at 9:18 AM Gunnar Mills <gmills@linux.vnet.ibm.com> wrote: >>>> >>>> From some discussion on Discord a few weeks ago. A newer way of >>>> thinking in Redfish is for a simple rack server to just have one Redfish >>>> Chassis and things like boards modeled as Redfish Assemblies under the >>>> Chassis. Today we look for inventory item chassis and inventory >>>> item board to populate the Chassis collection. I propose we move >>>> the "Inventory.Item.Board" from Redfish Chassis to Redfish Assembly. >>> > > Here's an example of something that's type Board that creates sensors. > https://github.com/openbmc/entity-manager/blob/master/configurations/A2UL16RISER.json > There are several more like this. From follow-on discussion in Discord this afternoon. Today the sensors to board association (e.g. the riser card above with sensors) is "chassis"/"all_sensor. It should be "inventory"/"sensors" (Association Type #2: Linking a low-level hardware item to its sensors [a]). Redfish has a "RelatedItem" property on the Sensor schema. To populate the "RelatedItem" property we will use Association Type #2. This is the first step to moving Inventory.Item.Board to a Redfish Assembly, this is to ensure no relationships are lost. [a]https://github.com/openbmc/docs/blob/919a7b6816a5f16aa72d298e81e0756d95d5031e/architecture/sensor-architecture.md#association-type-2-linking-a-low-level-hardware-item-to-its-sensors > > I don't mean to throw up roadblocks, and I definitely don't know what > the solution is here, but we'll need to solve it before something like > this can go through. > We further discussed how staging this change might work, it probably involves a compile flag for some time and separately adding Inventory.Item.Board to Assembly and later removing from Chassis. Gunnar ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2021-04-28 22:57 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-04-28 16:17 Move Inventory.Item.Board from Redfish Chassis to Redfish Assembly Gunnar Mills 2021-04-28 16:46 ` Ed Tanous 2021-04-28 19:38 ` Gunnar Mills 2021-04-28 19:44 ` Ed Tanous 2021-04-28 22:56 ` Gunnar Mills
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.