summaryrefslogtreecommitdiff
path: root/libs/libmdbx/src/.travis.yml
blob: e736d01341977844ba62e6d52a465191861fbd11 (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
language: c cpp
sudo: false

env:
  global:
   - secure: "M+W+heGGyRQJoBq2W0uqWVrpL4KBXmL0MFL7FSs7f9vmAaDyEgziUXeZRj3GOKzW4kTef3LpIeiu9SmvqSMoQivGGiomZShqPVl045o/OUgRCAT7Al1RLzEZ0efSHpIPf0PZ6byEf6GR2ML76OfuL6JxTVdnz8iVyO2sgLE1HbX1VeB+wgd/jfMeOBhCCXskfK6MLyZihfMYsiYZYSaV98ZDhDLSlzuuRIgzb0bMi8aL6AErs0WLW0NelRBeHkKPYfAUc85pdQHscgrJw6Rh/zT6+8BQ/q5f4IgWhiu4xoRg3Ngl7SNoedRQh93ADM3UG2iGl6HDFpVORaXcFWKAtuYY+kHQ0HB84BRYpQmeBuXNpltsfxQ3d1Q3u0RlE45zRvmr2+X1mFnkcNUAWISLPbsOUlriDQM8irGwRpho77/uYnRC00bJsHW//s6+uPf9zrAw1nI4f0y3PAWukGF/xs6HAI3FZPsuSSnx18Tj3Opgbc9Spop+V3hkhdiJoPGpNKTkFX4ZRXfkPgoRVJmtp4PpbpH0Ps/mCriKjMEfGGi0HcVCi0pEGLXiecdqJ5KPg5+22zNycEujQBJcNTKd9shN+R3glrbmhAxTEzGdGwxXXJ2ybwJ2PWJLMYZ7g98nLyX+uQPaA3BlsbYJHNeS5283/9pJsd9DzfHKsN2nFSc="

addons:
  apt:
    sources:
      - ubuntu-toolchain-r-test
    packages:
      - cmake
      - clang-format
    update: true

matrix:
  include:
    - os: linux
      dist: focal
      compiler: gcc
      env: CC=cc CXX=c++
    - os: linux
      dist: focal
      compiler: clang
      env: CC=clang CXX=clang++
    - os: linux
      dist: bionic
      compiler: gcc
      env: CC=cc CXX=c++
    - os: linux
      dist: bionic
      compiler: clang
      env: CC=clang CXX=clang++
    - os: linux
      dist: xenial
      compiler: gcc
      env: CC=cc CXX=c++
    - os: linux
      dist: xenial
      compiler: clang
      env: CC=clang CXX=clang++
    - os: osx
      osx_image: xcode11.3
      env: CC=cc CXX=c++
    - os: osx
      osx_image: xcode9.4
      env: CC=cc CXX=c++

before_script: |
  if [ "${TRAVIS_BRANCH}" = "coverity_scan" ]; then
    # call Coverity Scan manually of addons.coverity_scan for first job only
    if [ "${TRAVIS_JOB_NUMBER}" = "${TRAVIS_BUILD_NUMBER}.1" ]; then
      export COVERITY_SCAN_BRANCH=1
      echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-
      curl -s 'https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh' -o coverity_scan.sh
    else
      echo 'echo "Skip CoverityScan for unrelated os/compiler"' > coverity_scan.sh
    fi
  fi

script: |
  ${CC} --version
  ${CXX} --version
  git fetch --unshallow --tags --prune || exit 1
  if [ ! -s ./coverity_scan.sh ]; then
    make --keep-going all && MALLOC_CHECK_=7 MALLOC_PERTURB_=42 make --keep-going check
  else
    COVERITY_SCAN_PROJECT_NAME="ReOpen/libmdbx" \
    COVERITY_SCAN_NOTIFICATION_EMAIL="leo@yuriev.ru" \
    COVERITY_SCAN_BUILD_COMMAND_PREPEND="" \
    COVERITY_SCAN_BUILD_COMMAND="make MDBX_OPTIONS=-DMDBX_DEBUG=2 build-test" \
    COVERITY_SCAN_BRANCH_PATTERN="$TRAVIS_BRANCH" \
      bash ./coverity_scan.sh || cat cov-int/scm_log.txt
  fi

after_script: |
  if [ "${TRAVIS_BRANCH}" != "coverity_scan" -a "${TRAVIS_JOB_NUMBER}" = "${TRAVIS_BUILD_NUMBER}.1" ] && make reformat && [[ -n $(git diff) ]]; then
    echo "You must run 'make reformat' before submitting a pull request"
    echo "-------------------------------------------------------------------------------"
    git diff
    sleep 1
    echo "-------------------------------------------------------------------------------"
    sleep 1
    exit -1
  fi
  echo "-------------------------------------------------------------------------------"
  sleep 1