Commit Graph

16 Commits

Author SHA1 Message Date
ben marsh
eb6c312c09 Horde: Fix BuildAndTestProject.xml making assumptions about $(IsBuildMachine) meaning that we're running in an Epic-internal environment. Also publish artifacts to Horde.
#jira UE-210869, UE-210902

[CL 32616687 by ben marsh in ue5-main branch]
2024-03-29 12:30:20 -04:00
ben marsh
658712be03 BuildGraph: Add support for setting artifact metadata in buildgraph scripts.
[CL 32464121 by ben marsh in ue5-main branch]
2024-03-24 19:35:13 -04:00
ben marsh
8cfd16cb7c Horde: Propagate artifact keys from BuildGraph scripts to Horde.
#rnx

[CL 32322725 by ben marsh in ue5-main branch]
2024-03-19 08:41:25 -04:00
ben marsh
d45e9a8912 Horde: Add output artifacts to the graph from the exported BuildGraph definition.
#jira UE-209346

[CL 32281799 by ben marsh in ue5-main branch]
2024-03-15 15:15:38 -04:00
ben marsh
eb6705de13 Horde: Add additional artifact parameters to BuildGraph scripts.
#rnx

[CL 32273839 by ben marsh in ue5-main branch]
2024-03-15 10:57:16 -04:00
Ben Marsh
361b4a9555 Horde: Fix some random static analyzer messages.
[CL 27827663 by Ben Marsh in ue5-main branch]
2023-09-13 09:12:25 -04:00
Ben Marsh
b32b2511dc Horde: IDE warning fixes.
[CL 27026682 by Ben Marsh in ue5-main branch]
2023-08-11 09:53:01 -04:00
Ben Marsh
d32e8436c1 BuildGraph: Store artifact keys in the tag manifest rather than in the exported graph definition, since they may include non-constant values from build arguments.
#preflight none

[CL 25057984 by Ben Marsh in ue5-main branch]
2023-04-14 21:42:00 -04:00
Ben Marsh
86ccb45313 BuildGraph: Add support for explicitly labeling artifacts from a build using the <Artifact> element.
- Each artifact is named, and by default any files added to a tag with the name of the artifact will be treated as belonging to it.
- Artifacts can have include an optional set of keys that can be queried against on Horde.
- The host system (eg. Horde) is deemed responsible for archiving artifacts for later retrieval.

#preflight none

[CL 25048052 by Ben Marsh in ue5-main branch]
2023-04-14 15:43:33 -04:00
Ben Marsh
2f7d96f1d9 Horde: Fix input/output names (again).
#preflight none

[CL 22363351 by Ben Marsh in ue5-main branch]
2022-10-05 17:01:09 -04:00
Ben Marsh
9015ef1b76 Horde: Fix inputs/outputs not being propagated to graph definition.
#preflight none

[CL 22360709 by Ben Marsh in ue5-main branch]
2022-10-05 14:58:05 -04:00
Ben Marsh
331eeb32ac Horde: Add inputs and outputs to exported Horde job definition.
#preflight none

[CL 22354545 by Ben Marsh in ue5-main branch]
2022-10-05 10:12:55 -04:00
Ben Marsh
330f1e7155 EpicGames.BuildGraph: Fix warnings when compiling against NET 6 SDK.
#preflight none

[CL 22274984 by Ben Marsh in ue5-main branch]
2022-09-30 13:52:23 -04:00
Ben Marsh
5e955f8f8b BuildGraph: Fix labels having empty list of included nodes.
#preflight none

[CL 21061685 by Ben Marsh in ue5-main branch]
2022-07-12 15:52:23 -04:00
Ben Marsh
38f3bc55ef BuildGraph: Various VM improvements.
* Added support for deserializing BgObject types directly into native classes.
* Removed opcodes for creating graph structures. These are now created in user code from BgObject types.
* Removed BgNodeSpecBuilder. BgNode objects can now be modified directly (returning a modified copy).
* Added concrete types for option parameters. The VM now keeps track of any parameters for evaluated options, allowing them to be added into the graph definition.
* Order dependencies now take nodes rather than outputs.
* Added explicit support for native thunks, whose bindings are saved to a sideband channel during compilation and referenced in bytecode as an index. This generalizes code that was previously specific to node definitions.
* Added a name table to bytecode, to optimize situations where we reference the same string mulitple times.

#preflight 62bf3c583f0d6beee2e8f4a6

[CL 20918762 by Ben Marsh in ue5-main branch]
2022-07-01 14:47:54 -04:00
Ben Marsh
bb0e506aac BuildGraph: Rename classes to reduce boilerplate when writing scripts.
* Expression classes (nodes, aggregates, graphs, etc...) are now called BgNode, BgAggregate, etc...
* Evaluated and instantiated objects used by BuildGraph internals are now called BgNodeDef, BgAggregateDef, etc...

#preflight 62b6374161016695a6545b08

[CL 20818158 by Ben Marsh in ue5-main branch]
2022-06-24 18:30:51 -04:00