xref: /openbmc/bmcweb/CLIENTS.md (revision 2c615dff)
1*2c615dffSEd Tanousbmcweb being a user and network facing daemon, is subject to a vast array of
2*2c615dffSEd Tanoustests and clients that could target it.  The below attempts to provide a
3*2c615dffSEd Tanousnon-exhaustive list of tests and clients that bmcweb is expected to be
4*2c615dffSEd Tanouscompatible with, they are split into a couple categories.  Entries in the test
5*2c615dffSEd Tanouscategory are intended to be qualification tests to ensure the bmcweb meets the
6*2c615dffSEd Tanousspecification.  Entries in the clients category are intended to host user-facing
7*2c615dffSEd Tanousfunctionality.
8*2c615dffSEd Tanous
9*2c615dffSEd TanousThe base expectation is that for master versions of bmcweb, and master versions
10*2c615dffSEd Tanousof these tools, the tests pass 100%.  There may be cases where we workaround
11*2c615dffSEd Tanouslimitations in the testing tools behavior within bmcweb to make the tools pass,
12*2c615dffSEd Tanousregardless of whether there is user impact.
13*2c615dffSEd Tanous
14*2c615dffSEd Tanous##Tests##
15*2c615dffSEd Tanous
16*2c615dffSEd TanousRedfish-Service-Validator: A tool to verify through GET requests that bmcweb
17*2c615dffSEd Tanousproperly implements the Redfish schemas in the responded Resource.
18*2c615dffSEd Tanousgit@github.com:DMTF/Redfish-Service-Validator.git
19*2c615dffSEd Tanous
20*2c615dffSEd TanousStatus: 100% passing.  Integrated with CI to ensure no regressions.
21*2c615dffSEd Tanous
22*2c615dffSEd TanousRedfish-Protocol-Validator: A tool to verify the protocol-level interactions
23*2c615dffSEd Tanouswith the Redfish wire-protocol, and checks those against the Redfish
24*2c615dffSEd Tanousspecification.
25*2c615dffSEd Tanousgit@github.com:DMTF/Redfish-Protocol-Validator.git
26*2c615dffSEd Tanous
27*2c615dffSEd TanousStatus: 95+% of assertions passing.  No CI integration.
28*2c615dffSEd Tanous
29*2c615dffSEd Tanous
30*2c615dffSEd TanousOpenBMC-test-automation: A tool based on robot framework for testing some
31*2c615dffSEd Tanousportion of the OpenBMC Redfish use cases.
32*2c615dffSEd Tanous
33*2c615dffSEd TanousStatus: Passing for some machines with CI integration.
34*2c615dffSEd Tanous
35*2c615dffSEd Tanous
36*2c615dffSEd Tanousslowloris: A tool to verify timeouts and DOS attack mitigation is implemented properly.
37*2c615dffSEd Tanoushttps://github.com/gkbrk/slowloris
38*2c615dffSEd Tanous
39*2c615dffSEd TanousStatus: Passing, no automated enforcement.
40*2c615dffSEd Tanous
41*2c615dffSEd Tanous
42*2c615dffSEd Tanoustestssl.sh: A tool for verifying the corectness of the bmcweb cipher suites
43*2c615dffSEd Tanousagainst current recommended security standards
44*2c615dffSEd Tanoushttps://github.com/drwetter/testssl.sh
45*2c615dffSEd Tanous
46*2c615dffSEd TanousStatus: Unknown
47*2c615dffSEd Tanous
48*2c615dffSEd Tanous
49*2c615dffSEd Tanous##Clients##
50*2c615dffSEd Tanous
51*2c615dffSEd Tanousfwupd: Is a client implementation that allows updating firmware components in a
52*2c615dffSEd Tanousgeneric way, and includes redfish as one of its plugins.
53*2c615dffSEd Tanousgit@github.com:fwupd/fwupd.git
54*2c615dffSEd Tanous
55*2c615dffSEd TanousStatus: Unknown
56*2c615dffSEd Tanous
57*2c615dffSEd Tanous
58*2c615dffSEd Tanouspython-redfish-library: A python library used by a number of tools.
59*2c615dffSEd Tanousgit@github.com:DMTF/python-redfish-library.git
60*2c615dffSEd Tanous
61*2c615dffSEd TanousStatus: Compatible
62*2c615dffSEd Tanous
63*2c615dffSEd Tanous
64*2c615dffSEd TanousRedfish-Event-Listener: An example client for testing and implementing
65*2c615dffSEd TanousEventService handlers.
66*2c615dffSEd Tanoushttps://github.com/DMTF/Redfish-Event-Listener
67*2c615dffSEd Tanous
68*2c615dffSEd TanousStatus: Compatible.  No CI integration.
69*2c615dffSEd Tanous
70*2c615dffSEd Tanous
71*2c615dffSEd TanousRedfish-Tacklebox: A collection of common utilities for managing redfish servers
72*2c615dffSEd Tanousgit@github.com:DMTF/Redfish-Tacklebox.git
73*2c615dffSEd Tanous
74*2c615dffSEd TanousStatus: Unknown.
75*2c615dffSEd Tanous
76*2c615dffSEd Tanous
77*2c615dffSEd Tanousredfishtool: A generic command line tool for reading and writing operations to
78*2c615dffSEd Tanousthe Redfish server.
79*2c615dffSEd Tanoushttps://github.com/DMTF/Redfishtool
80*2c615dffSEd Tanous
81*2c615dffSEd TanousStatus: Compatible.  No automated testing.
82*2c615dffSEd Tanous
83