diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 542a0c12b891f53a9fef1aeab874f251402d76ec..baddd9017da8f2d5878e18145f05bde12825e4aa 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,6 +3,34 @@ # Virtual Reality & Immersive Visualisation Group. #------------------------------------------------------------------------------- +spec: + inputs: + unreal_version: + description: The Unreal Engine version in the form of "major.minor" + type: string + regex: \d+\.\d+ + default: "5.4" + build_type: + description: The game build type. + type: string + options: ["DebugGame", "Shipping"] + default: "DebugGame" + number_of_old_versions: + description: How many successful pipeline builds of this branch should be stored on the cluster. + type: number + default: 3 + custom_ndisplay_config: + description: Custom nDisplay config stored on the cluster filesystem. + type: string + default: "" + use_zen: + description: Whether or not to connect to the shared Zen storage server. Speeds up build but temporarily modifies DefaultEngine.ini., so turn off if weird build errors happen. + type: boolean + default: true + +--- + + # The include file can be change to either be removed or reference a specific commit. include: @@ -41,8 +69,10 @@ include: # Use the CUSTOM_NDISPLAY_CONFIG variable in case you need a custom ndisplay config. These are always located in /home/vrdemo/configs/ndisplay. variables: - UNREAL_VERSION: "5.5" - CUSTOM_NDISPLAY_CONFIG: "aixcave_5_4.ndisplay" + UNREAL_VERSION: $[[ inputs.unreal_version ]] + NUMBER_OF_OLD_VERSIONS: $[[ inputs.number_of_old_versions ]] + CUSTOM_NDISPLAY_CONFIG: $[[ inputs.custom_ndisplay_config ]] + USE_SHARED_CACHE_ZEN: $[[ inputs.use_zen ]] stages: - analyze @@ -113,7 +143,7 @@ Build_Windows: GIT_STRATEGY: none GIT_CHECKOUT: "false" # CLIENT_CONFIG: "Shipping" - CLIENT_CONFIG: "DebugGame" + CLIENT_CONFIG: $[[ inputs.build_type ]] needs: - job: "Generate_Project" artifacts: true @@ -134,7 +164,7 @@ Build_Linux: GIT_STRATEGY: none GIT_CHECKOUT: "false" # CLIENT_CONFIG: "Shipping" - CLIENT_CONFIG: "DebugGame" + CLIENT_CONFIG: $[[ inputs.build_type ]] needs: - job: "Generate_Project" artifacts: true @@ -146,16 +176,7 @@ Build_Linux_Without_Cluster: needs: - job: "Generate_Project_Without_Cluster" artifacts: true - -# Deploys to vrdev -.Deploy_Windows: - rules: - - if: $CI_PIPELINE_SOURCE == "web" - - if: $CI_PIPELINE_SOURCE == "schedule" - extends: .Deploy_VRDev_ - needs: - - job: "Build_Windows" - artifacts: true + # Deploys to vrdemo instead of av006de. Use extends: .Deploy_CAVE_ to deploy to legacy av006de Deploy_CAVE: