tree 5d6092140a5c52eaf782c1ae4ba912604b491dd8
parent 84825f708e0bbd66e5bdf527970c1231aa219dfa
author Carson Labrado <clabrado@google.com> 1661298524 +0000
committer Ed Tanous <ed@tanous.net> 1661826301 +0000

Aggregation: Improve handling of certain requests

This patch cleans up a few edge cases that aren't handled properly.

We need to break out of the aggregation code earlier when there are
no satellite configs.  The logs are showing mixed messages of
Aggregation not being enabled due to no found satellite configs
followed by processing the request anyway until we fail to actually
find a satellite BMC to forward the request to.

When we don't have any satellite configs, but a request is sent to
what should be a valid satellite URI such as
/redfish/v1/Chassis/5B247A_ChassisID then we need to make sure we
return a 404 within the aggregation code since we won't locally
handle the request.  We don't have to worry about collection
requests since by design we will also locally handle the request.

This patch is also prep to allow forwarding non-GET requests to
resources that are not supported by BMCWeb.  The aggregation code
will get to handle all such requests and we need to make sure that
we do not forward non-GET requests to top level collections.

Tested:
Without any satellite configs the aggregation code exited before
it began trying to send a request to all satellites for
/redfish/v1/Chassis.  The same occurred for a request for a satellite
resource.  In the latter case the aggregation code also returned a
404.

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