stages: - build - sign - check .base_windows_build: before_script: - python -m pip install -U pip wheel - python -m pip install -r Tools/requirements.txt - python Tools/setup.py .base_linux_build: before_script: # Otherwise libglib2 needs interaction - export DEBIAN_FRONTEND=noninteractive - apt update -y - apt install curl wget zip unzip tar git pkg-config libxcb-* libfontconfig-dev apt-transport-https ca-certificates gnupg software-properties-common python3 python3-pip build-essential libgl1-mesa-dev mesa-common-dev lld ninja-build libxkbcommon-* libx11-dev xserver-xorg-dev xorg-dev -y - wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null - echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal-rc main' | tee -a /etc/apt/sources.list.d/kitware.list >/dev/null - apt update -y - apt install cmake -y - python3 -m pip install -U pip - python3 -m pip install -r Tools/requirements.txt - python3 Tools/setup.py .base_osx_build: before_script: - pip3 install -U pip - pip3 install -r Tools/requirements.txt - python3 Tools/setup.py standalone_windows: stage: build extends: - .base_windows_build tags: - windows10 script: - python Tools/build.py -type release -use-aqt -installer -deploy-version artifacts: expire_in: "2 weeks" paths: - build-x64-windows-release/bin/ - build-x64-windows-release/ScreenPlay-Installer.exe standalone_osx: stage: build extends: - .base_osx_build tags: - osx script: - python3 Tools/build.py -type release -use-aqt -deploy-version -architecture x64 - python3 Tools/build.py -type release -use-aqt -deploy-version -architecture arm64 - python3 Tools/macos_lipo.py artifacts: expire_in: "2 weeks" paths: - build-universal-osx-release/bin/ standalone_linux: stage: build extends: - .base_linux_build image: name: ubuntu:20.04 tags: - gitlab-org-docker script: - python3 Tools/build.py -type release -deploy-version -use-aqt -installer artifacts: expire_in: "4 weeks" paths: - build-x64-linux-release/bin/ steam_windows: stage: build extends: - .base_windows_build tags: - windows10 script: - python Tools/build.py -type release -steam -use-aqt -deploy-version artifacts: expire_in: "2 weeks" paths: - build-x64-windows-release/bin/ steam_osx: stage: build extends: - .base_osx_build tags: - osx script: - python3 Tools/build.py -type release -steam -use-aqt -deploy-version -architecture x64 - python3 Tools/build.py -type release -steam -use-aqt -deploy-version -architecture arm64 - python3 Tools/macos_lipo.py artifacts: expire_in: "2 weeks" paths: - build-universal-osx-release/bin/ sign_osx: stage: sign needs: ["standalone_osx"] only: - release tags: - osx script: - python3 Tools/macos_sign.py artifacts: expire_in: "2 weeks" paths: - build-universal-osx-release/bin/ sign_osx_steam: stage: sign needs: ["steam_osx"] only: - release tags: - osx script: - python3 Tools/macos_sign.py artifacts: expire_in: "2 weeks" paths: - build-universal-osx-release/bin/ formatting: stage: check allow_failure: true image: name: ubuntu:20.04 tags: - gitlab-org-docker before_script: - apt-get update -y - apt-get install python3-pip python-is-python3 clang clang-format -y script: - python -m pip install -U pip wheel - python -m pip install -U cmakelang - cd Tools - python clang_format.py - python cmake_format.py documentation: stage: .post script: - curl --request POST --form "token=$CI_JOB_TOKEN" --form ref=master https://gitlab.com/api/v4/projects/15800262/trigger/pipeline