.travis.yml 4.6 KB
Newer Older
1 2 3
sudo: false
language: c
cache: ccache
4 5 6 7 8

matrix:
  include:
    - compiler: gcc
      dist: trusty
9 10
      env:
        - DISTCHECK_CONFIGURE_FLAGS="--with-init-script=upstart"
11 12
    - compiler: clang
      dist: trusty
13 14
      env:
        - DISTCHECK_CONFIGURE_FLAGS="--with-init-script=systemd"
15 16
    - compiler: clang
      os: osx
17 18 19 20 21
      script:
        # We can't run make distcheck/syntax-check because they
        # fail on macOS, but doing 'install' and 'dist' gives us
        # some useful coverage
        - make -j3 && make -j3 install && make -j3 dist
22

23 24
addons:
  apt:
25
    # Please keep this list sorted alphabetically
26
    packages:
27
      - augeas-tools
28 29
      - autoconf
      - automake
30
      - autopoint
31
      - ccache
32
      - dnsmasq-base
33
      - dwarves
34 35
      - ebtables
      - gcc
A
Andrea Bolognani 已提交
36
      - gettext
37 38
      - glusterfs-client
      - libacl1-dev
39
      - libapparmor-dev
40
      - libattr1-dev
41
      - libaudit-dev
42
      - libavahi-client-dev
43
      - libblkid-dev
44
      - libc-dev-bin
45
      - libc6-dev
46
      - libcap-ng-dev
47 48
      - libcurl4-gnutls-dev
      - libdbus-1-dev
49
      - libdevmapper-dev
50
      - libfuse-dev
51 52
      - libgnutls-dev
      - libnetcf-dev
53 54 55
      - libnl-3-dev
      - libnl-route-3-dev
      - libnuma-dev
56 57 58
      - libopenwsman-dev
      - libparted-dev
      - libpcap-dev
59
      - libpciaccess-dev
60
      - librbd-dev
61 62
      - libreadline-dev
      - libsasl2-dev
63
      - libselinux1-dev
64
      - libssh2-1-dev
65
      - libssh-dev
66
      - libtool
67 68 69 70 71 72
      - libudev-dev
      - libxen-dev
      - libxml2-dev
      - libxml2-utils
      - libyajl-dev
      - lvm2
73
      - make
74
#     - nfs-common    # broken on trusty since build #807 (2018-01-09)
75 76 77
      - open-iscsi
      - parted
      - patch
78
      - perl
79 80
      - pkg-config
      - policykit-1
81 82
      - qemu-utils
      - radvd
83 84 85
      - scrub
      - sheepdog
      - systemtap-sdt-dev
86
      - xsltproc
87
      - zfs-fuse
88 89 90 91

git:
  submodules: true

92 93 94 95 96 97 98
env:
  global:
    # The custom $PATH is just to pick up some extra binaries installed
    # through homebrew on macOS and it's completely harmless on Linux
    - PATH="/usr/local/opt/gettext/bin:/usr/local/opt/rpcgen/bin:$PATH"
    - VIR_TEST_DEBUG=1

99
before_install:
100
  - if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew update && brew upgrade && brew install rpcgen yajl xz; fi
101 102

before_script:
103
  - ./autogen.sh --prefix=$(pwd)/install-root
104

105
script:
106
  - make -j3 && make -j3 syntax-check && make -j3 distcheck DISTCHECK_CONFIGURE_FLAGS=$DISTCHECK_CONFIGURE_FLAGS
107

108 109 110 111 112 113 114
after_failure:
  - echo '============================================================================'
  - 'if [ -f $(pwd)/tests/test-suite.log ]; then
        cat $(pwd)/tests/test-suite.log;
    else
        echo "=== NO LOG FILE FOUND ===";
    fi'
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130

notifications:
  irc:
    # The channel name "irc.oftc.net#virt" is encrypted against libvirt/libvirt
    # to prevent IRC notifications from github forks. This was created using:
    # $ travis encrypt -r "libvirt/libvirt" "irc.oftc.net#virt"
    channels:
      - secure: "hUPdkLxX7nh75+clpnk4U0XLExLfV9DFKSvQSAUtf5JtDNMslj7AeOCf2wcbkNsEhkiF557odTAnov1s5m1w/yaa56zbjFAh5agzqRKya3QjqsrvlBKw/WuN+l82iMNLLeebTgCPAXrbAbGWH8YmYssp/7+eMsnKaVh84EQQNbMCHlLg6ovE26Fs18mZ6J5RC3OPa1vbv+xkdCHvGg/Oyp4K8bpU7RYyimA56jdxI/OfdTH9HxntHYSzykR7hDbyzZhdIlAUyRKReQVjcV5+R8fdDL/1imyGA/88KTztMeKXpZ5Rf+Ss3vYLZb6qsLLegCZ4AU/q0vvbWxjpZGJZoeyrVpfBTZdYGIzmLTMl9GYXXa/gDwFlbvRDiPDG4TIy6GlMUROinj7KRKEHu1fWRYu012ife5OjidxcwrTnz21vYaCv3AKWPpMPxwIzQPkY1hex9uLLX6z+TrAxxDLF+7UzRT9w2RLFBkLYlj2aDVrLAVb/ynRsxDz5CGzC61FSQVft2e308SkGjdn8YxvguCuXv+N70Fu1cvFyh5XYeHb4fbBRo0Ctzaec78leHlQvRGWKJxXDXRkE2lvvBc7YbBNSAYh7Fs8Y+zY7l7rMxvXdrt3nuaNQhe74V3yhxPDAld66qmAn9TYMmaZW2f5/KKKILLbCa0t2MxiAc6L2OI8="
    on_success: change
    on_failure: always
  email:
    # The list name 'libvirt-ci@redhat.com" is encrypted against libvirt/libvirt
    # to prevent IRC notifications from github forks. This was created using:
    # $ travis encrypt -r "libvirt/libvirt" "libvirt-ci@redhat.com"
    recipients:
      - secure: "QcU9eP96P0RlDNzVRZl/4sxyydPStGzECrpgJhr2IPB/7pHk23yaBrmUsq9S830tB+jwLGma1IscNB8uf7Sf7WY+cYIpfR8v030OffWnaipo/Gcs0dpnlfURWHjOFQI3RJzGEihsqvbwUFOwsM+3IDyO3qdWaiT6cN2Tj9ROlwYCySSX5YWzLyX7arBZ4lp8ESs7ohQaEwp2cegnMP2oGPJJe4SebvlCDjHZbjkU5aEradwUWnRQDJZWTKknpNLArVFxN2/ixp6f/MGY4DmkHoDweio6mHIPN5zTs5Jt32aiX6wDBa+bBa4v8TCRqzhYkQ63ZZhNV8bY5Uf9ufTdyvt96yIANyakd85b1QpMdAX76IyJi1l0/Uub6DTQZAcq3vK7iPjGeTVSpyoXrqTfGy4JxMjqDoocpWvv8ALX1wrYI/HfN2R2Aepw9jModTimOsebYhJ1yMhSt8qnh5AQNftGKL2JBKoA1LWdU2YJ5fO1bGjKNiVEkGFQTPYFWrYCUY5JcT+s5WCzNeMNm8s9na8liYhGl3WtS3rPr5M8bof+BMsBhG2hQ0loduc94x2GkvyhQZUgRbqrwNR+y4hn+rWFC3hBzzyiAULs43vY/PJ+eBdKEf3VAc0MkhQ8GgXGSA61fR6aXYonroI/WnBVItwDmUnnMfSziZXxk09GLl4="