History log of /openbmc/bmcweb/features/redfish/lib/storage.hpp (Results 26 – 50 of 83)
Revision Date Author Comments
# dde9bc12 21-Feb-2023 George Liu <liuxiwei@inspur.com>

Fix the Redfish validator fail for Storage

This commit fixes the problem that Redfish Validator has not passed
because of the analytical URL failure
(Redfish/V1/Systems/System/System/Storage/1/Drive

Fix the Redfish validator fail for Storage

This commit fixes the problem that Redfish Validator has not passed
because of the analytical URL failure
(Redfish/V1/Systems/System/System/Storage/1/Drives/Media0).

Redfish validator error message:
```
*** /redfish/v1/Systems/system/Storage/1
INFO - Type (Storage.v1_7_1.Storage), GET SUCCESS \
(time: 0:00:00.184274)
INFO - Attempt 1 of /redfish/v1/Systems/system/Storage/1/ \
Drives/media0
INFO - Response Time for GET to /redfish/v1/Systems/system/Storage/ \
1/Drives/media0: 0.15951547500117158 seconds.
ERROR - Drives: GET of resource at URI /redfish/v1/Systems/system/ \
Storage/1/Drives/media0 returned HTTP error. Check URI.
INFO - FAIL...
INFO -
*** /redfish/v1/Systems/system/Storage/1/Drives/media0
ERROR - URI did not return resource /redfish/v1/Systems/system/ \
Storage/1/Drives/media0
```

Tested: Redfish validator passes.

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I1c7ff0e8103ce2e65cd3d73f6ef20abfe70a01b5

show more ...


# e5029d88 08-Jun-2022 John Edward Broadbent <jebr@google.com>

redfish: Add EncryptionStatus to Drive

This change takes the locked, and EncryptionStatus properties from
Drives interfaces, and creates the redfish property EncryptionStatus.

Tested:
$ wget -qO- \

redfish: Add EncryptionStatus to Drive

This change takes the locked, and EncryptionStatus properties from
Drives interfaces, and creates the redfish property EncryptionStatus.

Tested:
$ wget -qO- \
http://localhost:80/redfish/v1/Chassis/AgoraV2/Drives/mmcblk0
{
"@odata.context": "/redfish/v1/$metadata#Drive.Drive",
"@odata.id": "/redfish/v1/Chassis/Drives/mmcblk0",
"@odata.type": "#Drive.v1_7_0.Drive",
"CapacityBytes": 15634268160,
"EncryptionStatus": "Unencrypted",
"Id": "mmcblk0",
"Links": {
"Chassis": "Enabled"
},
"Name": "mmcblk0",
"Status": {
"State": "Enabled"
}
}

Running the redfish Validator did not show any errors from this change.

Change-Id: Ic7b58614466535b3fd6b8c097050d3e9c8de8203
Signed-off-by: John Edward Broadbent <jebr@google.com>
Signed-off-by: Ed Tanous <edtanous@google.com>

show more ...


# ef4c65b7 24-Apr-2023 Ed Tanous <edtanous@google.com>

Boost::urls::format

Boost 1.82 dropped a lovely new toy, boost::urls::format, which is a lot
like our urlFromPieces method, but better in that it makes the resulting
uris more readable, and allows d

Boost::urls::format

Boost 1.82 dropped a lovely new toy, boost::urls::format, which is a lot
like our urlFromPieces method, but better in that it makes the resulting
uris more readable, and allows doing things like fragments in a single
line instead of multiple. We should prefer it in some cases.

Tested:
Redfish service validator passes.
Spot checks of URLs work as expected.
Unit tests pass.

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ia7b38f0a95771c862507e7d5b4aa68aa1c98403c

show more ...


# b2ba3072 12-May-2023 Patrick Williams <patrick@stwcx.xyz>

fix more push vs emplace calls

It seems like clang-tidy doesn't catch every place that an emplace could
be used instead of a push. Use a few grep/sed pairs to find and fix up
some common patterns.

fix more push vs emplace calls

It seems like clang-tidy doesn't catch every place that an emplace could
be used instead of a push. Use a few grep/sed pairs to find and fix up
some common patterns.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I93eaec26b8e3be240599e92b66cf54947073dc4c

show more ...


# 89492a15 10-May-2023 Patrick Williams <patrick@stwcx.xyz>

clang-format: copy latest and re-format

clang-format-16 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest

clang-format: copy latest and re-format

clang-format-16 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest .clang-format from the docs repository and reformat the
repository.

Change-Id: I75f89d2959b0f1338c20d72ad669fbdc1d720835
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# 6c3e9451 02-Mar-2023 George Liu <liuxiwei@inspur.com>

Refactor getAssociationEndPoints method

Since the getAssociationEndPoints method has been implemented in
dbus_utility and this commit is to integrate all the places where the
endpoints attribute is

Refactor getAssociationEndPoints method

Since the getAssociationEndPoints method has been implemented in
dbus_utility and this commit is to integrate all the places where the
endpoints attribute is obtained, and use the method in dbus_utility
uniformly.

Tested:
1. Redfish Validator Passed
2. For all the endpoints we changed, we got the same result as before

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I91a5e80de5bc3b5712c2d5b81f2f8b982d1c884e

show more ...


# 5e7e2dc5 16-Feb-2023 Ed Tanous <edtanous@google.com>

Take boost error_code by reference

By convention, we should be following boost here, and passing error_code
by reference, not by value. This makes our code consistent, and removes
the need for a co

Take boost error_code by reference

By convention, we should be following boost here, and passing error_code
by reference, not by value. This makes our code consistent, and removes
the need for a copy in some cases.

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Id42ea4a90b6685a84818b87d1506c11256b3b9ae

show more ...


# eddfc437 26-Sep-2022 Willy Tu <wltu@google.com>

Update most resources to use urlFromPieces

Only id in event_service and account_service have not been updated due
to the risk of it breaking the username/id. It will require further
testing to verif

Update most resources to use urlFromPieces

Only id in event_service and account_service have not been updated due
to the risk of it breaking the username/id. It will require further
testing to verify.

Use urlFromPieces wherever that is needed to insert a variable in the
URI. Don't use urlFromPieces when it is hardcoded values. This allow us
to control all resource URIs that is dynamically added and to sync with
the current recommanded method for `@odata.id`. The goal is to have a
common place to manage the url created from dbus-paths in order to
manage/update it easily when needed.

Tested:
RedfishValidtor Passed for all resource including the sensors with the
fragments.

Change-Id: I95cdfaaee58fc7f21c95f5944e1e5c813b3215f2
Signed-off-by: Willy Tu <wltu@google.com>
Signed-off-by: Ed Tanous <edtanous@google.com>

show more ...


# a8e884fc 13-Jan-2023 Ed Tanous <edtanous@google.com>

Fix a couple #includes

In the continual quest to get tidy passing when run in isolation, fix
some more includes.

This includes removing a circular #include to app.hpp. We don't use
app.hpp in thes

Fix a couple #includes

In the continual quest to get tidy passing when run in isolation, fix
some more includes.

This includes removing a circular #include to app.hpp. We don't use
app.hpp in these files, which is why our code compiles but having this
include it here causes a few circular dependencies
app.hpp -> http_server.hpp -> persistent_data.hpp -> app.hpp.
app.hpp -> http_server.hpp -> authentication.hpp -> app.hpp.

This confuses clang when run on header files directly.

Fix a couple more includes at the same time.

Tested: Code compiles

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ib62d78b49c7e38ef7061c9fbbf6b3d463f11917d

show more ...


# cef57e85 15-Dec-2022 Willy Tu <wltu@google.com>

Set state to Absent on Present == false

- State=Absent means this function or resource is either not present
or detected.
- State=Disabled means that the device exists, but has been disabled

Set state to Absent on Present == false

- State=Absent means this function or resource is either not present
or detected.
- State=Disabled means that the device exists, but has been disabled.

Tested:

Redfish Validator Passed

Verified that absence of Drive shows [Status][State] = "Absent"

```
wget -qO- http://localhost:80/redfish/v1/Chassis/mychassis/Drives/Drive_0
{
"@odata.id": "/redfish/v1/Chassis/mychassis/Drives/Drive_0",
"@odata.type": "#Drive.v1_7_0.Drive",
"Id": "Drive_0",
"Links": {
"Chassis": {
"@odata.id": "/redfish/v1/Chassis/mychassis"
}
},
.....,
.....,
.....,
"Protocol": "....",
"Status": {
"State": "Absent"
}
}
```

Change-Id: I99217c1c3c94df5c10fb158d3d1ef65d70d0ebb3
Signed-off-by: Willy Tu <wltu@google.com>
Signed-off-by: Nikhil Namjoshi <nikhilnamjoshi@google.com>

show more ...


# e99073f5 08-Dec-2022 George Liu <liuxiwei@inspur.com>

Refactor GetSubTree method

Since the GetSubTree method has been implemented in dbus_utility and
this commit is to integrate all the places where the GetSubTree
method is called, and use the method i

Refactor GetSubTree method

Since the GetSubTree method has been implemented in dbus_utility and
this commit is to integrate all the places where the GetSubTree
method is called, and use the method in dbus_utility uniformly.

Tested: Redfish Validator Passed

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: If3852b487d74e7cd8f123e0efffbd4affe92743c

show more ...


# 3ccb3adb 13-Jan-2023 Ed Tanous <edtanous@google.com>

Fix a boatload of #includes

Most of these missing includes were found by running clang-tidy on all
files, including headers. The existing scripts just run clang-tidy on
source files, which doesn't

Fix a boatload of #includes

Most of these missing includes were found by running clang-tidy on all
files, including headers. The existing scripts just run clang-tidy on
source files, which doesn't catch most of these.

Tested: Code compiles

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ic741fbb2cc9e5e92955fd5a1b778a482830e80e8

show more ...


# 7a1dbc48 07-Dec-2022 George Liu <liuxiwei@inspur.com>

Refactor GetSubTreePaths method

Since the GetSubTreePaths method has been implemented in dbus_utility
and this commit is to integrate all the places where the
GetSubTreePaths method is called, and u

Refactor GetSubTreePaths method

Since the GetSubTreePaths method has been implemented in dbus_utility
and this commit is to integrate all the places where the
GetSubTreePaths method is called, and use the method in dbus_utility
uniformly.

Requires https://gerrit.openbmc.org/c/openbmc/sdbusplus/+/60020 to
build.

Tested: Redfish Validator Passed

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: Ie4140d4484a7e4f4b943013f4371ffd2d44a22e9

show more ...


# 22d268cb 19-May-2022 Ed Tanous <edtanous@google.com>

Make routes start matching Redfish

This is preliminary patch to set up the route handling such that it's
ready for the addition of multiple hosts, multiple managers in the
future. Routes previously

Make routes start matching Redfish

This is preliminary patch to set up the route handling such that it's
ready for the addition of multiple hosts, multiple managers in the
future. Routes previously took the form of

/redfish/v1/Systems/system

which essentially hardcoded the name "system" into a number of places.
As the stack evolves to support multiple systems, this needs to change.

This patchset changes all the ComputerSystem resources to the form:
/redfish/v1/Systems/<str>

and adds 404 checks to each route such that they will be handled
properly still. This means that as we evolve our multi-host support,
each individual route can be moved one at a time to support multi-host.

In the future, moving these to redfish-spec-defined routing would likely
mean that we could generate this code in the future at some point, which
reduces the likelihood that people do it incorrectly.

This patch currently sets the resource id and resource type in the
resourceNotFound message to empty string (""). This handling is still
arguably more correct than what we had before, which just returned 404
with an empty payload, although this will be corrected in the future.

Tested: None yet. RFC to see if this is a pattern we'd like to
propogate

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: If9c07ad69f5287bb054645f460d7e370d433dc27

show more ...


# d1bde9e5 07-Sep-2022 Krzysztof Grobelny <krzysztof.grobelny@intel.com>

used sdbusplus::unpackPropertiesNoThrow part 8

used sdbusplus::unpackPropertiesNoThrow in other places, also replaced
all usages of "GetAll" with sdbusplus::asio::getAllProperties

bmcweb size:

used sdbusplus::unpackPropertiesNoThrow part 8

used sdbusplus::unpackPropertiesNoThrow in other places, also replaced
all usages of "GetAll" with sdbusplus::asio::getAllProperties

bmcweb size: 2697640 -> 2685336 (-12304)
compressed size: 1129728 -> 1126078 (-3650)

Tested:
- Executed redfish service validator, no new errors detected

Change-Id: I916e462e004fcbde67c209daef295de8f5fb68eb
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>

show more ...


# 3fe4d5cc 06-May-2022 John Edward Broadbent <jebr@google.com>

redfish: Add the percent lifeleft to drive

The property known as "PredictedMediaLifeLeftPercent" was not
implemented in bmcweb. This change adds that property to bmcweb, and
exposes the value of Pre

redfish: Add the percent lifeleft to drive

The property known as "PredictedMediaLifeLeftPercent" was not
implemented in bmcweb. This change adds that property to bmcweb, and
exposes the value of PredictedMediaLifeLeftPercent to redfish clients.

More information about the interface can be found at the link below, or
in yaml/xyz/openbmc_project/Inventory/Item/Drive.interface.yaml.

https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/47657/10/yaml/xyz/openbmc_project/Inventory/Item/Drive.interface.yaml#31

Tested:
Redfish Validator did not show any errors from this change.

$ wget -qO- http://localhost:80/redfish/v1/Chassis/DC_SCM/Drives/mmcblk0
{
"@odata.context": "/redfish/v1/$metadata#Drive.Drive",
"@odata.id": "/redfish/v1/Chassis/Drives/mmcblk0",
"@odata.type": "#Drive.v1_7_0.Drive",
"CapacityBytes": 15634268160,
"EncryptionStatus": "Unencrypted",
"Id": "mmcblk0",
"Links": {
"Chassis": "Enabled"
},
"Name": "mmcblk0",
"PredictedMediaLifeLeftPercent": 100,
"Status": {
"State": "Enabled"
}
}

Signed-off-by: John Edward Broadbent <jebr@google.com>
Change-Id: I360ce393707ba7a876810fc80f8a2d6fb484759c

show more ...


# a0cb40cb 29-Jun-2022 John Edward Broadbent <jebr@google.com>

drive: cleanup recent errors

There were two new errors found the drives implementation that was
recently implemented.

Tested:

wget -qO- http://localhost:80/redfish/v1/Chassis/DC_SCM/Drives
{
"@o

drive: cleanup recent errors

There were two new errors found the drives implementation that was
recently implemented.

Tested:

wget -qO- http://localhost:80/redfish/v1/Chassis/DC_SCM/Drives
{
"@odata.id": "/redfish/v1/Chassis/DC_SCM/Drives",
"@odata.type": "#DriveCollection.DriveCollection",
"Members": [
{
"@odata.id": "/redfish/v1/Chassis/DC_SCM/Drives/mmcblk0"
}
],
"Members@odata.count": 1,
"Name": "Drive Collection"
}

wget -qO- http://localhost:80/redfish/v1/Chassis/DC_SCM/Drives/mmcblk0
{
"@odata.id": "/redfish/v1/Chassis/DC_SCM/Drives/mmcblk0",
"CapacityBytes": 15634268160,
"Id": "mmcblk0",
"Links": {
"Chassis": "Enabled"
},
"Name": "mmcblk0",
"Status": {
"State": "Enabled"
}
}

Tested:
Redfish Validator Passed now.

Old Validator Failure
```
*** /redfish/v1/Chassis/chassis_0/Drives/drive_0
WARNING - /redfish/v1/Chassis/chassis_0/Drives/drive_0 @odata.id: Expected @odata.id to match URI link /redfish/v1/Chassis/Drives/drive_0
ERROR - URI /redfish/v1/Chassis/Drives/drive_0 does not match the following required URIs in Schema of Drive.v1_7_0.Drive
INFO - Type (Drive.v1_7_0.Drive), GET SUCCESS (time: 0:00:00.072884)
INFO - Attempt 1 of /redfish/v1/Chassis/chassis_0
INFO - Response Time for GET to /redfish/v1/Chassis/chassis_0: 0.253246079897508 seconds.
INFO - FAIL...
INFO - Metadata: Namespaces missing from $metadata: set()
INFO -
```

Current Output,
```
{
"@odata.id": "/redfish/v1/Chassis/chassis_0/Drives/drive_0",
"@odata.type": "#Drive.v1_7_0.Drive",
"Id": "drive_0",
"Links": {
"Chassis": {
"@odata.id": "/redfish/v1/Chassis/chassis_0"
}
},
...
}
```

Change-Id: I1af7704070dbf43c4e8b7768a052a2be4446b54c
Signed-off-by: John Edward Broadbent <jebr@google.com>

show more ...


# 8a592810 04-Jun-2022 Ed Tanous <edtanous@google.com>

Fix shadowed variable issues

This patchset is the conclusion of a multi-year effort to try to fix
shadowed variable names. Variables seem to be shadowed all over, and in
most places they exist, the

Fix shadowed variable issues

This patchset is the conclusion of a multi-year effort to try to fix
shadowed variable names. Variables seem to be shadowed all over, and in
most places they exist, there's a "code smell" of things that aren't
doing what the author intended.

This commit attempts to clean up these in several ways by:
1. Renaming variables where appropriate.
2. Preferring to refer to member variables directly when operating
within a class
3. Rearranging code so that pass through variables are handled in the
calling scope, rather than passing them through.

These patterns are applied throughout the codebase, to the point where
-Wshadow can be enabled in meson.build.

Tested: Code compiles, unit tests pass. Still need to run redfish
service validator.

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: If703398c2282f9e096ca2694fd94515de36a098b

show more ...


# 8cb65f8a 15-Jun-2022 Nan Zhou <nanzhoumails@gmail.com>

storage: simplify dbus call types

|connectionNames| can use MapperServiceMap, which is defined in
dbus_utility.hpp for GetSubTree response.

This commit also uses Structured binding declaration, whi

storage: simplify dbus call types

|connectionNames| can use MapperServiceMap, which is defined in
dbus_utility.hpp for GetSubTree response.

This commit also uses Structured binding declaration, which simplifies a
lot of for loops.

Tested:
1. code compiles. Strong type guarantees the correctness.
2. no Redfish Validator failures on Storage resource
Signed-off-by: Nan Zhou <nanzhoumails@gmail.com>
Change-Id: I50601e7551b0de49c2891b81789e97550bead6e3

show more ...


# b53dcd9d 21-Jun-2022 Nan Zhou <nanzhoumails@gmail.com>

clang: add inline to functions

Clang complains about -Wmissing-prototypes in this file. This commit
makes functions inline, which is consistent with the existing functions.

Tested: codes build in c

clang: add inline to functions

Clang complains about -Wmissing-prototypes in this file. This commit
makes functions inline, which is consistent with the existing functions.

Tested: codes build in clang++13.

Signed-off-by: Nan Zhou <nanzhoumails@gmail.com>
Change-Id: I7597843713a214bfcdd4d4d24a8c10e96b1d323e

show more ...


# 14bd7d9a 14-Jun-2022 John Edward Broadbent <jebr@google.com>

Redfish: Fix @odata.id formatting issue

On a recent CL the odata.id for drives was being formatted incorrectly.
This change corrects the formatting issue.

Tested:
This change was not tested, and it

Redfish: Fix @odata.id formatting issue

On a recent CL the odata.id for drives was being formatted incorrectly.
This change corrects the formatting issue.

Tested:
This change was not tested, and it's correctness should be
self-evident.

Change-Id: Ie530c6d8c4203ad0f733198d5d7ca52cf2f40a52
Signed-off-by: John Edward Broadbent <jebr@google.com>

show more ...


# 03810a11 15-Jun-2022 Michal Orzel <michalx.orzel@intel.com>

Fix compilation issue

Fixes minor build problem introduced by change
e56ed6b98104954444ba2ccb0681b1a174e24b00 (redfish: Add Chassis associated Drive query).

Tested:
Compiled the code locally, with

Fix compilation issue

Fixes minor build problem introduced by change
e56ed6b98104954444ba2ccb0681b1a174e24b00 (redfish: Add Chassis associated Drive query).

Tested:
Compiled the code locally, with success.

Change-Id: I35783557bc870e8048a76c4de30a4750af7f9eef
Signed-off-by: Michal Orzel <michalx.orzel@intel.com>

show more ...


# e56ed6b9 26-Apr-2022 John Edward Broadbent <jebr@google.com>

redfish: Add Chassis associated Drive query

This change supports named drives being queried by their associated
chassis, by using the follow form:

/redfish/v1/Chassis/<chassis>/Drives/<drive>

This

redfish: Add Chassis associated Drive query

This change supports named drives being queried by their associated
chassis, by using the follow form:

/redfish/v1/Chassis/<chassis>/Drives/<drive>

This change is in accordance with redfish

Tested:
With the redfish validator: No new errors

$ wget -qO- http://localhost:80/redfish/v1/Chassis/DC_SCM/Drives/mmcblk0
{
"@odata.context": "/redfish/v1/$metadata#Drive.Drive",
"@odata.id": "/redfish/v1/Chassis/DC_SCM/Drives/mmcblk0",
"@odata.type": "#Drive.v1_7_0.Drive",
"CapacityBytes": 15634268160,
"Id": "mmcblk0",
"Name": "mmcblk0",
"Status": {
"State": "Enabled"
}
}

Signed-off-by: John Edward Broadbent <jebr@google.com>
Change-Id: I3501ea4789bae57a905052d0e820d441665b72d7

show more ...


# 3ba00073 06-Jun-2022 Carson Labrado <clabrado@google.com>

Expose AsyncResp shared_ptr when handling response

For Redfish Aggregation, we need a common point to check the D-Bus
for satellite configs. If they are available then we perform the
aggregation op

Expose AsyncResp shared_ptr when handling response

For Redfish Aggregation, we need a common point to check the D-Bus
for satellite configs. If they are available then we perform the
aggregation operations. The functions in query.hpp are used by all
endpoints making them the logical location. The aggregation code
requires a shared_ptr to the AsyncResp so these functions need to be
able to supply that.

This patch is broken out of a future patch for routing Redfish
Aggregation requests
https://gerrit.openbmc.org/c/openbmc/bmcweb/+/53310

The follow commands can be used to perform most of the replacements:
find . -type f | xargs sed -i 's/setUpRedfishRoute(app, req, asyncResp->res/setUpRedfishRoute(app, req, asyncResp/g'
find . -type f | xargs sed -i 's/setUpRedfishRouteWithDelegation(app, req, asyncResp->res/setUpRedfishRouteWithDelegation(app, req, asyncResp/g'

Signed-off-by: Carson Labrado <clabrado@google.com>
Change-Id: I4f4f9f22cdcfb14a3bd94b9a8f3d64aae34e57bc

show more ...


# a85afbe1 28-Dec-2021 Willy Tu <wltu@google.com>

storage: Refactor Drive and StorageController into separate method

Cleanup dbus path with with object_path.filename() to determine to get
the resource ID/Name.

There will be no changes to the redfi

storage: Refactor Drive and StorageController into separate method

Cleanup dbus path with with object_path.filename() to determine to get
the resource ID/Name.

There will be no changes to the redfish tree with this change. This
change help manage the Drive/Storage functions by diving it up into
smaller function with no functional changes.

TESTED:
Redfish Validation passed for Storage

Storage Get
```
wget -qO- http://localhost:80/redfish/v1/Systems/system/Storage/storage0
{
"@odata.id": "/redfish/v1/Systems/system/Storage/storage0",
"@odata.type": "#Storage.v1_7_1.Storage",
"Drives": [
{
"@odata.id": "/redfish/v1/Systems/system/Storage/storage0/Drives/drive0"
}
],
"Drives@odata.count": 1,
"Id": "1",
"Name": "Storage",
"Status": {
"Health": "OK",
"HealthRollup": "OK",
"State": "Enabled"
},
"StorageControllers": [
{
"@odata.id": "/redfish/v1/Systems/system/Storage/storage0#/StorageControllers/0",
"@odata.type": "#Storage.v1_7_0.StorageController",
"MemberId": "cpld",
"Name": "cpld",
"Status": {
"Health": "OK",
"HealthRollup": "OK",
"State": "Enabled"
}
}
]
}
```

Change-Id: I334e2233f42efc8e390a410493d7594d5d81bd4e
Signed-off-by: Willy Tu <wltu@google.com>

show more ...


1234