JD2022-TU1/main/phone_apps/BuilderScripts/build_jdcontroller_android.bat

71 lines
2.4 KiB
Batchfile

@echo off
rem This scripts relies on the following environment variables to
rem be set prior to its execution:
rem - %CODE_LOCAL_SRC_PATH% (JD depot root, parent folder of the branches)
rem - %unity_exe% (path to Unity editor exe)
set BRANCH=%1
set VARIANT=%2
set PROJECT_PATH=%CODE_LOCAL_SRC_PATH%\%BRANCH%\phone_apps\JDCompanionApp
set BUILD_METHOD=Builder.Build_Android_%VARIANT%
set LOG_PATH=%CODE_LOCAL_SRC_PATH%\%BRANCH%\UnityLogs
set BUILD_LOG="%LOG_PATH%\build_%BRANCH%_%VARIANT%.txt"
set TESTS_LOG="%LOG_PATH%\tests_%BRANCH%_%VARIANT%.txt"
set TESTS_RESULT="%LOG_PATH%\tests_%BRANCH%_%VARIANT%.xml"
set OUTPUT_PATH="%PROJECT_PATH%\Build\Android-%VARIANT%"
set TEMP_OUTPUT_PATH="%PROJECT_PATH%\Build\Android-%VARIANT%-Temp"
rem ------------------------------------------------------------------------------------------------------
rem main
rem ------------------------------------------------------------------------------------------------------
rem Get start time:
for /F "tokens=1-4 delims=:.," %%a in ("%time%") do (
set /A "startTime=(((%%a*60)+1%%b %% 100)*60+1%%c %% 100)*100+1%%d %% 100"
)
call :CleanPrevious
call :RunUnitTests
call :BuildApk
rem Get end time:
for /F "tokens=1-4 delims=:.," %%a in ("%time%") do (
set /A "endTime=(((%%a*60)+1%%b %% 100)*60+1%%c %% 100)*100+1%%d %% 100"
)
rem Get elapsed time:
set /A elapsed=endTime-startTime
rem Show elapsed time:
set /A hh=elapsed/(60*60*100), rest=elapsed%%(60*60*100), mm=rest/(60*100), rest%%=60*100, ss=rest/100, cc=rest%%100
if %mm% lss 10 set mm=0%mm%
if %ss% lss 10 set ss=0%ss%
if %cc% lss 10 set cc=0%cc%
echo "DONE: JDController built (%hh%:%mm%:%ss%,%cc%)"
goto :EOF
rem ------------------------------------------------------------------------------------------------------
:CleanPrevious
echo Clean output build for android-%VARIANT%
mkdir empty-dir
robocopy empty-dir %PROJECT_PATH%\Build /MIR
rmdir empty-dir
if exist %OUTPUT_PATH% rmdir /S /Q %OUTPUT_PATH%
if exist %TEMP_OUTPUT_PATH% rmdir /S /Q %TEMP_OUTPUT_PATH%
goto :EOF
:RunUnitTests
echo Running Unit Tests
%unity_exe% -batchmode -projectPath %PROJECT_PATH% -logFile %TESTS_LOG% -runEditorTests -editorTestsResultFile %TESTS_RESULT%
IF ERRORLEVEL 1 EXIT 1
goto :EOF
:BuildApk
echo Building JDController for branch %BRANCH% with variant %VARIANT%
%unity_exe% -batchmode -projectPath %PROJECT_PATH% -executeMethod %BUILD_METHOD% -logFile %BUILD_LOG% -buildTarget android -quit
IF ERRORLEVEL 1 EXIT 1
goto :EOF