8 Commits

Author SHA1 Message Date
Ben Marsh
1dd0c3c480 Horde: Start to move API definitions into EpicGames.Horde, starting with the /api/v1/projects endpoint. Exposing these classes to clients makes it much easier to write applications that communicate with the Horde server.
[CL 26002071 by Ben Marsh in ue5-main branch]
2023-06-14 22:18:34 -04:00
Ben Marsh
4c60dec87b EpicGames.Core: Use separate overloads for HTTP requests that specify a string parameter for the path. This is treated differently by HttpClient, since it's combined with the HTTP base address.
#preflight none

[CL 25512759 by Ben Marsh in ue5-main branch]
2023-05-17 14:14:48 -04:00
Ben Marsh
671a7140e4 EpicGames.Core: Add overloads for HTTP REST utility methods which take Uri arguments.
#preflight none

[CL 25478379 by Ben Marsh in ue5-main branch]
2023-05-15 15:16:12 -04:00
Ben Marsh
075162706e EpicGames.Core: Fix static analysis warnings.
#preflight 633b4ae16b10157eac6f1f15

[CL 22314153 by Ben Marsh in ue5-main branch]
2022-10-03 17:01:13 -04:00
Ben Marsh
95988154f6 EpicGames.Core: Fix warnings compiling against NET 6 SDK.
#preflight none

[CL 22274903 by Ben Marsh in ue5-main branch]
2022-09-30 13:49:15 -04:00
Ben Marsh
cda1b66bba Reformat EpicGames.Core according to standard coding conventions.
#preflight 623cd2e84368f558e30b4a9e

[CL 19502309 by Ben Marsh in ue5-main branch]
2022-03-24 16:35:00 -04:00
Ben Marsh
1efd86c9da Horde: Use Horde.Storage for remote execution storage, rather than the legacy storage implementation in Horde.Build.
- Agent and server both use the IStorageClient interface in EpicGames.Horde to communicate with the storage backend.
- An instance of Horde.Storage is run in the same process as Horde.Build for local development, but is compiled out for containerized builds.
- Compute clusters are defined in global config file, and control permissions for who can create remote execution jobs. In the future it will likely be used to control access for different machines, prioritization, etc...
- Each compute cluster has an identifier, and the API for starting/monitoring jobs includes that identifier as part of the route (ie. /api/v1/compute/<cluster-id>).
- Removed gRPC interface for storage and compute services. May be resurrected in the future.

#preflight none

[CL 18784247 by Ben Marsh in ue5-main branch]
2022-01-29 14:50:26 -05:00
Ben Marsh
3275355fdf Merging functionality from Horde fork of EpicGames.Core, and first pass on fixing up nullable annotations.
#rb none
#rnx

[CL 14967557 by Ben Marsh in ue5-main branch]
2020-12-28 14:34:13 -04:00