2024-03-07 11:36:40 -05:00
|
|
|
stages:
|
2024-03-08 14:19:32 -05:00
|
|
|
- format
|
2024-03-08 14:26:40 -05:00
|
|
|
- build
|
2024-03-16 20:15:34 -04: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
|
2024-03-21 03:09:11 -04:00
|
|
|
# Use FASTZIP for faster compression in cache and artifacts (boolean)
|
2024-03-16 20:15:34 -04:00
|
|
|
# https://docs.gitlab.com/runner/configuration/feature-flags.html#available-feature-flags
|
2024-03-21 03:09:11 -04:00
|
|
|
FF_USE_FASTZIP: 1
|
2024-03-16 20:15:34 -04:00
|
|
|
|
|
|
|
# Our Variables
|
|
|
|
CACHE_DIR: "$CI_PROJECT_DIR/ccache"
|
|
|
|
CCACHE_DIR: $CACHE_DIR
|
|
|
|
|
|
|
|
|
2024-03-14 17:35:22 -04:00
|
|
|
#CLANG FORMAT - CHECKS CODE FOR FORMATTING ISSUES
|
2024-03-08 14:26:40 -05:00
|
|
|
clang-format:
|
|
|
|
stage: format
|
2024-03-15 09:41:16 -04:00
|
|
|
image: suyuemu/cibuild:clangformat
|
2024-03-15 10:48:12 -04: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 14:26:40 -05:00
|
|
|
script:
|
2024-03-08 17:44:03 -05:00
|
|
|
- git submodule update --init --depth 1 --recursive
|
2024-03-08 14:26:40 -05:00
|
|
|
- bash .ci/scripts/format/script.sh
|
2024-03-15 15:55:53 -04:00
|
|
|
tags:
|
2024-03-15 17:11:45 -04:00
|
|
|
# - Linux
|
|
|
|
# - Windows
|
2024-03-15 15:55:53 -04:00
|
|
|
- Parallelized
|
2024-03-18 05:16:46 -04:00
|
|
|
- Format
|
2024-03-16 20:15:34 -04:00
|
|
|
|
2024-03-14 17:35:22 -04:00
|
|
|
#LINUX BUILD - BUILDS LINUX APPIMAGE
|
2024-03-07 11:36:40 -05:00
|
|
|
build-linux:
|
2024-03-06 19:05:52 -05:00
|
|
|
stage: build
|
2024-03-15 09:41:16 -04:00
|
|
|
image: suyuemu/cibuild:linux-x64
|
2024-03-07 11:36:40 -05:00
|
|
|
resource_group: linux-ci
|
2024-03-16 20:15:34 -04: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 11:36:40 -05:00
|
|
|
variables:
|
2024-03-14 17:35:22 -04:00
|
|
|
GIT_SUBMODULE_STRATEGY: recursive
|
|
|
|
GIT_SUBMODULE_DEPTH: 1
|
|
|
|
RELEASE_NAME: mainline
|
2024-03-06 19:05:52 -05:00
|
|
|
script:
|
2024-03-07 11:36:40 -05:00
|
|
|
- bash .ci/scripts/linux/docker.sh
|
|
|
|
- bash .ci/scripts/linux/upload.sh
|
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- artifacts/*
|
2024-03-15 15:55:53 -04:00
|
|
|
tags:
|
|
|
|
- Linux
|
|
|
|
- Parallelized
|
2024-03-16 20:15:34 -04:00
|
|
|
|
2024-03-14 17:35:22 -04:00
|
|
|
#ANDROID BUILD - BUILDS APK
|
|
|
|
android:
|
|
|
|
stage: build
|
2024-03-15 09:41:16 -04:00
|
|
|
image: suyuemu/cibuild:android-x64
|
2024-03-14 17:35:22 -04:00
|
|
|
script:
|
|
|
|
- apt-get update -y
|
|
|
|
- git submodule update --init --recursive
|
2024-03-15 10:06:15 -04:00
|
|
|
- cd externals/vcpkg
|
|
|
|
- git fetch --unshallow || true
|
|
|
|
- cd ../..
|
2024-03-14 17:35:22 -04: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 15:55:53 -04:00
|
|
|
tags:
|
2024-03-19 16:25:13 -04:00
|
|
|
- Android
|
2024-03-15 15:55:53 -04:00
|
|
|
- Parallelized
|
2024-03-16 20:15:34 -04:00
|
|
|
|