summaryrefslogtreecommitdiff
path: root/CLIENTS.md
diff options
context:
space:
mode:
authorEd Tanous <edtanous@google.com>2022-05-16 23:51:10 +0300
committerEd Tanous <ed@tanous.net>2022-06-12 19:34:54 +0300
commit2c615dffdb6baf7e0bdd5772a39f4b97d1e38a2c (patch)
tree5ab76618f27f6721abfa41e1bd86e6cbbbc7979d /CLIENTS.md
parent7b7f04104bb3d4e8dd20fa0e338a3e7a5ae3d9fa (diff)
downloadbmcweb-2c615dffdb6baf7e0bdd5772a39f4b97d1e38a2c.tar.xz
Add initial documentation about bmcweb clients
bmcweb has a number of clients that it interacts with. Many times there have been questions about what clients are available to test with, and what the expected level of compatibility is. This commit attempts to start documenting it. It should not be considered complete, but aims to start documenting what the expected level of support one could expect when running the matrix of bmcweb vs particular clients, and, as we get more evolved, what the status is for the CI integration of said clients tests. Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: Ifdb34b951d366a74d7255ce41a6df12532f22b2f
Diffstat (limited to 'CLIENTS.md')
-rw-r--r--CLIENTS.md82
1 files changed, 82 insertions, 0 deletions
diff --git a/CLIENTS.md b/CLIENTS.md
new file mode 100644
index 0000000000..7379599c82
--- /dev/null
+++ b/CLIENTS.md
@@ -0,0 +1,82 @@
+bmcweb being a user and network facing daemon, is subject to a vast array of
+tests and clients that could target it. The below attempts to provide a
+non-exhaustive list of tests and clients that bmcweb is expected to be
+compatible with, they are split into a couple categories. Entries in the test
+category are intended to be qualification tests to ensure the bmcweb meets the
+specification. Entries in the clients category are intended to host user-facing
+functionality.
+
+The base expectation is that for master versions of bmcweb, and master versions
+of these tools, the tests pass 100%. There may be cases where we workaround
+limitations in the testing tools behavior within bmcweb to make the tools pass,
+regardless of whether there is user impact.
+
+##Tests##
+
+Redfish-Service-Validator: A tool to verify through GET requests that bmcweb
+properly implements the Redfish schemas in the responded Resource.
+git@github.com:DMTF/Redfish-Service-Validator.git
+
+Status: 100% passing. Integrated with CI to ensure no regressions.
+
+Redfish-Protocol-Validator: A tool to verify the protocol-level interactions
+with the Redfish wire-protocol, and checks those against the Redfish
+specification.
+git@github.com:DMTF/Redfish-Protocol-Validator.git
+
+Status: 95+% of assertions passing. No CI integration.
+
+
+OpenBMC-test-automation: A tool based on robot framework for testing some
+portion of the OpenBMC Redfish use cases.
+
+Status: Passing for some machines with CI integration.
+
+
+slowloris: A tool to verify timeouts and DOS attack mitigation is implemented properly.
+https://github.com/gkbrk/slowloris
+
+Status: Passing, no automated enforcement.
+
+
+testssl.sh: A tool for verifying the corectness of the bmcweb cipher suites
+against current recommended security standards
+https://github.com/drwetter/testssl.sh
+
+Status: Unknown
+
+
+##Clients##
+
+fwupd: Is a client implementation that allows updating firmware components in a
+generic way, and includes redfish as one of its plugins.
+git@github.com:fwupd/fwupd.git
+
+Status: Unknown
+
+
+python-redfish-library: A python library used by a number of tools.
+git@github.com:DMTF/python-redfish-library.git
+
+Status: Compatible
+
+
+Redfish-Event-Listener: An example client for testing and implementing
+EventService handlers.
+https://github.com/DMTF/Redfish-Event-Listener
+
+Status: Compatible. No CI integration.
+
+
+Redfish-Tacklebox: A collection of common utilities for managing redfish servers
+git@github.com:DMTF/Redfish-Tacklebox.git
+
+Status: Unknown.
+
+
+redfishtool: A generic command line tool for reading and writing operations to
+the Redfish server.
+https://github.com/DMTF/Redfishtool
+
+Status: Compatible. No automated testing.
+