1
0
mirror of https://gitlab.com/kelteseth/ScreenPlay.git synced 2024-11-05 18:42:29 +01:00
ScreenPlay/.gitlab-ci.yml
2021-07-25 16:38:11 +02:00

174 lines
4.4 KiB
YAML

stages:
- check
- build
- test
- benchmark
check:
stage: check
allow_failure: true
tags:
- vs2019
- windows10
script:
- cd Tools
- pip install cmakelang
- python clang_format.py
- python cmake_format.py
build:windows_debug:
stage: build
tags:
- vs2019
- windows10
needs:
- check
script:
- cd Tools
- python setup.py
- python build.py -t debug
artifacts:
expire_in: "4 weeks"
paths:
- build-x64-windows-debug/bin/
build:windows_release:
stage: build
tags:
- vs2019
- windows10
needs:
- check
script:
- cd Tools
- python setup.py
- python build.py -t release
artifacts:
expire_in: "4 weeks"
paths:
- build-x64-windows-release/bin/
build:osx_debug:
stage: build
allow_failure: true
tags:
- osx
needs:
- check
script:
- cd Tools
- python3 setup.py
- python3 build.py -t debug
artifacts:
expire_in: "4 weeks"
paths:
- build-x64-osx-debug/bin/
build:osx_release:
stage: build
allow_failure: true
tags:
- osx
needs:
- check
script:
- cd Tools
- python3 setup.py
- python3 build.py -t release
artifacts:
expire_in: "4 weeks"
paths:
- build-x64-osx-release/bin/
build:linux_debug:
stage: build
allow_failure: true
image:
name: ubuntu:20.04
tags:
- gitlab-org-docker
needs:
- check
script:
- apt update -y
# Otherwise libglib2 needs interaction
- export DEBIAN_FRONTEND=noninteractive
- apt install mesa-common-dev curl zip unzip tar git pkg-config apt-transport-https ca-certificates gnupg software-properties-common wget software-properties-common wget python3-pip build-essential libgl1-mesa-dev lld ninja-build cmake -y
- pip3 install aqtinstall
- mkdir Qt
- aqt install --outputdir Qt/ 5.15.2 linux desktop
- cd Tools
- wget -q https://github.com/QuasarApp/CQtDeployer/releases/download/1.5.2/CQtDeployer_1.5.2_OfflineInstaller_Linux64.run
- python3 setup.py
- python3 build.py -t debug
artifacts:
expire_in: "4 weeks"
paths:
- build-x64-linux-debug/bin/
build:linux_release:
stage: build
allow_failure: true
image:
name: ubuntu:20.04
tags:
- gitlab-org-docker
needs:
- check
script:
- apt update -y
# Otherwise libglib2 needs interaction
- export DEBIAN_FRONTEND=noninteractive
- apt install mesa-common-dev curl zip unzip tar git pkg-config apt-transport-https ca-certificates gnupg software-properties-common wget software-properties-common wget python3-pip build-essential libgl1-mesa-dev lld ninja-build cmake -y
- pip3 install aqtinstall
- mkdir Qt
- aqt install --outputdir Qt/ 5.15.2 linux desktop
- cd Tools
- wget -q https://github.com/QuasarApp/CQtDeployer/releases/download/1.5.2/CQtDeployer_1.5.2_OfflineInstaller_Linux64.run
- python3 setup.py
- python3 build.py -t release
artifacts:
expire_in: "4 weeks"
paths:
- build-x64-linux-release/bin/
test:windows_debug:
stage: test
tags:
- windows10
- vs2019
dependencies:
- build:windows_debug
needs:
- build:windows_debug
script:
- ./build-x64-windows-debug/bin/ScreenPlay.exe --no-run=false --exit=true --reporters=junit --out=test-report-junit.xml
artifacts:
expire_in: "4 weeks"
when: always
reports:
junit: test-report-junit.xml
test:windows_release:
stage: test
tags:
- windows10
- vs2019
dependencies:
- build:windows_release
needs:
- build:windows_release
script:
- ./build-x64-windows-release/bin/ScreenPlay.exe --no-run=false --exit=true --reporters=junit --out=test-report-junit.xml
artifacts:
expire_in: "4 weeks"
when: always
reports:
junit: test-report-junit.xml
build_docs:
stage: .post
script:
- curl --request POST --form "token=$CI_JOB_TOKEN" --form ref=master https://gitlab.com/api/v4/projects/15800262/trigger/pipeline