1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00
qTox/.travis.yml
sudden6 e0bcad21b4
chore: update TravisCI OSx minimum supported version
The reason to update is, that brew only supports 10.12 officialy and
with binary packages so our CI builds started failing because compiling took too long.
2018-10-23 12:20:49 +02:00

202 lines
6.3 KiB
YAML

sudo: required
dist: trusty
language: cpp
cache: ccache
# regex is for release tags
branches:
only:
- master
- /^v(\d+\.){2}\d+$/
matrix:
fast_finish: true
include:
- stage: Linux
os: linux
env: JOB=verify-commit-format
- stage: Linux
os: linux
env: JOB=build-docs DOXYGEN_CONFIG_FILE=doxygen.conf
- stage: Linux
os: linux
env: JOB=build-gitstats GITSTATS_DIR=gitstats
addons:
apt:
packages:
- gitstats
# the actual compilin'
- stage: Linux
os: linux
env: JOB=build-ubuntu-14-04
- stage: "Windows Stage 1: Dependencies (OpenSSL, Qt)"
os: linux
# Makes the cache this job creates avaiable only to jobs with WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE=i686,
# making sure that i686 and x86_64 caches don't overwrite each other
env: WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE=i686
script: ./.travis/build-windows.sh i686 release /opt/build-windows/i686 stage1
services:
- docker
cache:
directories:
- /opt/build-windows/i686
- stage: "Windows Stage 1: Dependencies (OpenSSL, Qt)"
os: linux
env: WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE=x86_64
script: ./.travis/build-windows.sh x86_64 release /opt/build-windows/x86_64 stage1
services:
- docker
cache:
directories:
- /opt/build-windows/x86_64
- stage: "Windows Stage 2: Dependencies (other)"
os: linux
env: WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE=i686
script: ./.travis/build-windows.sh i686 release /opt/build-windows/i686 stage2
services:
- docker
cache:
directories:
- /opt/build-windows/i686
- stage: "Windows Stage 2: Dependencies (other)"
os: linux
env: WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE=x86_64
script: ./.travis/build-windows.sh x86_64 release /opt/build-windows/x86_64 stage2
services:
- docker
cache:
directories:
- /opt/build-windows/x86_64
- stage: "Windows Stage 3: qTox"
os: linux
env: WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE=i686
script: ./.travis/build-windows.sh i686 release /opt/build-windows/i686 stage3
services:
- docker
cache:
directories:
- /opt/build-windows/i686
- stage: "Windows Stage 3: qTox"
os: linux
env: WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE=x86_64
script: ./.travis/build-windows.sh x86_64 release /opt/build-windows/x86_64 stage3
services:
- docker
cache:
directories:
- /opt/build-windows/x86_64
- stage: "Windows Stage 3: qTox"
os: linux
env: WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE=i686
script: ./.travis/build-windows.sh i686 debug /opt/build-windows/i686 stage3
services:
- docker
cache:
directories:
- /opt/build-windows/i686
- stage: "Windows Stage 3: qTox"
os: linux
env: WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE=x86_64
script: ./.travis/build-windows.sh x86_64 debug /opt/build-windows/x86_64 stage3
services:
- docker
cache:
directories:
- /opt/build-windows/x86_64
- stage: "macOS, AppImage and Flatpak"
os: osx
osx_image: xcode9.2
env: JOB=build-osx
- stage: "macOS, AppImage and Flatpak"
os: linux
env: JOB=APPIMAGE
script: ./appimage/build-appimage.sh
services:
- docker
- stage: "macOS, AppImage and Flatpak"
os: linux
env: JOB=FLATPAK
script: ./flatpak/build-flatpak.sh
services:
- docker
script: "./.travis/$JOB.sh"
deploy:
# Linux AppImage
- provider: releases
api_key:
secure: "BRbzTWRvadALRQSTihMKruOj64ydxusMUS9FQR//qFlS345ZYfYta43W//4LcWWDKtj6IvA6DRqNdabgWnpbpxpnm9gVftGUdOKlU3niPZhwsMkB2M12QHUnAP6DVOfGPvdciBV+6mu73SSxniEcrYjZ1CrRX7mknmehPpVKxNk="
file_glob: true
file: ./output/*
on:
condition: $JOB == APPIMAGE
repo: qTox/qTox
tags: true
skip_cleanup: true
# Linux Flatpak
- provider: releases
api_key:
secure: "BRbzTWRvadALRQSTihMKruOj64ydxusMUS9FQR//qFlS345ZYfYta43W//4LcWWDKtj6IvA6DRqNdabgWnpbpxpnm9gVftGUdOKlU3niPZhwsMkB2M12QHUnAP6DVOfGPvdciBV+6mu73SSxniEcrYjZ1CrRX7mknmehPpVKxNk="
file_glob: true
file: ./output/*
on:
condition: $JOB == FLATPAK
repo: qTox/qTox
tags: true
skip_cleanup: true
# osx binary
- provider: releases
api_key:
secure: "BRbzTWRvadALRQSTihMKruOj64ydxusMUS9FQR//qFlS345ZYfYta43W//4LcWWDKtj6IvA6DRqNdabgWnpbpxpnm9gVftGUdOKlU3niPZhwsMkB2M12QHUnAP6DVOfGPvdciBV+6mu73SSxniEcrYjZ1CrRX7mknmehPpVKxNk="
file: "./qTox.dmg"
on:
condition: $TRAVIS_OS_NAME == osx
repo: qTox/qTox
tags: true
skip_cleanup: true
# Windows Installer 64Bit
- provider: releases
api_key:
secure: "BRbzTWRvadALRQSTihMKruOj64ydxusMUS9FQR//qFlS345ZYfYta43W//4LcWWDKtj6IvA6DRqNdabgWnpbpxpnm9gVftGUdOKlU3niPZhwsMkB2M12QHUnAP6DVOfGPvdciBV+6mu73SSxniEcrYjZ1CrRX7mknmehPpVKxNk="
file: "./workspace/x86_64/qtox/release/setup-qtox-x86_64-release.exe"
on:
condition: $WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE == x86_64 && -f /home/travis/build/qTox/qTox/stage3 && -f /home/travis/build/qTox/qTox/release
repo: qTox/qTox
tags: true
skip_cleanup: true
# Windows Installer 32Bit
- provider: releases
api_key:
secure: "BRbzTWRvadALRQSTihMKruOj64ydxusMUS9FQR//qFlS345ZYfYta43W//4LcWWDKtj6IvA6DRqNdabgWnpbpxpnm9gVftGUdOKlU3niPZhwsMkB2M12QHUnAP6DVOfGPvdciBV+6mu73SSxniEcrYjZ1CrRX7mknmehPpVKxNk="
file: "./workspace/i686/qtox/release/setup-qtox-i686-release.exe"
on:
condition: $WINDOWS_BUILD_ARCH_CACHE_TRICK_VARIABLE == i686 && -f /home/travis/build/qTox/qTox/stage3 && -f /home/travis/build/qTox/qTox/release
repo: qTox/qTox
tags: true
skip_cleanup: true
# branch for windows jenkins build
- provider: script
script: .travis/deploy-jenkins-branch.sh
on:
tags: true
skip_cleanup: true
after_success:
- >
test $TRAVIS_PULL_REQUEST == "false"
&& test $TRAVIS_BRANCH == "master"
&& test $JOB == "build-docs"
&& bash ./.travis/deploy-docs.sh
- >
test $TRAVIS_PULL_REQUEST == "false"
&& test $TRAVIS_BRANCH == "master"
&& test $JOB == "build-gitstats"
&& bash ./.travis/deploy-gitstats.sh