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

matrix:
  include:
    - compiler: gcc
      dist: trusty
9
      env:
10
        - PYTHON=$(which python2)
11
        - DISTCHECK_CONFIGURE_FLAGS="--with-init-script=upstart"
12 13
    - compiler: clang
      dist: trusty
14
      env:
15
        - PYTHON=$(which python3)
16
        - DISTCHECK_CONFIGURE_FLAGS="--with-init-script=systemd"
17 18
    - compiler: clang
      os: osx
19 20
      before_install:
        - brew update
21
        - brew unlink python
22
        - brew upgrade
23
        - brew install rpcgen yajl
24 25 26 27 28
      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
29

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

git:
  submodules: true

102 103 104 105 106 107 108
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

109
before_script:
110
  - ./autogen.sh --prefix=$(pwd)/install-root
111

112
script:
113
  - make -j3 && make -j3 syntax-check && make -j3 distcheck DISTCHECK_CONFIGURE_FLAGS=$DISTCHECK_CONFIGURE_FLAGS
114

115 116 117 118 119 120 121
after_failure:
  - echo '============================================================================'
  - 'if [ -f $(pwd)/tests/test-suite.log ]; then
        cat $(pwd)/tests/test-suite.log;
    else
        echo "=== NO LOG FILE FOUND ===";
    fi'
122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137

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="