2024-03-07 17:36:40 +01:00
|
|
|
stages:
|
2024-03-08 20:19:32 +01:00
|
|
|
- format
|
2024-03-08 20:26:40 +01:00
|
|
|
- build
|
2024-03-17 01:15:34 +01:00
|
|
|
|
|
|
|
variables:
|
|
|
|
# https://docs.gitlab.com/ee/ci/runners/configure_runners.html
|
|
|
|
TRANSFER_METER_FREQUENCY: "2s"
|
|
|
|
ARTIFACT_COMPRESSION_LEVEL: "fast"
|
|
|
|
CACHE_COMPRESSION_LEVEL: "fastest"
|
|
|
|
CACHE_REQUEST_TIMEOUT: 5
|
|
|
|
# Use FASTZIP for faster compression in cache and artifacts
|
|
|
|
# https://docs.gitlab.com/runner/configuration/feature-flags.html#available-feature-flags
|
|
|
|
FF_USE_FASTZIP: true
|
|
|
|
|
|
|
|
# Our Variables
|
|
|
|
CACHE_DIR: "$CI_PROJECT_DIR/ccache"
|
|
|
|
CCACHE_DIR: $CACHE_DIR
|
|
|
|
|
|
|
|
|
2024-03-14 22:35:22 +01:00
|
|
|
#CLANG FORMAT - CHECKS CODE FOR FORMATTING ISSUES
|
2024-03-08 20:26:40 +01:00
|
|
|
clang-format:
|
|
|
|
stage: format
|
2024-03-15 14:41:16 +01:00
|
|
|
image: suyuemu/cibuild:clangformat
|
2024-03-15 15:48:12 +01:00
|
|
|
#THIS HAS TO BE FALSE. IT KEEPS RESOURCES AVAILABLE - EG RUNNERS WONT TRY BUILDING IF CODEBASE IS WRONG
|
|
|
|
#MR's NEED TO BE CORRECTLY CLANG FORMATTED
|
|
|
|
allow_failure: false
|
2024-03-08 20:26:40 +01:00
|
|
|
script:
|
2024-03-08 23:44:03 +01:00
|
|
|
- git submodule update --init --depth 1 --recursive
|
2024-03-08 20:26:40 +01:00
|
|
|
- bash .ci/scripts/format/script.sh
|
2024-03-15 20:55:53 +01:00
|
|
|
tags:
|
2024-03-15 22:11:45 +01:00
|
|
|
# - Linux
|
|
|
|
# - Windows
|
2024-03-15 20:55:53 +01:00
|
|
|
- Parallelized
|
2024-03-18 10:16:46 +01:00
|
|
|
- Format
|
2024-03-17 01:15:34 +01:00
|
|
|
|
2024-03-14 22:35:22 +01:00
|
|
|
#LINUX BUILD - BUILDS LINUX APPIMAGE
|
2024-03-07 17:36:40 +01:00
|
|
|
build-linux:
|
2024-03-07 01:05:52 +01:00
|
|
|
stage: build
|
2024-03-15 14:41:16 +01:00
|
|
|
image: suyuemu/cibuild:linux-x64
|
2024-03-07 17:36:40 +01:00
|
|
|
resource_group: linux-ci
|
2024-03-17 01:15:34 +01:00
|
|
|
cache:
|
|
|
|
key: "$CI_COMMIT_REF_NAME-ccache"
|
|
|
|
paths:
|
|
|
|
- $CACHE_DIR
|
|
|
|
before_script:
|
|
|
|
- mkdir -p $CACHE_DIR
|
|
|
|
- chmod -R 777 $CACHE_DIR
|
|
|
|
- ls -la $CACHE_DIR
|
2024-03-07 17:36:40 +01:00
|
|
|
variables:
|
2024-03-14 22:35:22 +01:00
|
|
|
GIT_SUBMODULE_STRATEGY: recursive
|
|
|
|
GIT_SUBMODULE_DEPTH: 1
|
|
|
|
RELEASE_NAME: mainline
|
2024-03-07 01:05:52 +01:00
|
|
|
script:
|
2024-03-18 14:34:31 +01:00
|
|
|
- chmod -R 1027 ./
|
2024-03-07 17:36:40 +01:00
|
|
|
- bash .ci/scripts/linux/docker.sh
|
2024-03-18 14:34:31 +01:00
|
|
|
- chmod -R $UID ./
|
2024-03-07 17:36:40 +01:00
|
|
|
- bash .ci/scripts/linux/upload.sh
|
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- artifacts/*
|
2024-03-15 20:55:53 +01:00
|
|
|
tags:
|
|
|
|
- Linux
|
|
|
|
- Parallelized
|
2024-03-17 01:15:34 +01:00
|
|
|
|
2024-03-14 22:35:22 +01:00
|
|
|
#ANDROID BUILD - BUILDS APK
|
|
|
|
android:
|
|
|
|
stage: build
|
2024-03-15 14:41:16 +01:00
|
|
|
image: suyuemu/cibuild:android-x64
|
2024-03-14 22:35:22 +01:00
|
|
|
script:
|
|
|
|
- apt-get update -y
|
|
|
|
- git submodule update --init --recursive
|
2024-03-15 15:06:15 +01:00
|
|
|
- cd externals/vcpkg
|
|
|
|
- git fetch --unshallow || true
|
|
|
|
- cd ../..
|
2024-03-14 22:35:22 +01:00
|
|
|
- export ANDROID_HOME="/usr/lib/android-sdk/"
|
|
|
|
- echo y | sdkmanager --sdk_root=/usr/lib/android-sdk --licenses
|
|
|
|
- bash ./.ci/scripts/android/build.sh
|
|
|
|
- bash ./.ci/scripts/android/upload.sh
|
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- artifacts/*
|
2024-03-15 20:55:53 +01:00
|
|
|
tags:
|
|
|
|
- Linux
|
|
|
|
- Parallelized
|
2024-03-17 01:15:34 +01:00
|
|
|
|