aboutsummaryrefslogtreecommitdiff
path: root/.travis.yml
blob: 3f1c4fb4180ced092171f882f6d79276dd18cbb3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
language: c

cache: ccache

env:
    matrix:
    - RUN_ON_CONTAINER=ubuntu-12.04
    - RUN_ON_CONTAINER=ubuntu-16.04
    - RUN_ON_CONTAINER=ubuntu-latest
    - RUN_ON_CONTAINER=centos6
    - RUN_ON_CONTAINER=centos7
    - RUN_ON_CONTAINER=fedora24
    - RUN_ON_CONTAINER=fedora25
    - RUN_ON_CONTAINER=fedora-rawhide
    global:
        # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
        #   via the "travis encrypt" command using the project repo's public key
        secure: "MpNEGFa1VrF/vsQq24n5UgfRbz1wVC6B8mubFnyK4gX0IuQ9xhWuTzMLUQF9UJxe5jnC2DTmVUvYTYN/hggw+PpYwbOOAE0QGR5pmPHA4PSRmc5pxt1q18/sv7EPFw66GFyWJq94nWjpigyKQ8KGtA67j1xFqrDoS43OA76WZgo="

matrix:
  allow_failures:
    - env: RUN_ON_CONTAINER=fedora-rawhide

sudo: required
services: docker

dist: trusty

before_install:
    - echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-certificates.crt

script:
    - if [ ${COVERITY_SCAN_BRANCH} != 1 ]; then
       docker build --pull -t ${RUN_ON_CONTAINER} -f opal-ci/Dockerfile-${RUN_ON_CONTAINER} . &&
       docker run --volume $HOME/.ccache:/root/.ccache --rm -t $RUN_ON_CONTAINER;
      fi
    - if [ ${COVERITY_SCAN_BRANCH} == 1 ]; then
        sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test &&
        sudo apt-get update -qq &&
        sudo apt-get install -y gcc-4.8 libstdc++6 valgrind expect xterm &&
        sudo apt-get install -y gcc-arm-linux-gnueabi gcc-powerpc64le-linux-gnu gcc &&
        sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50 &&
        wget https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.8.0/x86_64-gcc-4.8.0-nolibc_powerpc64-linux.tar.xz &&
        sudo mkdir /opt/cross &&
        sudo tar -C /opt/cross -xvf x86_64-gcc-4.8.0-nolibc_powerpc64-linux.tar.xz;
      fi

addons:
  coverity_scan:
    project:
      name: "open-power/skiboot"
      description: "Build submitted via Travis CI"
    notification_email: stewart@linux.vnet.ibm.com
    build_command_prepend: "cov-configure --comptype gcc --compiler powerpc64-linux-gcc --template; cov-configure --comptype gcc --compiler powerpc64le-linux-gnu-gcc; cov-configure --comptype gcc --compiler arm-linux-gnueabi-gcc; cov-configure --comptype gcc --compiler x86_64-linux-gnu-gcc"
    build_command: "make -j4 all check"
    branch_pattern: coverity_scan