diff --git a/build-scripts/LogParsers/1-CompilationLogParse.txt b/build-scripts/LogParsers/1-CompilationLogParse.txt new file mode 100644 index 0000000..4b4eba5 --- /dev/null +++ b/build-scripts/LogParsers/1-CompilationLogParse.txt @@ -0,0 +1,28 @@ +# +# For more information about this LogParser syntax. Look for "Jenkins Log Parser Plugin". +# +# This Parser is only interested in C++ build compilation. +# + +# Ignore this errors, warnings or infos +ok /LoadErrors/ +ok /logdatabase error/ + +# Error Lines (i.e. "error /Test Failed/" mark as error any line that contains "Test Failed") +error /Error/ + +# Warnings here +warning /Warning/ + +# Info Here +info /Total build time/ +info /Reflection code generated/ + +# Sections +start /Step1_DeleteAutoGenerated/ +start /Step2_StartBuild/ +start /Step3_CompileScripts_Win64/ +start /Step4_RunTests/ +start /Step5_BuildFiles_Win64/ +start /Step6_Optional_CookProject_Win64/ +start /Step7_Archive/ \ No newline at end of file diff --git a/build-scripts/LogParsers/2-TestLogParse.txt b/build-scripts/LogParsers/2-TestLogParse.txt new file mode 100644 index 0000000..972b4e6 --- /dev/null +++ b/build-scripts/LogParsers/2-TestLogParse.txt @@ -0,0 +1,21 @@ +# +# For more information about this LogParser syntax. Look for "Jenkins Log Parser Plugin". +# +# This TestLogParser is only interested in the functional tests. Any other warning/error will be ignored. +# + +# Error Lines (i.e. "error /Test Failed/" mark as error any line that contains "Test Failed") +error /Test Failed/ + +# Info Here +info /AutomationTestingLog/ +info /Automation Test Succeeded/ + +# Sections +start /Step1_DeleteAutoGenerated/ +start /Step2_StartBuild/ +start /Step3_CompileScripts_Win64/ +start /Step4_RunTests/ +start /Step5_BuildFiles_Win64/ +start /Step6_Optional_CookProject_Win64/ +start /Step7_Archive/ \ No newline at end of file diff --git a/build-scripts/LogParsers/3-PackageLogParse.txt b/build-scripts/LogParsers/3-PackageLogParse.txt new file mode 100644 index 0000000..47eeb3f --- /dev/null +++ b/build-scripts/LogParsers/3-PackageLogParse.txt @@ -0,0 +1,38 @@ +# +# For more information about this LogParser syntax. Look for "Jenkins Log Parser Plugin". +# +# This LogParser is only interested in Package Errors. +# + +# Ignore this errors, warning or info +ok /LoadErrors/ +ok /logdatabase error/ +ok /S_LightError.uasset/ +ok /Error Summary/ + +# Error Lines (i.e. "error /Test Failed/" mark as error any line that contains "Test Failed") +error /Error/ + +# Warnings here +warning /Warning/ + +# Info Here +info /Misc Cook Stats/ +info /Cook Profile/ +info /DDC Summary Stats/ +info /DDC Resource Stats/ +info /7-Zip/ + +# Sections +start /Step1_DeleteAutoGenerated/ +start /Step2_StartBuild/ +start /Step3_CompileScripts_Win64/ +start /Step4_RunTests/ +start /Step5_BuildFiles_Win64/ +start /Step6_Optional_CookProject_Win64/ +start /Step7_Archive/ +start /BUILD COMMAND STARTED/ +start /COOK COMMAND STARTED/ +start /STAGE COMMAND STARTED/ +start /PACKAGE COMMAND STARTED/ +start /ARCHIVE COMMAND STARTED/ \ No newline at end of file diff --git a/build-scripts/RunJenkinsAsDesktopMode.bat b/build-scripts/RunJenkinsAsDesktopMode.bat new file mode 100644 index 0000000..676d13e --- /dev/null +++ b/build-scripts/RunJenkinsAsDesktopMode.bat @@ -0,0 +1,3 @@ +CD "C:\Program Files (x86)\Jenkins" +javaw -Dhudson.util.ProcessTree.disable=true -jar jenkins.war --httpListenAddress=localhost --httpPort=666 +exit \ No newline at end of file diff --git a/build-scripts/Step1_DeleteAutoGenerated.bat b/build-scripts/Step1_DeleteAutoGenerated.bat new file mode 100644 index 0000000..3159b13 --- /dev/null +++ b/build-scripts/Step1_DeleteAutoGenerated.bat @@ -0,0 +1,5 @@ +if exist C:\ProjectName\_JenkinsCICD\Project\.vs rmdir /s /Q C:\ProjectName\_JenkinsCICD\Project\.vs +if exist C:\ProjectName\_JenkinsCICD\Project\Intermediate rmdir /s /Q C:\ProjectName\_JenkinsCICD\Project\Intermediate +if exist C:\ProjectName\_JenkinsCICD\Project\Binaries rmdir /s /Q C:\ProjectName\_JenkinsCICD\Project\Binaries +if exist C:\ProjectName\_JenkinsCICD\Project\Saved rmdir /s /Q C:\ProjectName\_JenkinsCICD\Project\Saved +if exist C:\ProjectName\_JenkinsCICD\Project\Build rmdir /s /Q C:\ProjectName\_JenkinsCICD\Project\Build \ No newline at end of file diff --git a/build-scripts/Step2_StartBuild.bat b/build-scripts/Step2_StartBuild.bat new file mode 100644 index 0000000..e618752 --- /dev/null +++ b/build-scripts/Step2_StartBuild.bat @@ -0,0 +1 @@ +"C:\Program Files\Epic Games\UE_4.19\Engine\Binaries\DotNET\UnrealBuildTool.exe" -projectfiles -project="C:\ProjectName\_JenkinsCICD\Project\Project.uproject" -game -rocket -progress \ No newline at end of file diff --git a/build-scripts/Step3_CompileScripts_Win64.bat b/build-scripts/Step3_CompileScripts_Win64.bat new file mode 100644 index 0000000..d244895 --- /dev/null +++ b/build-scripts/Step3_CompileScripts_Win64.bat @@ -0,0 +1 @@ +"C:\Program Files\Epic Games\UE_4.19\Engine\Build\BatchFiles\Build.bat" ProjectEditor Win64 development "C:\ProjectName\_JenkinsCICD\Project\Project.uproject" -waitmutex \ No newline at end of file diff --git a/build-scripts/Step4_RunTests.bat b/build-scripts/Step4_RunTests.bat new file mode 100644 index 0000000..783682f --- /dev/null +++ b/build-scripts/Step4_RunTests.bat @@ -0,0 +1,2 @@ +"C:\Program Files\Epic Games\UE_4.19\Engine\Binaries\Win64\UE4Editor.exe" "C:\ProjectName\_JenkinsCICD\Project\Project.uproject" -ExecCmds="Automation RunTests Functional Tests" -testexit="Automation Test Queue Empty" -unattended -nopause -log=autolog.txt -Windowed -ResX=1920 -ResY=1080 -Game -silent -nologtimes +type "C:\ProjectName\_JenkinsCICD\Project\Saved\Logs\autolog.txt" \ No newline at end of file diff --git a/build-scripts/Step5_BuildFiles_Win64.bat b/build-scripts/Step5_BuildFiles_Win64.bat new file mode 100644 index 0000000..c12c458 --- /dev/null +++ b/build-scripts/Step5_BuildFiles_Win64.bat @@ -0,0 +1 @@ +"C:\Program Files\Epic Games\UE_4.19\Engine\Build\BatchFiles\RunUAT.bat" BuildCookRun -project="C:\ProjectName\_JenkinsCICD\Project\Project.uproject" -noP4 -platform=Win64 -clientconfig=Development -cook -allmaps -build -stage -pak -archive -archivedirectory="C:\ProjectName\_JenkinsCICD\Builds" \ No newline at end of file diff --git a/build-scripts/Step6_Optional_CookProject_Win64.bat b/build-scripts/Step6_Optional_CookProject_Win64.bat new file mode 100644 index 0000000..5207866 --- /dev/null +++ b/build-scripts/Step6_Optional_CookProject_Win64.bat @@ -0,0 +1 @@ +"C:\Program Files\Epic Games\UE_4.19\Engine\Build\BatchFiles\RunUAT.bat" BuildCookRun -project="C:\ProjectName\_JenkinsCICD\Project\Project.uproject" -noP4 -platform=Win64 -clientconfig=Development -cook -allmaps -NoCompile -stage -pak -archive -archivedirectory="C:\ProjectName\_JenkinsCICD\Builds" \ No newline at end of file diff --git a/build-scripts/Step7_Archive.bat b/build-scripts/Step7_Archive.bat new file mode 100644 index 0000000..0ee24f2 --- /dev/null +++ b/build-scripts/Step7_Archive.bat @@ -0,0 +1,3 @@ +set "str=%~1" +cd C:\_ProjectNil\_JenkinsCICD\Builds +"C:\Program Files\7-Zip\7z.exe" a Project_Nil_%str%.zip C:\ProjectName\_JenkinsCICD\Builds\WindowsNoEditor\* \ No newline at end of file