diff --git a/shared_scripts.yml b/shared_scripts.yml index 48c8df9d6d488eeef635dfb873abc103f45cc510..2b84973a45236838ed68c9a437f1bd3481055704 100644 --- a/shared_scripts.yml +++ b/shared_scripts.yml @@ -14,6 +14,7 @@ variables: SHARED_META_URL: "https://git-ce.rwth-aachen.de/vr-vis/VR-Group/unreal-development/unreal-ci/-/raw/master/shared.meta" UNREAL_VERSION: "5.3" CUSTOM_NDISPLAY_CONFIG: "" + USE_SHARED_CACHE_ZEN: "true" ##################################Generate Project################################## @@ -75,6 +76,10 @@ variables: # Preparation and building stage - $env:Path="$env:PREPEND_PATH;$env:Path;$env:APPEND_PATH" - $env:PROJECT_NAME=(Get-ChildItem *.uproject).BaseName + # Add shared ZenServer to Storage servers if not disabled: + - if ($Env:USE_SHARED_CACHE_ZEN -eq "true") { + - Add-Content -Path "$Env:CI_PROJECT_DIR/Config/DefaultEngine.ini" -Value '[StorageServers]' + - Add-Content -Path "$Env:CI_PROJECT_DIR/Config/DefaultEngine.ini" -Value "Shared=(Host=`"$Env:ZEN_SHARED_URL`", Namespace=`"vrgroup.ddc`", EnvHostOverride=UE-ZenSharedDataCacheHost, CommandLineHostOverride=ZenSharedDataCacheHost, DeactivateAt=60)" } - . "$env:UE_ENGINES_FOLDER\UE_$env:UNREAL_VERSION\Engine\Build\BatchFiles\RunUAT.bat" BuildCookRun -Project="$env:CI_PROJECT_DIR/$env:PROJECT_NAME.uproject" -WaitMutex -NoP4 -TargetPlatform=Win64 -ClientConfig="$env:CLIENT_CONFIG" -Cook -allmaps -Build -Stage -Pak -Iterate -utf8output -Archive -ArchiveDirectory="$env:CI_PROJECT_DIR/Release/$env:CI_PROJECT_NAME" -installed -Package ($env:EXTRA_ARGS); $env:EXIT_CODE=$LASTEXITCODE # Copy build logs - mkdir -f "$env:CI_PROJECT_DIR/Release/$env:CI_PROJECT_NAME/BuildLogs/" | out-null @@ -121,7 +126,7 @@ variables: - echo -e "\e[31mERROR To specify the Unreal Version, change the UNREAL_VERSION variable in your .gitlab-ci.yml!" - exit 1 - fi - # Clean folder before building. Exclude cache for now + # Clean folder before building. Exclude cache if set. However, Cache is unused at the moment, as Zen provides more benefits! - if [[ "${CLEAN_CACHE}" = "true" ]] ; then - git clean -qxfdf && git submodule foreach --quiet --recursive git clean -qxfdf - else @@ -136,6 +141,11 @@ variables: - if [[ $ASSOCIATION = [0-9]*\.[0-9]* && "$ASSOCIATION" != "$UNREAL_VERSION" ]]; then - echo -e "\e[33mWARNING The Unreal Engine version on the runner does not match your project version.\nProject version:\t${ASSOCIATION}\nRunner version:\t\t${UNREAL_VERSION}\e[m" - fi + # Add shared ZenServer to Storage servers if not disabled: + - if [[ "${USE_SHARED_CACHE_ZEN}" = "true" ]] ; then + - echo '[StorageServers]' >> ${CI_PROJECT_DIR}/Config/DefaultEngine.ini + - echo "Shared=(Host=\"$ZEN_SHARED_URL\", Namespace=\"vrgroup.ddc\", EnvHostOverride=UE-ZenSharedDataCacheHost, CommandLineHostOverride=ZenSharedDataCacheHost, DeactivateAt=60)" >> ${CI_PROJECT_DIR}/Config/DefaultEngine.ini + - fi - EXIT_CODE=0 - (${UE_ENGINE_FOLDER}/Build/BatchFiles/RunUAT.sh BuildCookRun -project="${CI_PROJECT_DIR}/${PROJECT_NAME}.uproject" -WaitMutex -nop4 -targetplatform=Linux -clientconfig=${CLIENT_CONFIG} -cook -allmaps -build -stage -pak -iterate -utf8output -archive -archivedirectory="${CI_PROJECT_DIR}/Release/${CI_PROJECT_NAME}" -installed -package -nocompile ${EXTRA_ARGS}) || EXIT_CODE=$? # Copy build logs