summaryrefslogtreecommitdiff
path: root/Redfish.md
AgeCommit message (Collapse)AuthorFilesLines
2022-06-17Revert "Implement Redfish PCIeSlots schema"Ed Tanous1-9/+0
This reverts commit 7691cc2f7ef1f0ceedf3de0554045a614f25776d. This causes validator failures ERROR - JsonSchemas: GET of resource at URI /redfish/v1/JsonSchemas returned HTTP 404. Check URI. ERROR - PCIeSlots: GET of resource at URI /redfish/v1/Chassis/motherboard/PCIeSlots returned HTTP 404. Check URI. ERROR - PCIeSlots: GET of resource at URI /redfish/v1/Chassis/chassis/PCIeSlots returned HTTP 404. Check URI. Change-Id: Ibcdf238a222da83127a89d8f38c8180501ffe882 Signed-off-by: Ed Tanous <edtanous@google.com>
2022-06-17Doc: Update Redfish.md with storage/drive infoJohn Edward Broadbent1-0/+6
The API for "/redfish/v1/Systems/system/Storage/1/Drives/<str>" was not in the Redfish.md document. This change adds some documentation about what is expected from this URI. Change-Id: I4842254c3d35bf312ba71b745e8640df9866ca7a Signed-off-by: John Edward Broadbent <jebr@google.com>
2022-06-17Implement Redfish PCIeSlots schemaChicago Duan1-0/+9
PCIeSlotCollection, and PCIeSlot schemas are used for determining and inspecting the PCIe physical topology of a system. It is used to determine what a particular physical slots formfactor is. This commit supports the as documented in Redfish.md. https://redfish.dmtf.org/schemas/PCIeSlots_v1.xml Tested: Validator passes (on previous patchset) 1、Get PCIe slots curl -k -H "X-Auth-Token: $token" -X GET https://${bmc}/redfish/v1/Chassis/chassis/PCIeSlots { "@odata.id": "/redfish/v1/Chassis/chassis/PCIeSlots", "@odata.type": "#PCIeSlots.v1_4_1.PCIeSlots", "Id": "PCIeSlots", "Name": "PCIe Slot Information", "Slots": [ { "HotPluggable": false, "Lanes": 16, "PCIeType": "Gen1", "SlotType": "FullLength" }, { "HotPluggable": false, "Lanes": 16, "PCIeType": "Gen2", "SlotType": "OEM" } ] } 2、No PCIeSlots curl -k -H "X-Auth-Token: $token" -X GET https://${bmc}/redfish/v1/Chassis/chassis/PCIeSlots { "@odata.id": "/redfish/v1/Chassis/chassis/PCIeSlots", "@odata.type": "#PCIeSlots.v1_4_1.PCIeSlots", "Id": "PCIeSlots", "Name": "PCIe Slot Information", "Slots": [] } 3、Bad chassis ID return 404 curl -k -H "X-Auth-Token: $token" -X GET https://${bmc}/redfish/v1/Chassis/badChassisID/PCIeSlots Returns 404 and ResourceNotFound Signed-off-by: Chicago Duan <duanzhijia01@inspur.com> Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: I11e1bf94b3865986cbd580293ea906fe96067912
2022-06-15redfish: Add Chassis associated Drive queryJohn Edward Broadbent1-0/+7
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
2022-06-06redfish: Add Chassis listing associated driveJohn Edward Broadbent1-0/+6
If chassis has drives a drive url is added to the chassis, of the form: redfish/v1/Chassis/<chassis>/Drives When queried, the drive URL will list all drives associated with the chassis. This is in accordance with the redfish schema. Samples for the following URLs are below 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" } Tested: With the redfish validator: No new errors Change-Id: Ibdbe7fee5014d6515a77683c8eaca9ca86b6b148 Signed-off-by: John Edward Broadbent <jebr@google.com>
2021-12-17Add GET method for TriggerCollectionLukasz Kazmierczak1-0/+6
Added GET method for retrieving list of Triggers from Telemetry service Tested: - Added single Trigger and requested result from bmcweb via /redfish/v1/TelemetryService/Triggers - Added multiple Triggers numeric and discrete, and requested results from bmcweb via /redfish/v1/TelemetryService/Triggers - Verified uri /redfish/v1/TelemetryService/Triggers by using Redfish-Service-Validator with no Triggers/empty Collection (passed) Signed-off-by: Lukasz Kazmierczak <lukasz.kazmierczak@intel.com> Change-Id: Ide00eb44901ea1b97b80fc5c5ddfd97e393d4a04
2021-11-02Systems: Add IdlePowerSave supportChris Cain1-0/+5
Idle power saver is a system wide mode that will reduce the power usage when the system reaches an idle state. The system will also exit idle power save once the performance increases to a specified utilization. The idle state is defined as when the processor utilization drops to EnterUtilizationPercent for EnterDwellTimeSeconds. Once the utilization increases to ExitUtilizationPercent for ExitDwellTimeSeconds, the system will return to normal (non-idle) state. Ran Validator on hardware and all /redfish/v1/Systems/system tests passed. Tested: I manually tested retrieving and setting the PowerMode property on a Rainier system (with good and bad values) $ curl -s -k -X GET https://$bmc/redfish/v1/Systems/system | grep -A6 IdlePowerSaver "IdlePowerSaver": { "Enabled": false, "EnterDwellTimeSeconds": 240, "EnterUtilizationPercent": 8, "ExitDwellTimeSeconds": 10, "ExitUtilizationPercent": 12 }, $ curl -k -X PATCH -d '{"IdlePowerSaver":{"Enabled":true}}' https://$bmc/redfish/v1/Systems/system $ curl -k -X PATCH -d '{"IdlePowerSaver":{"Enabled":false,"EnterUtilizationPercent":8,"EnterDwellTimeSeconds":240,"ExitUtilizationPercent":12,"ExitDwellTimeSeconds":10}}' https://$bmc/redfish/v1/Systems/system Signed-off-by: Chris Cain <cjcain@us.ibm.com> Change-Id: Icdc948f133959dce4297ab9774c2e9c8acb620e3
2021-07-01Systems: Add PowerMode supportChris Cain1-0/+1
The computer system power mode defines the behavior of a system based on the performance and power saving requirements. For example, a system could be set to MaximumPerformance to run as fast as possible without regard to power consumption. A system could also be configured to run in PowerSaving mode which would be running at slower speeds to try to save power. More information can be found at https://gerrit.openbmc-project.xyz/c/openbmc/docs/+/38786 This commit will allow GET / PATCH operations to the PowerMode property PowerMode was added in Redfish Release 2021.1: https://www.dmtf.org/content/redfish-release-20211-now-available Tested: I manually tested retrieving and setting the PowerMode property on a Rainier system (with good and bad values): # curl -k https://$bmc/redfish/v1/Systems/system { "@odata.id": "/redfish/v1/Systems/system", "@odata.type": "#ComputerSystem.v1_15_0.ComputerSystem ... "PartNumber": "", "PowerMode": "MaximumPerformance", "PowerMode@Redfish.AllowableValues": [ "Static", "MaximumPerformance", "PowerSaving" ], "PowerRestorePolicy": "AlwaysOff", ... # curl -k https://$bmc/xyz/openbmc_project/control/host0/power_mode { "data": { "PowerMode": "xyz.openbmc_project.Control.Power.Mode.PowerMode.MaximumPerformance" }, "message": "200 OK", "status": "ok" } # curl -k -X PATCH -d '{ "PowerMode":"Static"}' https://$bmc/redfish/v1/Systems/system curl -k https://$bmc/xyz/openbmc_project/control/host0/power_mode { "data": { "PowerMode": "xyz.openbmc_project.Control.Power.Mode.PowerMode.Static" }, "message": "200 OK", "status": "ok" } Ran Validator on hardware and all tests passed: Elapsed time: 0:05:07 Counter({'skipOptional': 7128, 'pass': 6020, 'metadataNamespaces': 2217, 'passGet': 315, 'warnDeprecated': 212, 'serviceNamespaces': 79, 'warningPresent': 47, 'warnTrailingSlashLink': 24, 'invalidPropertyValue': 18, 'passAction': 14, 'optionalAction': 11, 'repeat': 3, 'unverifiedComplexAdditional': 1}) Validation has succeeded. Signed-off-by: Chris Cain <cjcain@us.ibm.com> Change-Id: I5523a0ebe4a2a77ea4709a14863bff7b55f0303d
2021-06-30Add DateTime & Offset in Managers & LogServicesTejas Patil1-0/+4
This commit adds the support for "DateTimeLocalOffset" property under "/redfish/v1/Managers/bmc/" Redfish URI. And it also adds the support for "DateTime" & "DateTimeLocalOffset" properties under "/redfish/v1/Systems/system/LogServices/<id>/" & "/redfish/v1/Managers/bmc/LogServices/<id>/" Redfish URI's. These properties shows the current Date, Time & the UTC offset that the current DateTime property value contains. Tested: - Redfish Validator Test passed. curl -k -H "X-Auth-Token: $token" -H "Content-Type: application/json" -X GET https://${bmc}/redfish/v1/Managers/bmc/ { "@odata.id": "/redfish/v1/Managers/bmc", "@odata.type": "#Manager.v1_11_0.Manager", "Actions": { "#Manager.Reset": { "@Redfish.ActionInfo": "/redfish/v1/Managers/bmc/ResetActionInfo", "target": "/redfish/v1/Managers/bmc/Actions/Manager.Reset" }, "#Manager.ResetToDefaults": { "ResetType@Redfish.AllowableValues": [ "ResetAll" ], "target": "/redfish/v1/Managers/bmc/Actions/Manager.ResetToDefaults" } }, "DateTime": "2021-06-04T12:18:28+00:00", "DateTimeLocalOffset": "+00:00", "Description": "Baseboard Management Controller", "EthernetInterfaces": { "@odata.id": "/redfish/v1/Managers/bmc/EthernetInterfaces" }, "FirmwareVersion": "2.11.0-dev-114-gc1989599d", "GraphicalConsole": { "ConnectTypesSupported": [ "KVMIP" ], "MaxConcurrentSessions": 4, "ServiceEnabled": true }, "Id": "bmc", "LastResetTime": "2021-06-04T12:07:02+00:00", "Links": { "ActiveSoftwareImage": { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/419c86fb" }, "ManagerForServers": [ { "@odata.id": "/redfish/v1/Systems/system" } ], "ManagerForServers@odata.count": 1, "SoftwareImages": [ { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/419c86fb" } ], "SoftwareImages@odata.count": 1 }, "LogServices": { "@odata.id": "/redfish/v1/Managers/bmc/LogServices" }, "ManagerType": "BMC", "Model": "OpenBmc", "Name": "OpenBmc Manager", "NetworkProtocol": { "@odata.id": "/redfish/v1/Managers/bmc/NetworkProtocol" }, "Oem": { "@odata.id": "/redfish/v1/Managers/bmc#/Oem", "@odata.type": "#OemManager.Oem", "OpenBmc": { "@odata.id": "/redfish/v1/Managers/bmc#/Oem/OpenBmc", "@odata.type": "#OemManager.OpenBmc", "Certificates": { "@odata.id": "/redfish/v1/Managers/bmc/Truststore/Certificates" } } }, "PowerState": "On", "SerialConsole": { "ConnectTypesSupported": [ "IPMI", "SSH" ], "MaxConcurrentSessions": 15, "ServiceEnabled": true }, "ServiceEntryPointUUID": "1832ebbb-0b54-44e9-90d7-b49108f6863c", "Status": { "Health": "OK", "HealthRollup": "OK", "State": "Enabled" }, "UUID": "7fe3d13d-4ae7-4a4f-add1-2d60308124b4" } curl -k -H "X-Auth-Token: $token" -H "Content-Type: application/json" -X GET https://${bmc}/redfish/v1/Systems/system/LogServices/EventLog/ { "@odata.id": "/redfish/v1/Systems/system/LogServices/EventLog", "@odata.type": "#LogService.v1_1_0.LogService", "Actions": { "#LogService.ClearLog": { "target": "/redfish/v1/Systems/system/LogServices/EventLog/Actions/LogService.ClearLog" } }, "DateTime": "2021-06-04T12:11:10+00:00", "DateTimeLocalOffset": "+00:00", "Description": "System Event Log Service", "Entries": { "@odata.id": "/redfish/v1/Systems/system/LogServices/EventLog/Entries" }, "Id": "EventLog", "Name": "Event Log Service", "OverWritePolicy": "WrapsWhenFull" } Signed-off-by: Tejas Patil <tejaspp@ami.com> Change-Id: I416d13ae11e236cf4552f817a9bd69b48f9b5afb
2021-06-30Keep AutoLinking; Remove extra \Abhishek Patel1-39/+39
GitHub, whenever it detects URI/URL, then converts that into a hyperlink. It is good to disable auto-linking, but there are only two ways to implement it, one is adding HTML tag (Ex: <spam>) and HTML code (&#8203;), which convert URL/URI into non-url. Commits 2ebb968 and cb0d27e added an extra \. This failed to disable autolinking. This commit removes that extra \ NOTE:- There might be another way possible, but this is a tested way to remove hyperlink Both changes get added to the middle of the text, which gets converted to hyperlinks, making it hard to read and understand when reading from a file (not from GitHub). Signed-off-by: Abhishek Patel <Abhishek.Patel@ibm.com> Change-Id: I61a7721d8218a1d3ac0405dec4ba74832c817e87
2021-06-03Update Redfish.md with new schemas and propertiesAbhishek Patel1-88/+317
- Redfish.md has quite old schemas and property. This commit makes it more up-to-date. - added newfound schemas and properties using "RedfishVersion": "1.9.0" API - Arranged all schemas and properties as we get on our redfish server - adding '\' between any URL to Disable Autolinking Ex: Members\@odata.count Note: These schemas and properties are as accurate as the Witherspoon bmcweb server, from where this data retrieved Signed-off-by: Abhishek Patel <Abhishek.Patel@ibm.com> Change-Id: I9def930c8372110d8a70f7d68773ac024cd32dff
2021-05-24Formatted Redfish.MD fileAbhishek Patel1-62/+44
1) Remove New Line: - removing extra new line will help to make a file smaller, easy to read 2) Consistency - formatted all URL in the same style to look uniform Signed-off-by: Abhishek Patel <Abhishek.Patel@ibm.com> Change-Id: I47be37dc6909fe1d5c18d08b0dbe42377efa4f93
2021-05-20Disable AutolinkingAbhishek Patel1-19/+19
Github automatically converted URL to hyperlink to remove that, we need to formatted URL like non-URL So adding '\' between any URL will make it look like non-URL that fix this problem Signed-off-by: Abhishek Patel <Abhishek.Patel@ibm.com> Change-Id: I67ae4b85a62122b4226a7384bba697d370a61ac2
2021-01-26Exclude not used schemasGunnar Mills1-0/+3
Created a list of all used schemas, and a few being added for use in reviews now. Exclude all other schemas. Developers if they wish to use a new schema will have to add it to this list and rerun update_schemas.py. Size of obmc-phosphor-image-witherspoon-<date>.rootfs.squashfs-xz: Before 2020.4: 19451904 With 2020.4, before this commit: 19492864 With this commit: 19275776 Tested: Validator passes. Change-Id: I23272049aa38c51ac7af0d3b0f5b4641a349a487 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2019-12-16Update redfish-logging-in-bmcweb.md linkGunnar Mills1-1/+1
redfish-logging-in-bmcweb.md is moving under architecture/ as part of https://gerrit.openbmc-project.xyz/c/openbmc/docs/+/27960 27960 should merge before this is merged. Change-Id: I761c6ad49d1838160371c46d8503b2e33d6bad4c Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2019-10-22Renamed User role name to ReadOnlyAppaRao Puli1-3/+3
As per redfish specification (DSP0266), there are set of predefined privilege roles. In OpenBMC code has "User" as role name instead of "ReadOnly". So corrected the same. Updated Redfish.md accordingly. Spec says: Role Name = "ReadOnly" ▪ AssignedPrivileges = Login, ConfigureSelf Tested: - Role collection shows new role. - GET on /redfish/v1/AccountService/Roles/ReadOnly URI shows correct AssignedPrivileges. - Ran negative test with /redfish/v1/AccountService/Roles/User and observed error(404 - Not Found). - Ran Redfish validator and no new issues observed. Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com> Change-Id: I7b0132c628fb4950b6ec095269cd1a12e92aea9a
2019-08-30Redfish.md: Fill out Service RootGunnar Mills1-1/+8
curl -k https://${bmc}/redfish/v1/ { "@odata.context": "/redfish/v1/$metadata#ServiceRoot.ServiceRoot", "@odata.id": "/redfish/v1", "@odata.type": "#ServiceRoot.v1_5_0.ServiceRoot", "AccountService": { "@odata.id": "/redfish/v1/AccountService" }, "CertificateService": { "@odata.id": "/redfish/v1/CertificateService" }, "Chassis": { "@odata.id": "/redfish/v1/Chassis" }, "Id": "RootService", "JsonSchemas": { "@odata.id": "/redfish/v1/JsonSchemas" }, "Links": { "Sessions": { "@odata.id": "/redfish/v1/SessionService/Sessions" } }, "Managers": { "@odata.id": "/redfish/v1/Managers" }, "Name": "Root Service", "RedfishVersion": "1.6.1", "Registries": { "@odata.id": "/redfish/v1/Registries" }, "SessionService": { "@odata.id": "/redfish/v1/SessionService" }, "Systems": { "@odata.id": "/redfish/v1/Systems" }, "UUID": "fd4374f1-e080-4a1e-84ae-79871bf954e6", "UpdateService": { "@odata.id": "/redfish/v1/UpdateService" } Change-Id: I672f1559a8d5a48fcb275e8371b9c4243c8beb4e Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2019-08-29Redfish.md: Move to standard paths for resourcesGunnar Mills1-24/+25
Had a mix of <> and {} for the path of the resource. Moved to the path defined in the Redfish schema. https://redfish.dmtf.org/redfish/schema_index E.g. /redfish/v1/AccountService/Accounts/{ManagerAccountId} from https://redfish.dmtf.org/schemas/v1/ManagerAccount_v1.xml Corrected a few schemas which were incorrect. <> does not work since markdown thinks this is an HTML tag. https://github.com/openbmc/bmcweb/blob/master/Redfish.md#redfishv1chassispowerpowersupplies Change-Id: I3434952a8adf1a1221f070c04c8c0752e9077a5d Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2019-08-29Redfish.md: FirmwareInventoryGunnar Mills1-2/+3
curl -k https://${bmc}/redfish/v1/UpdateService/FirmwareInventory/9f75c5ad { "@odata.context": "/redfish/v1/$metadata#SoftwareInventory.SoftwareInventory", "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/9f75c5ad", "@odata.type": "#SoftwareInventory.v1_1_0.SoftwareInventory", ... Change-Id: Iaaaa9f3356a16cc5a236c9e75644bb25d7545a05 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2019-08-29Redfish.md: Replace {SystemName} with systemGunnar Mills1-12/+12
curl -k https://${bmc}/redfish/v1/Systems/system/LogServices/EventLog { "@odata.context": "/redfish/v1/$metadata#LogService.LogService", "@odata.id": "/redfish/v1/Systems/system/LogServices/EventLog", ... Change-Id: I7bf85fdb4f46a256982a1ac60bdc8f5fecbad74a Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2019-08-29Redfish.md: Correct bmc Manager capitalizationGunnar Mills1-7/+7
curl -k https://${bmc}/redfish/v1/Managers/BMC/EthernetInterfaces Not Found curl -k https://${bmc}/redfish/v1/Managers/bmc/EthernetInterfaces { "@odata.context": "/redfish/v1/$metadata#EthernetInterfaceCollection.EthernetInterfaceCollection", "@odata.id": "/redfish/v1/Managers/bmc/EthernetInterfaces", "@odata.type": "#EthernetInterfaceCollection.EthernetInterfaceCollection", ... Change-Id: Id227e09ad7f596c01dd2e73b476c1b87582a00fa Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2019-07-31redfish-doc: Add details on EventLog implementationsAndrew Geissler1-0/+36
Was struggling a bit reviewing the code and options in the LogServices area so wrote this up quickly. The main goal being to give a brief overview and link to some documentation to help with reviewing the options. Change-Id: I337490157ffdb188be812031311694f6cb83b8fa Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
2019-07-18redfish-doc: Move Redfish doc to its own fileAndrew Geissler1-0/+462
Redfish support has been growing exponentially within bmcweb. Lets get a separate document for it all. Change-Id: Ibe895c7ab4bf4d2e1d51fce7136c0a6f8ca4119d Signed-off-by: Andrew Geissler <geissonator@yahoo.com>