ardupilot/.travis.yml

86 lines
2.5 KiB
YAML

language: cpp
sudo: false
dist: xenial
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main'
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
packages:
- build-essential
- gawk
- genromfs
- libc6-i386
- libxml2-dev
- libxslt1-dev
- python-pip
- python-dev
- zlib1g-dev
- gcc-4.9
- g++-4.9
- gdb
- cmake
- cmake-data
- clang-7
- llvm-7
cache:
ccache: false
directories:
- $HOME/opt
before_install:
- Tools/scripts/configure-ci.sh
- if [ "$TRAVIS_EVENT_TYPE" = "cron" ]; then export CI_CRON_JOB=1 ; fi
script:
- Tools/scripts/build_ci.sh
notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/e5e0b55e353e53945b4b
on_success: change # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
on_start: false # default: false
compiler:
- gcc
env:
global:
# The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
# via the "travis encrypt" command using the project repo's public key
- secure: "FjIwqZQV2FhNPWYITX5LZXTE38yYqBaQdbm3QmbEg/30wnPTm1ZOLIU7o/aSvX615ImR8kHoryvFPDQDWc6wWfqTEs3Ytq2kIvcIJS2Y5l/0PFfpWJoH5gRd6hDThnoi+1oVMLvj1+bhn4yFlCCQ2vT/jxoGfiQqqgvHtv4fLzI="
- AUTOTEST_UPLOAD=true # Upload logs of failed tests to ArduPilot server; requires authentication
matrix:
fast_finish: true
include:
- if: type != cron
compiler: "gcc"
env: CI_BUILD_TARGET="revo-bootloader CubeOrange-bootloader iofirmware stm32f7 stm32h7 fmuv2-plane"
- if: type != cron
compiler: "gcc"
env: CI_BUILD_TARGET="sitltest-copter"
- if: type != cron
compiler: "gcc"
env: CI_BUILD_TARGET="sitltest-quadplane sitltest-plane"
- if: type != cron
compiler: "clang-7"
env: CI_BUILD_TARGET="sitltest-rover sitltest-sub""
- if: type != cron
compiler: "clang-7"
env: CI_BUILD_TARGET="sitl""
- language: python
python: 3.7
addons: # speedup: This test does not need addons
compiler:
dist: xenial # required for Python >= 3.7 (travis-ci/travis-ci#9069)
before_install: pip install flake8
script:
- EXCLUDE=./.*,./modules/gtest,./modules/ChibiOS/test,./modules/uavcan/libuavcan
- flake8 . --count --exclude=$EXCLUDE --select=E901,E999,F821,F822,F823 --show-source --statistics