Commit Graph

103 Commits

Author SHA1 Message Date
sebastian schoner
a7c5f5f909 Allow to skip -fileopenlog for cooks
The file open log is a facility that automatically keeps a log of all files the process has opened and their order. This is rather expensive as it (a) also tracks failed attempts to open files and (b) it maintains a large table in memory, storing which files have already been opened (so every file is only logged once). This table can easily grow into the tens of megabytes; even on an empty project I see this taking 60MB by itself. Making this optional allows us to skip this step for UEFN cloud cooks: in these cases we're throwing that log file away anyway.

#rb rob.perren

[CL 30344591 by sebastian schoner in ue5-main branch]
2023-12-15 04:22:42 -05:00
Ben Marsh
235eb77726 Change to structured logging in other AutomationTool projects.
#preflight 6408c4478c0039bbf750e861

[CL 24562553 by Ben Marsh in ue5-main branch]
2023-03-08 12:43:35 -05:00
PJ Kack
b1764482c1 UAT: Make sure to use the specified unreal executable instead of a hard coded development one when launching the cook on the fly server.
Fix bug where quick launching with cotf from a debug editor failed to launch the cook server due to a missing or old development editor executable.
Since the default executable is the the console -cmd.exe one, implement ShellExecute to open a separate shell for the server output, also fixes duplicated stdout lines in that window.
Improve BuildCookRun log messages for booting and shutting down server and client.

#jira UE-173897, UEENGQA-80955
#rb carlmagnus.nordin
#preflight 63ca9499c503023ab986b09c

[CL 23788926 by PJ Kack in ue5-main branch]
2023-01-20 08:38:42 -05:00
Dan Thompson
7c8f356b9a Removing GetNumCookersToSpawn as it hasn't been used in a long long time.
#jira UE-158607
#preflight 62cc784c173a4f340870d564
#rb matt.peters

[CL 21046824 by Dan Thompson in ue5-main branch]
2022-07-11 16:33:40 -04:00
PJ Kack
5d0ce32acd UAT: For editor quick launch and packaging, only pass -iostore and -compressed when using -pak, and never pass -compressed to the cook commandlet (that feature has been removed).
#jira none
#rb carlmagnus.nordin
#rnx
#preflight 6273b3d45b05fb4f60112bbe

[CL 20056179 by PJ Kack in ue5-main branch]
2022-05-05 07:41:13 -04:00
PJ Kack
6b6bc48fc5 UAT: Add additional startup and BuildCookRun logging and timings
#jira none
#rb trivial
#rnx
#preflight 627379dda56dd762120e6e2e

[CL 20055418 by PJ Kack in ue5-main branch]
2022-05-05 03:40:01 -04:00
Francis Hurteau
c719a4680a Add commandline boilerplate to support optional cooking through UAT
#rb Matt.Peters
#jira UE-142231
#preflight none

[CL 19929815 by Francis Hurteau in ue5-main branch]
2022-04-26 17:52:04 -04:00
PJ Kack
5f6c6d5beb UAT: Add BuildCookRun support for running both a dedicated server and cotf server.
Merge RunClientWithServer() and RunStandAloneClient() functions into one RunClient() function to resolve numerous inconsistencies between them and between unattended/non-unattended mode.
Always use SC.StageTargetPlatform.RunClient() to launch clients so that the logic works on all platforms.
When either the client, dedicated server or cook server exits, then all other processes exits too.
Hitting Ctrl-c in UAT kills all processes.

ShooterGame testing on Win64, consoles and android:
BuildCookRun -project=ShooterGame -platform=Win64 -config=development -skipbuild -cook -stage -pak -deploy -run
BuildCookRun -project=ShooterGame -platform=Win64 -config=development -skipbuild -skipcook -skipstage -skipdeploy -run
BuildCookRun -project=ShooterGame -platform=Win64 -config=development -skipbuild -skipcook -skipstage -skipdeploy -run -unattended
BuildCookRun -project=ShooterGame -platform=Win64 -config=development -skipbuild -cookonthefly -stage -deploy -run
BuildCookRun -project=ShooterGame -platform=Win64 -config=development -skipbuild -cookonthefly -stage -deploy -run -unattended
BuildCookRun -project=ShooterGame -platform=Win64 -config=development -skipbuild -cookonthefly -zenstore -stage -deploy -run
BuildCookRun -project=ShooterGame -platform=Win64 -config=development -skipbuild -cookonthefly -zenstore -stage -deploy -run -unattended

ShooterGame Win64 Desktop specific testing with lan server and multiple clients:
BuildCookRun -project=ShooterGame -platform=Win64 -config=development -skipbuild -cookonthefly -zenstore -server -stage -run -map=Highrise -numclients=3
BuildCookRun -project=ShooterGame -platform=Win64 -config=development -skipbuild -cookonthefly -zenstore -server -stage -run -map=Highrise -numclients=3 -unattended

EngineTest testing on Win64 and console:
BuildCookRun -project=EngineTest -platform=Win64 -config=development -skipbuild -cook -stage -pak -deploy -run -runautomationtest=Project.System
BuildCookRun -project=EngineTest -platform=Win64 -config=development -skipbuild -cookonthefly -stage -deploy -run -runautomationtest=Project.System
BuildCookRun -project=EngineTest -platform=Win64 -config=development -skipbuild -cookonthefly -zenstore -stage -deploy -run -runautomationtest=Project.System

#jira none
#rb carlmagnus.nordin
#rnx
#preflight 624d79fdbf5b974989964f4c

[CL 19645492 by PJ Kack in ue5-main branch]
2022-04-06 08:03:43 -04:00
PJ Kack
fb761d393f UAT: Cleanup the CookCommand in BuildCookRun and share generic cook command line arguments between CBTB and COTF.
CBTB will now use the -zenstore parameter.
COTF will now use -AdditionalCookerOptions just as CBTB, and stop using the RunCommandline from -addcmdline.
COTF will now use the -buildmachine, -ddc, -unversioned, -fastcook, -skipeditorcontent, -outputdir and config override parameters.

#jira none
#rb carlmagnus.nordin
#rnx
#preflight 6228a93131133a23da7e920a

[CL 19319173 by PJ Kack in ue5-main branch]
2022-03-09 08:26:47 -05:00
Catalin Dragoiu
aba8c30dbe Added support for the -trace and -tracehost parameters for BuildCookRun
#jira UE-101084
#rb Ryan.Hummer Ionut.Matasaru
#preflight 6221e6d1a00412627d36aafc

[CL 19265555 by Catalin Dragoiu in ue5-main branch]
2022-03-04 09:14:28 -05:00
CarlMagnus Nordin
f8b620a20a ZenCOTF:
Created ExternalCookOnTheFlyServer editor object for communicating with a running Zen COTF server
Recook packages when they are saved in the editor
#rnx
#preflight 62050bfde54ab7c24bb58f8f
#rb pj.kack

[CL 18934629 by CarlMagnus Nordin in ue5-main branch]
2022-02-10 08:23:16 -05:00
josh adams
7953398a50 - Refactored RunCommandlet and Project.Cook() so that a script can start cooking or other commandlet while doing something else (like monitoring the output)
#rb david.harvey
#p4v-preflight-copy 18808074
#preflight 61f9482afa6554dff3d32331

#ROBOMERGE-AUTHOR: josh.adams
#ROBOMERGE-SOURCE: CL 18817268 via CL 18826813 via CL 18826876 via CL 18826925 via CL 18835873 via CL 18836741
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18836916 by josh adams in ue5-main branch]
2022-02-02 18:42:35 -05:00
aurel cordonnier
34f55d3a4a Merge from Release-Engine-Test @ 17946149 to UE5/Main
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035

[CL 17949667 by aurel cordonnier in ue5-main branch]
2021-10-27 15:14:40 -04:00
jonathan adamczewski
c48925af31 AutomationTool:
Move Project class into a namespace (rather than global class), and consequent using changes to consumers of the class.

#jira none
#trivial

[CL 16933076 by jonathan adamczewski in ue5-main branch]
2021-07-22 20:27:06 -04:00
Per Larsson
cd7e077d77 Simplify command line arguments when running COTF with Zen loader/storage server
- changed Cooker arguments from -CookOnTheFly -IoStore to -CookOnTheFly -ZenStore
- changed Zen host argument from -StorageServerHost to -ZenStoreHost
- updated UAT to support running CBTB with -ZenStore
- updated StorageServerConnection to handle multiple hosts from command line

Cooker:
  CBTB: -ZenStore
  COTF: -ZenStore -CookOnTheFly

Game:
  CBTB: -ZenStoreHost=<ip> or <ip1,ip2>
  COTF: -ZenStoreHost=<ip> or <ip1,ip2> -CookOnTheFly

#rb CarlMagnus.Nordin
#jira none
#rnx

[CL 16849969 by Per Larsson in ue5-main branch]
2021-07-14 10:38:23 -04:00
Zousar Shaker
cf116088ae Integrating //UE5/Dev-Cooker @ 16678003 to //UE5/Main (Zousar.Shaker-YEG-0943-Quaternary)
Non-DevIteration_ShooterGame

[CL 16678907 by Zousar Shaker in ue5-main branch]
2021-06-15 16:36:57 -04:00
jonathan adamczewski
4ece24e65a AutomationTool, BuildUtilities:
UnrealBuild -> Unreal for EngineDirectory, RootDirectory, IsEngineInstalled, UnrealBuildToolPath
Remove CommandUtils EngineDirectory, RootDirectory, IsEngineInstalled - use equvalents from UnrealBuildBase.Unreal

#jira none

[CL 16648181 by jonathan adamczewski in ue5-main branch]
2021-06-11 18:20:44 -04:00
Marc Audy
01b7c9f4f5 Merge UE5/RES @ 15958325 to UE5/Main
This represents UE4/Main @ 15913390 and Dev-PerfTest @ 15913304

[CL 15958515 by Marc Audy in ue5-main branch]
2021-04-08 14:32:07 -04:00
Ben Marsh
6f927647b1 Changing C# code over to using EpicGames.Core over DotNETCommon.
#rb none
#rnx

[CL 14962096 by Ben Marsh in ue5-main branch]
2020-12-21 23:07:37 -04:00
Marcus Wassmer
3b81cf8201 Merging using //UE5/Main_to_//UE5/Release-Engine-Staging @14384769
autoresolved files
#rb none

[CL 14384911 by Marcus Wassmer in ue5-main branch]
2020-09-24 00:43:27 -04:00
Marc Audy
11f5b21210 Merging //UE5/Release-Engine-Staging @ 13752110 to Main (//UE5/Main)
#rnx

[CL 13753156 by Marc Audy in ue5-main branch]
2020-06-23 18:40:00 -04:00
Ryan Durand
9ef3748747 Updating copyrights for Engine Programs.
#rnx
#rb none
#jira none

#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869242 in //Fortnite/Release-12.00/... via CL 10869536
#ROBOMERGE-BOT: FORTNITE (Main -> Dev-EngineMerge) (v613-10869866)

[CL 10870955 by Ryan Durand in Main branch]
2019-12-26 23:01:54 -05:00
Ben Marsh
3cf7fb39fc Remove #region blocks.
#rb none
#rnx

[CL 8676383 by Ben Marsh in Dev-Build branch]
2019-09-13 14:02:02 -04:00
jeff williams
2840338297 Switching SharedCookedBuild to be stateful
Support multiple simultaneous platform targets
Fix to use CookPlatform correctly


#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: jeff.williams
#ROBOMERGE-SOURCE: CL 6083456 via CL 6088205 via CL 6088231
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 6117733 by jeff williams in Dev-Build branch]
2019-04-26 21:14:17 -04:00
jeff williams
9747eb20e7 Adding support for shared iterative cooks from manifests.
Fall back path to loose staged builds.
Fall back path to existing synced builds.


#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: jeff.williams
#ROBOMERGE-SOURCE: CL 5681890 via CL 5681938 via CL 5681948
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5683745 by jeff williams in Dev-Build branch]
2019-04-02 05:59:51 -04:00