tree a4cad67bda45206f9b0e95c70b5811ec142da53f
parent 7f8d8fa938f521d18278e9cb5673bacd83217d09
author Carson Labrado <clabrado@google.com> 1659382698 +0000
committer Ed Tanous <edtanous@google.com> 1661291252 -0700

Aggregation: Prepare for routing requests

We do not want to allow a HW config to set its own prefix since that
results in HW choosing and hardcoding resource URIs.  Removes using
"Name" from the satellite config as the config's prefix.

For now assume there will be no more than one satellite bmc.  We will
always assign that config to be "aggregated0".  If more than one
config is present then we will not attempt to forward any requests.
In a future patch we will add support for aggregating multiple
satellite BMCs.  The aggregator will be responsible for assigning the
prefixes to each satellite.

When we receive a request we parse the resource ID to see if it
begins with "aggregated" and thus should be forwarded to a satellite
BMC.  In those cases we should not locally handle the request.  We
return a 500 error, but in a future patch that will be replaced by
the actual code to forward the request to the appropriate satellite.

Requests for resource collections need to be both handled locally and
forwarded.  Place holders are added for where the forwarding will
occur.  A future patch will add that functionality.

Tested:
Exposed two configs in an entity-manager json:
"Exposes": [
{
  "Hostname": "127.0.0.1",
  "Port": "443",
  "Name": "Sat1",
  "Type": "SatelliteController",
  "AuthType": "None"
},
{
  "Hostname": "127.0.0.1",
  "Port": "444",
  "Name": "Sat2",
  "Type": "SatelliteController",
  "AuthType": "None"
},

It produced an error that only one satellite is supported and as a
result both configs were ignored.  I removed the second config and
that resulted in the first (and only) config being added as
"aggregated0".

Requests for local resources were ignored by the aggregation code.
Requests for collections hit the forward collection endpoints and
return local results.

500 returned for satellite resources such as:
/redfish/v1/Chassis/aggregated0_Fake
/redfish/v1/UpdateService/FirmwareInventory/aggregated0_Fake
/redfish/v1/UpdateService/SoftwareInventory/aggregated0_Fake

Change-Id: I5c860c01534e7d5b1a37c95f75be5b3c1f695816
Signed-off-by: Carson Labrado <clabrado@google.com>
Signed-off-by: Ed Tanous <edtanous@google.com>
