xref: /openbmc/bmcweb/CLIENTS.md (revision 8ece0e45)
1f4f2643aSPatrick Williams# Client overview
2f4f2643aSPatrick Williams
32c615dffSEd Tanousbmcweb being a user and network facing daemon, is subject to a vast array of
42c615dffSEd Tanoustests and clients that could target it. The below attempts to provide a
52c615dffSEd Tanousnon-exhaustive list of tests and clients that bmcweb is expected to be
62c615dffSEd Tanouscompatible with, they are split into a couple categories. Entries in the test
72c615dffSEd Tanouscategory are intended to be qualification tests to ensure the bmcweb meets the
82c615dffSEd Tanousspecification. Entries in the clients category are intended to host user-facing
92c615dffSEd Tanousfunctionality.
102c615dffSEd Tanous
112c615dffSEd TanousThe base expectation is that for master versions of bmcweb, and master versions
122c615dffSEd Tanousof these tools, the tests pass 100%. There may be cases where we workaround
132c615dffSEd Tanouslimitations in the testing tools behavior within bmcweb to make the tools pass,
142c615dffSEd Tanousregardless of whether there is user impact.
152c615dffSEd Tanous
16a90d6630SNan Zhou## Tests
172c615dffSEd Tanous
182c615dffSEd TanousRedfish-Service-Validator: A tool to verify through GET requests that bmcweb
192c615dffSEd Tanousproperly implements the Redfish schemas in the responded Resource.
202c615dffSEd Tanousgit@github.com:DMTF/Redfish-Service-Validator.git
212c615dffSEd Tanous
222c615dffSEd TanousStatus: 100% passing. Integrated with CI to ensure no regressions.
232c615dffSEd Tanous
242c615dffSEd TanousRedfish-Protocol-Validator: A tool to verify the protocol-level interactions
252c615dffSEd Tanouswith the Redfish wire-protocol, and checks those against the Redfish
26dfa3fdc3SPatrick Williamsspecification. git@github.com:DMTF/Redfish-Protocol-Validator.git
272c615dffSEd Tanous
285647795eSEd TanousStatus: 100% of assertions passing. No CI integration.
292c615dffSEd Tanous
302c615dffSEd TanousOpenBMC-test-automation: A tool based on robot framework for testing some
312c615dffSEd Tanousportion of the OpenBMC Redfish use cases.
322c615dffSEd Tanous
332c615dffSEd TanousStatus: Passing for some machines with CI integration.
342c615dffSEd Tanous
35dfa3fdc3SPatrick Williamsslowloris: A tool to verify timeouts and DOS attack mitigation is implemented
36f4f2643aSPatrick Williamsproperly. <https://github.com/gkbrk/slowloris>
372c615dffSEd Tanous
382c615dffSEd TanousStatus: Passing, no automated enforcement.
392c615dffSEd Tanous
40*8ece0e45SEd Tanoustestssl.sh: A tool for verifying the correctness of the bmcweb cipher suites
412c615dffSEd Tanousagainst current recommended security standards
42f4f2643aSPatrick Williams<https://github.com/drwetter/testssl.sh>
432c615dffSEd Tanous
442c615dffSEd TanousStatus: Unknown
452c615dffSEd Tanous
46a90d6630SNan Zhou## Clients
472c615dffSEd Tanous
482c615dffSEd Tanousfwupd: Is a client implementation that allows updating firmware components in a
492c615dffSEd Tanousgeneric way, and includes redfish as one of its plugins.
502c615dffSEd Tanousgit@github.com:fwupd/fwupd.git
512c615dffSEd Tanous
522c615dffSEd TanousStatus: Unknown
532c615dffSEd Tanous
542c615dffSEd Tanouspython-redfish-library: A python library used by a number of tools.
552c615dffSEd Tanousgit@github.com:DMTF/python-redfish-library.git
562c615dffSEd Tanous
572c615dffSEd TanousStatus: Compatible
582c615dffSEd Tanous
592c615dffSEd TanousRedfish-Event-Listener: An example client for testing and implementing
60f4f2643aSPatrick WilliamsEventService handlers. <https://github.com/DMTF/Redfish-Event-Listener>
612c615dffSEd Tanous
622c615dffSEd TanousStatus: Compatible. No CI integration.
632c615dffSEd Tanous
642c615dffSEd TanousRedfish-Tacklebox: A collection of common utilities for managing redfish servers
652c615dffSEd Tanousgit@github.com:DMTF/Redfish-Tacklebox.git
662c615dffSEd Tanous
672c615dffSEd TanousStatus: Unknown.
682c615dffSEd Tanous
692c615dffSEd Tanousredfishtool: A generic command line tool for reading and writing operations to
70f4f2643aSPatrick Williamsthe Redfish server. <https://github.com/DMTF/Redfishtool>
712c615dffSEd Tanous
722c615dffSEd TanousStatus: Compatible. No automated testing.
73