Commit Graph

348 Commits

Author SHA1 Message Date
Ryan Hummer
8eb68ed08a Make the type field optional for OpenRecord parsing
if -s is passed through the type field will not be present.

#rnx
#jira none
#rb josh.engebretson
#preflight skip

[CL 18843871 by Ryan Hummer in ue5-main branch]
2022-02-03 11:25:22 -05:00
Ben Marsh
a9d4363a36 Horde: Fix incorrect method called for Utf8String.LastIndexOf.
#preflight none

[CL 18830126 by Ben Marsh in ue5-main branch]
2022-02-02 13:14:21 -05:00
Josh Engebretson
89c10334de Horde: Add systemic issue handler
#jira none
#skipci
#preflight none
#rnx

[CL 18813242 by Josh Engebretson in ue5-main branch]
2022-02-01 14:51:36 -05:00
Ben Marsh
d666c0c19a Horde: Support for running standalone compute requests using HordeAgent.
- JSON job descriptor contains storage/compute server settings.
- Supports auth using OAuth2 or bearer token.
- Added static extension methods to configure Horde Storage and Horde Compute via dependency injection.

#preflight none

[CL 18788867 by Ben Marsh in ue5-main branch]
2022-01-31 08:54:35 -05:00
Ben Marsh
5e8d4f4224 Horde: Add missing JsonConverter for BucketId.
#preflight none

[CL 18786328 by Ben Marsh in ue5-main branch]
2022-01-30 16:35:48 -05:00
Ben Marsh
8f0c4a9ddd Horde: Fix test failures due to DI service lifetimes.
#preflight none

[CL 18784692 by Ben Marsh in ue5-main branch]
2022-01-29 17:56:53 -05:00
Ben Marsh
778e2ecc2a Horde: Mising file.
#preflight none

[CL 18784254 by Ben Marsh in ue5-main branch]
2022-01-29 14:55:19 -05: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
737f3f5432 Horde: Remove dependency on System.Net.Http.Json; causing analyzer errors during build.
#preflight none

[CL 18753818 by Ben Marsh in ue5-main branch]
2022-01-27 10:30:20 -05:00
jack porter
8a9ec520ce Fix iOS C++ projects from Windows installed builds
Use Windows UBT on remote Mac when using remote toolchain
#jira UE-139847
#rb Josh.Adams
#preflight https://horde.devtools.epicgames.com/job/61f0e74dff453b751b51f5f5
[FYI] josh.adams

#ROBOMERGE-AUTHOR: jack.porter
#ROBOMERGE-SOURCE: CL 18735451 in //UE5/Release-5.0/... via CL 18735453 via CL 18735540
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18735558 by jack porter in ue5-main branch]
2022-01-26 10:23:38 -05:00
Ben Marsh
0645f76b9e Missing copyright boilerplate.
#preflight none

[CL 18710625 by Ben Marsh in ue5-main branch]
2022-01-24 12:32:25 -05:00
Ben Marsh
7f9d5e4d33 Horde: Updating client API for storage.
* Now uses a single interface for the blob and ref stores (IStorageClient).
* Added an OAuth message handler which refreshes an access token as necessary.
* Added HTTP implementation of IStorageClient.

#preflight none

[CL 18710086 by Ben Marsh in ue5-main branch]
2022-01-24 11:54:10 -05:00
Ben Marsh
d8ab275d9f Horde: Remove a few more hacks for StatsV2.json issue.
#preflight none
#jira UE-110000

[CL 18689310 by Ben Marsh in ue5-main branch]
2022-01-21 10:01:27 -05:00
Ben Marsh
ec0804be31 Horde: Remove debug code for tracking down issues related to StatsV2.json file.
#preflight none
#jira UE-11000
#fyi Ryan.Hummer

[CL 18689210 by Ben Marsh in ue5-main branch]
2022-01-21 09:56:15 -05:00
Ben Marsh
8a47d2d0f5 Fix build error due to duplicated type in EpicGames.Horde.Client.
#preflight none

[CL 18689130 by Ben Marsh in ue5-main branch]
2022-01-21 09:47:25 -05:00
Ben Marsh
3355c11462 Client-facing interface for Horde.Storage.
Idea is that tools could interface with Horde Storage use this API, with concrete implementations that use HTTP, gRPC or (in the case of legacy applications within Horde.Build) communicate internally within the same process to store the data.

Errors should be surfaced using exceptions.

#preflight none

[CL 18677234 by Ben Marsh in ue5-main branch]
2022-01-20 12:50:35 -05:00
Ben Marsh
b900bab8d1 P4VUtils: Fix compile errors after recent changes to EpicGames.Perforce library.
#preflight none
#fyi Andrew.Firth

[CL 18643289 by Ben Marsh in ue5-main branch]
2022-01-18 13:28:42 -05:00
Ben Marsh
32ab8d1b88 CS: Support for serialization and deserialization of polymorphic class hierarchies into compact binary.
The base class in a hierarchy must have the [CbPolymorphic] attribute, and derived classes must have the [CbDiscriminator] attribute, giving an identifier to indicate the derived type.

#preflight none
#p4v-preflight-copy 18635755
#preflight 61e6d83a7f0c4b5aad620c89

[CL 18640150 by Ben Marsh in ue5-main branch]
2022-01-18 10:30:25 -05:00
Ben Marsh
17fda19db7 CS: Support for serialization and deserialization of polymorphic class hierarchies.
The base class in a hierarchy must have the [CbPolymorphic] attribute, and derived classes must have the [CbDiscriminator] attribute, giving an identifier to indicate the derived type.

#preflight none
#preflight 61e600aa3778a195de94dc27

[CL 18635774 by Ben Marsh in ue5-main branch]
2022-01-17 18:52:44 -05:00
Ben Marsh
edb86dcf5b Horde: Fix build error.
#preflight none

[CL 18630244 by Ben Marsh in ue5-main branch]
2022-01-16 18:52:58 -05:00
Ben Marsh
9e6e68ba17 CS: Add overloads for commonly serialized compact binary types.
#preflight 61e4a67d7b0f77175a5d6621

[CL 18630220 by Ben Marsh in ue5-main branch]
2022-01-16 18:26:30 -05:00
Ben Marsh
5e131f7ddc CS: Rename compact binary files to match the classes they contain.
#preflight none

[CL 18628533 by Ben Marsh in ue5-main branch]
2022-01-15 13:33:44 -05:00
Ben Marsh
b363c7d2ae Horde: Fix revert of files in workspaces not working correctly (missing path specification), and exception parsing OpenedRecord entries with ShortOutput option specified.
#preflight none

[CL 18628510 by Ben Marsh in ue5-main branch]
2022-01-15 13:27:02 -05:00
Ben Marsh
40c9e7cb50 Horde: Fix typo.
#preflight none

[CL 18623460 by Ben Marsh in ue5-main branch]
2022-01-14 16:23:06 -05:00
Ben Marsh
1ea7fefd32 Horde: If a call to p4 login doesn't return a proper record, call p4 login -s to get one.
#preflight none

[CL 18623341 by Ben Marsh in ue5-main branch]
2022-01-14 16:17:31 -05:00