summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: 94cd09efae7f3374db63b3df26b86aefc2192ba0 (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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
language: c

env:
  global:
  # SSHHOST
  - secure: "NEXUEA+ccm/I21ujCPuKYIHFb8Gogunr3nYysCRpTBNT40PsU9VFIy5vbmMxPAkCaMwk8XZ0rMHE3uaNGbBAGfoDL9v0Ban5wG/jA1JkmOAWUpFrUsbQeejXNRA04QcZ/4VeL6TgFegV2T6V0tLB4M6/X316dIPhS9Tat1ZUC8s="
  # SSHUSER
  - secure: "bYHqhcYYuSbciQa5mBqMxs3CbJkrxxD7/G4zDW2war1IcMh8AC/KPeoYIuhd/L2Mg9+tP++xCznKUJzX85Hu+8EyrMGkC/6zWpGYgyO27DH7wl+9AJjR191WJKkg+S6OqZmb/5v0rdJMDnGOZHrRVB3Vec9dBT+jDTQbyxrckxE="
  # DEPLOY_TO directory
  - secure: "PMp93w9HAYd0pR4aw2LT1sMIVmA06f01Xq2jaGW2iy74n3GrqBYe7H9aMR0WD1S6KH9sFydqFI11bCpwUQXPopl+8MPA34AS7V2gaxDUdE+UZnKKXpKV6KRPRp/txlryuEGspjFJM0bo5g1H5lPBSBFj8PB1Bf6BiloGl8TTuiY="
  - BRANCH_PULL=$TRAVIS_PULL_REQUEST_BRANCH
  - PULL=$TRAVIS_PULL_REQUEST
  - BRANCH=$TRAVIS_BRANCH

matrix:
  include:
    - compiler: "gcc"
      os: linux
      env:
        - PLATFORM=linux BITS=64 HOST=x86_64
        # TODO do `check` or `check_hw` here too, not just `check_sw` (as part of `coverage`)
        - CHECK_RULE=coverage GCOV=1
        - PKG_RULE=gzip
        - COVERITY_SCAN_PROJECT_NAME="$TRAVIS_REPO_SLUG"
        - COVERITY_SCAN_BRANCH_PATTERN="master"
        - COVERITY_SCAN_NOTIFICATION_EMAIL="robin.getz@analog.com"
        - COVERITY_SCAN_BUILD_COMMAND_PREPEND="mkdir build && cd build && cmake .."
        - COVERITY_SCAN_BUILD_COMMAND="make"
        # The COVERITY_SCAN_TOKEN
        - secure: "QQt2l9IVo0xXWLx7Xqgz/4Iezj7YroY3MKfmG+OhtzkMRx4prhx32/07JMNAcYx6mQrccyZkBNzpYuXlfIZjFL3xDxDj5+iKv5XXpJbRFQGhc5xZtAlzOIqHNMcFc0Aj8J2mZwKfSaDnBdf+nMgKcmn46pYbpJOmPe9iEfeLvvg="
    - compiler: "clang"
      os: linux
      dist: trusty
      env: LDIST=DO_NOT_DEPLOY
    - compiler: "gcc"
      os: linux
      dist: precise
      env: LDIST=-precise
    - compiler: "gcc"
      os: linux
      dist: trusty
      env: LDIST=-trusty
    - compiler: "gcc"
      os: osx
      osx_image: xcode6.4
      env: LDIST=-osx_10.10
    - compiler: "gcc"
      os: osx
      osx_image: xcode7.3
      env: LDIST=-osx_10.11
    - compiler: "gcc"
      os: osx
      osx_image: xcode8.1
      env:
        - LDIST=-osx_10.12
        - EXTRA_SSH=-oHostKeyAlgorithms=+ssh-dss

addons:
  artifacts: true
  ssh_known_hosts:
    secure: "q0dQ9MrhnOCo031McxSdQIqw4N6tEyAZLq7mdbWkAJcXOh/CX58NjFvcdSfamleDUYRmg7KpCZPPgnbx2JtqVvWJv8aNnr67CE1GIjRP1Fxh2WaKS+VK+I6rro7GwCO2C9d+uffCt63LfZKqddF1T7vMI2IgHcu9irc5LCuw6Wo="

before_install:
  - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ./CI/travis/before_install_darwin ; fi
  - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ./CI/travis/before_install_linux ; fi
  - if [[ -n "$COVERITY_SCAN_PROJECT_NAME" ]] ; then echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca- ; fi
  - if [ -n "$COVERITY_SCAN_PROJECT_NAME" -a "$TRAVIS_EVENT_TYPE" == "cron" ] ; then curl -s 'https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh' | bash || true ; fi

  - mkdir -p $TRAVIS_BUILD_DIR/build
  - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then mkdir -p $TRAVIS_BUILD_DIR/build_tar ; fi

script:
  - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ${TRAVIS_BUILD_DIR}/CI/travis/make_linux; fi
  - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ${TRAVIS_BUILD_DIR}/CI/travis/make_darwin; fi

notifications:
  email:
    on_success: change
    on_failure: always

before_deploy:
  - . ${TRAVIS_BUILD_DIR}/CI/travis/before_deploy
  - openssl aes-256-cbc -K $encrypted_48a720578612_key -iv $encrypted_48a720578612_iv -in ${TRAVIS_BUILD_DIR}/CI/travis/deploy.rsa.enc -out /tmp/deploy.rsa -d
  - eval "$(ssh-agent -s)"
  - chmod 600 /tmp/deploy.rsa
  - ssh-add /tmp/deploy.rsa
deploy:
  - provider: releases
    api_key:
      secure: Bl7sfWp796+D7cF99+YdmbQjr5stXh4H/4hN2L5FNL0FEHL4XnIscSqySgy2NNmcqWF4Mz5WNXMZ9M8rYSNAiOndcaBYB+xvesAUbIdncwswgTNn2cj6yQbv0yR9qVUdoyczvZMK1vIc6GtKWWkh0AmgR04cAFffU3fr+78JHIw=
    file:
      - "${RELEASE_PKG_FILE_DEB}"
      - "${RELEASE_PKG_FILE_RPM}"
      - "${RELEASE_PKG_FILE_TGZ}"
    skip_cleanup: true
    on:
      repo: analogdevicesinc/libiio
      tags: true
      condition: "($CC = gcc) && ($TRAVIS_OS_NAME = linux)"
  - provider: releases
    api_key:
      secure: Bl7sfWp796+D7cF99+YdmbQjr5stXh4H/4hN2L5FNL0FEHL4XnIscSqySgy2NNmcqWF4Mz5WNXMZ9M8rYSNAiOndcaBYB+xvesAUbIdncwswgTNn2cj6yQbv0yR9qVUdoyczvZMK1vIc6GtKWWkh0AmgR04cAFffU3fr+78JHIw=
    file:
      - "${RELEASE_PKG_FILE_PKG}"
      - "${RELEASE_PKG_FILE_TGZ}"
    skip_cleanup: true
    on:
      repo: analogdevicesinc/libiio
      tags: true
      condition: "$TRAVIS_OS_NAME = osx"
  - provider: script
    skip_cleanup: true
    script:
      - ${TRAVIS_BUILD_DIR}/CI/travis/deploy
    on:
      condition: "($CC = gcc) && ($TRAVIS_OS_NAME = linux)"
      all_branches: true
  - provider: script
    skip_cleanup: true
    script:
      - ${TRAVIS_BUILD_DIR}/CI/travis/deploy
    on:
      condition: "$TRAVIS_OS_NAME = osx"
      all_branches: true