Commit Graph

53 Commits

Author SHA1 Message Date
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
Joakim Lindqvist
e7039d3d35 UBT and UAT now use .NET Core instead of Framework and Mono. This means that we use the same runtime on Windows, Linux and Mac. Further benefits including newer C# features and a lot of intresting features for the future around AOT and Tiered compilation.
Some behavior changes:
Output paths - Both tools are now output to a subdirectory of Binaries/Dotnet, I believe most hardcoded paths have been fixed up but there may be tools that will fail because of this.
UAT Plugin Building - As .NET Core does not support AppDomain unloading, how we build the plugins has changed quite a bit, these are now built before UAT is started rather then by UAT itself. If you just start UAT via RunUAT.bat/sh this should just continue to work.

#rb ben.marsh

[CL 14834347 by Joakim Lindqvist in ue5-main branch]
2020-12-02 06:57:13 -04:00
Joakim Lindqvist
f236ff9ae1 Reworked Automation assembly loading in netcore again, using LoadFrom could cause multiple copies of the same assembly to be loaded (once by path and once by identity) causing very confusing errors as the same types were no longer considered the same (ptr difference).
We now always load by identity and hint to our assembly resolver were to expect to find assemblies that are not in our Engine.

#rb ben.marsh

[CL 14689002 by Joakim Lindqvist in ue5-main branch]
2020-11-09 10:57:52 -04:00
Joakim Lindqvist
7e61b4376d Fixed UAT Game specific UAT projects output location
Changed so that automation projects are loaded from their file path (LoadFrom rules) in net core as this is in practise what happened in net fw. Fixes issue were UAT projects not under Engine/Binaries couldnt be loaded.

#rb ben.marsh

[CL 14675418 by Joakim Lindqvist in ue5-main branch]
2020-11-06 06:32:39 -04:00
Joakim Lindqvist
4a3312078d -Compile for UAT is now handled by the batchfiles rather then inside UAT itself when running netcore version (as netcore does not support shadow copy so we can not update the assemblies we are running)
Also removed usages of automationtool launcher in netcore as we no longer need it.

#rb ben.marsh
#jira UE-102151

[CL 14663048 by Joakim Lindqvist in ue5-main branch]
2020-11-05 09:07:32 -04:00
Joakim Lindqvist
fd8cfb9fce UAT - Minor fixes (spelling, removing extra semicolons)
#rb none

[CL 14532231 by Joakim Lindqvist in ue5-main branch]
2020-10-21 06:16:27 -04:00
Marc Audy
a7c9001a94 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14075166
#rb
#rnx

[CL 14075271 by Marc Audy in ue5-main branch]
2020-08-11 01:36:57 -04:00
ben marsh
f2e2a48419 Add timers for UAT startup.
#rb none
#rnx
#jira

#ROBOMERGE-SOURCE: CL 11726183 in //UE4/Release-4.25/... via CL 11726203
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)

[CL 11726228 by ben marsh in Main branch]
2020-02-28 06:43:09 -05:00
ben marsh
b628ea923c Fix missing properties on command line to MSBuild when compiling automation projects.
#rb none
#jira

#ROBOMERGE-SOURCE: CL 11645538 in //UE4/Release-4.25/... via CL 11645541
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)

[CL 11645543 by ben marsh in Main branch]
2020-02-26 20:44:30 -05:00
ben marsh
08c02ecb9f Fix enumeration of UAT build products.
#rb none
#rnx
#jira

#ROBOMERGE-SOURCE: CL 11617356 in //UE4/Release-4.25/... via CL 11617364
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v655-11596533)

[CL 11617405 by ben marsh in Main branch]
2020-02-25 15:56:58 -05:00
ben marsh
373a31ef12 Fix copying of automation DLLs to output directory. Now may exist within any subfolders.
#rb none
#rnx
#jira UE-89493

#ROBOMERGE-SOURCE: CL 11611464 in //UE4/Release-4.25/... via CL 11611544
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v655-11596533)

[CL 11611575 by ben marsh in Main branch]
2020-02-25 14:13:08 -05:00
ben marsh
0f201db161 Add support for UAT script projects using foreign engine builds, and for game projects to output binaries under their own project directory.
* UAT will now read each *.Automation.csproj file to determine the output path, and load from there rather than just loading anything under Engine\Binaries\AutomationScripts.
* When compiling *.Automation.csproj files, UAT will set the $(EngineDir) directory to the current engine directory, allowing the project to resolve assembly references to the correct location.
* When generating project files, UBT will create an *.Automation.csproj.props file next to the project containing the path to the engine directory, allowing the assembly to be compiled correctly from Visual Studio.

#rb none
#jira UE-77934

#ROBOMERGE-SOURCE: CL 11601626 in //UE4/Release-4.25/... via CL 11601635
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v655-11596533)

[CL 11601659 by ben marsh in Main branch]
2020-02-25 09:26:12 -05:00
ben marsh
d24daafd83 Remove usages of "var"
#rb none
#rnx
#jira

#ROBOMERGE-SOURCE: CL 11595098 in //UE4/Release-4.25/... via CL 11595099
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v654-11333218)

[CL 11595102 by ben marsh in Main branch]
2020-02-24 22:29:16 -05: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
andrew grant
6acdb1f5c8 QOL improvements for Mac from UE4/Main that missed original branch
- Use msbuild where possible for building UAT by checking for mono5
- Hash state of UAT scritps post-compile to skip redundant rebuilds

#jira nojira
#rb na

#ROBOMERGE-SOURCE: CL 7634479 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v372-7473910)

[CL 7634480 by andrew grant in Main branch]
2019-07-26 12:09:44 -04:00
andrew grant
0e3be6e446 Cleaned up some comments (thanks MS!)
[FYI] michael.sartain


#ROBOMERGE-SOURCE: CL 7557895 via CL 7557963 via CL 7584977
#ROBOMERGE-BOT: (v372-7473910)

[CL 7606191 by andrew grant in Main branch]
2019-07-24 11:39:25 -04:00
andrew grant
fb608ba070 Now automatically detect if mono5 is installed on Mac and use msbuild if so, otherwise stick to xbuild
[FYI] arciel.rekman, michael.sartain



#ROBOMERGE-OWNER: andrew.grant
#ROBOMERGE-AUTHOR: andrew.grant
#ROBOMERGE-SOURCE: CL 7541249 via CL 7541252 via CL 7555938
#ROBOMERGE-BOT: (v372-7473910)

[CL 7555946 by andrew grant in Main branch]
2019-07-23 13:23:01 -04:00
andrew grant
5912400653 Fixed potential issue when UAT is run on a clean workspace
#ROBOMERGE-SOURCE: CL 7292923 via CL 7292924 via CL 7292927 via CL 7292932 via CL 7308928
#ROBOMERGE-BOT: (v371-7306989)

[CL 7316028 by andrew grant in Main branch]
2019-07-15 20:51:02 -04:00
andrew grant
92c8c8937f Switched UAT build process on Mac to use msbuild.
Enabled parallel msbuild for Mac
Added HashCollection class that can hold and serialize a collection of content hashes
Added quick dependency checking to UAT build by hashing csproj, input and output files for all modules
Reduced some logging when not running with -verbose

#rb Ben.Marsh
[FYI] Ben.Marsh


#ROBOMERGE-OWNER: andrew.grant
#ROBOMERGE-AUTHOR: andrew.grant
#ROBOMERGE-SOURCE: CL 7290522 via CL 7290525 via CL 7292711 via CL 7292732 via CL 7308901
#ROBOMERGE-BOT: (v371-7306989)

[CL 7315952 by andrew grant in Main branch]
2019-07-15 20:50:01 -04:00
Jeff Fisher
bcc5bcf128 Copying //UE4/Dev-VR to Main (//UE4/Main)
-Copy up for 4.23
#rb none

[CL 6911980 by Jeff Fisher in Main branch]
2019-06-10 12:22:13 -04:00
andrew grant
ce586b6d0c Updated TargetDeviceAndroid so both main and patch OBB files are copied.
Made CopyFile funtion public so code using TargetDeviceAndroid can use it.



#ROBOMERGE-SOURCE: CL 6650548 via CL 6650549 via CL 6650550 via CL 6650600
#ROBOMERGE-BOT: (vundefined-6620334)

[CL 6650603 by andrew grant in Main branch]
2019-05-27 14:24:36 -04:00
Ben Marsh
0cc6e3dca6 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
#rb none
#rnx

[CL 6631504 by Ben Marsh in Main branch]
2019-05-24 11:51:54 -04:00
ben marsh
cecbc3a7d3 Prevent UAT scripts from being rebuilt in an installed engine build.
#rb none
#jira UE-69957

#ROBOMERGE-SOURCE: CL 4983814 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 4983818 by ben marsh in Main branch]
2019-02-13 12:53:32 -05:00
Joe Barnes
55cc21d08f Copying //UE4/Dev-Console to Main (//UE4/Main) Source CL: 4825024
#lockdown: Nick.Penwarden
#rb integration

[CL 4825156 by Joe Barnes in Main branch]
2019-01-28 17:35:18 -05:00