QGIS/.travis.yml
2020-09-04 09:00:37 +10:00

120 lines
3.9 KiB
YAML

language: python
python: "3.7"
compiler: clang
dist: bionic
sudo: false
cache:
apt: true
pip: true
directories:
- ${HOME}/.ccache_testing
timeout: 1000
if: NOT branch =~ /^(cherry-pick-)?backport-\d+-/ AND NOT branch =~ /-patch-\d+$/
env:
global:
- TRAVIS_TIMESTAMP=$(date +%s)
- TRAVIS_AVAILABLE_TIME=150 # in minutes
- TRAVIS_UPLOAD_TIME=5 # time considered to start the machine and the container (minutes)
# Docker hub username and password
- secure: "b7eMDIolaAnq1voGKC1ez7Kcf+/A0WZDJEHBvNwk2KubBfrGOE83GMDrFNF4NqjIprqIAvVKj+TrX1ckCvs24re3IqUJo71TaF1IgxzDDPwSsmNh5UMmvZkeiJys9bWjqDO9wYR5ietNmIE18qyMc8ToJk8oKm6AXuAG2n6znmM="
- secure: "PHCp7F3nApp38Mz6b4/OLxgfBiikRGzPQDHg3R5LX+SQOll24c/DMtwpPwizNuFEiCFcRmJ9uc1t0HWEerIZe5uqm7AtE/nMXBsvDZ+hj4Tz/fEBF98a1k4WLYheN1exFidVkJgdAeiwMOOUQXw5KuIX62bxBdzsdcd0QGwxiXo="
# Travis Token to create PyQGIS Documentation Travis build after Docker push
- secure: "bKJnk+GatxJItCWpC8gJs9N0bEbwK1TrIzTLgnXsl9vwqQLLhIfUMa40yj06HsbVY07AOdmr1+Wk5t+DKGf8YkaaFWBB1tIG8G/T0naN9vfWeBTEd7TlmV5a9ldEPcr6pjfi0he7/RDalvlPvDauEFKL28aVFd2BAe2Tj1euGpY="
matrix:
fast_finish: true
include:
##########################################################
#
# TESTS FOR STANDARD COMMITS
#
##########################################################
##########################################################
# QGIS TESTS ON BIONIC
##########################################################
- os: linux
name: building and testing on linux 🍳
if: type != cron
services: docker
env:
- TRAVIS_CONFIG=linux
- CCACHE_DIR=${HOME}/.ccache_testing
- DOCKER_TAG=$( [[ $TRAVIS_REPO_SLUG =~ qgis/QGIS ]] && echo $TRAVIS_BRANCH | sed 's/master/latest/' || echo "latest" )
- DOCKER_BUILD_DEPS_FILE=qgis3-build-deps.dockerfile
# Label ID can be found here https://api.github.com/repos/qgis/QGIS/labels
- RUN_FLAKY_TESTS=$(.ci/travis/scripts/pr_has_label.py $TRAVIS_PULL_REQUEST 1271248184)
##########################################################
# CODE LAYOUT
##########################################################
- os: linux
name: code layout 👗
if: type != cron
env:
- TRAVIS_CONFIG=code_layout
addons:
apt:
sources:
# - sourceline: 'ppa:jonathonf/backports' # silversearcher-ag backport
packages:
- doxygen
- graphviz
- txt2tags
- pkg-config
- xvfb
- flip
# used for spell checks
- perl # sipify, lookahead regex in spell check script
- silversearcher-ag
- expect-dev # unbuffer
- coreutils
# dependencies for licensecheck
- cpanminus
- libyaml-tiny-perl
- libio-socket-ssl-perl
- libhttp-date-perl
- libgetopt-long-descriptive-perl
- libmoo-perl
- libnamespace-clean-perl
- libpath-tiny-perl
- libpod-constants-perl
- libscalar-list-utils-perl
- libsort-key-perl
- libstrictures-perl
- libstring-escape-perl
- libtry-tiny-perl
git:
depth: 120
notifications:
irc:
channels:
- "chat.freenode.net#qgis-test"
- "chat.freenode.net#qgis-activity"
on_failure: change
on_success: change
skip_join: true
webhooks:
urls:
- https://webhooks.gitter.im/e/467e3aff72e344d1dae3
on_success: change # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
on_start: never # default: never
before_install:
- ./.ci/travis/${TRAVIS_CONFIG}/before_install.sh
install:
- ./.ci/travis/${TRAVIS_CONFIG}/install.sh
before_script:
- ./.ci/travis/${TRAVIS_CONFIG}/before_script.sh
script:
- ./.ci/travis/${TRAVIS_CONFIG}/script.sh