.travis.yml 4.9 KB
Newer Older
1 2
sudo: required
language: generic
3

4 5
branches:
  except:
A
Andrea Bolognani 已提交
6
    - /^.*-maint$/
7

8 9
matrix:
  include:
10 11
    - services:
        - docker
12
      env:
13
        - IMAGE=ubuntu:18.04
14
        - DISTCHECK_CONFIGURE_FLAGS="--with-init-script=systemd"
15
        - DOCKER_CMD="$LINUX_CMD"
16
    - compiler: clang
17
      language: c
18
      os: osx
19
      env:
20
        - PATH="/usr/local/opt/gettext/bin:/usr/local/opt/ccache/libexec:/usr/local/opt/rpcgen/bin:$PATH"
21
      script:
A
Andrea Bolognani 已提交
22
        /bin/sh -xc "$MACOS_CMD"
23

24 25 26 27 28 29 30 31 32 33 34
script:
  - docker run
      --privileged
      -v $(pwd):/build
      -w /build
      -e VIR_TEST_DEBUG="$VIR_TEST_DEBUG"
      -e PACKAGES="$PACKAGES"
      -e DISTCHECK_CONFIGURE_FLAGS="$DISTCHECK_CONFIGURE_FLAGS"
      "$IMAGE"
      /bin/sh -xc "$DOCKER_CMD"

35 36 37
git:
  submodules: true

38 39 40
env:
  global:
    - VIR_TEST_DEBUG=1
41
    - LINUX_CMD="
42 43 44 45 46 47
        apt-get update &&
        apt-get install -y \$PACKAGES &&
        ./autogen.sh &&
        make -j3 syntax-check &&
        make -j3 distcheck DISTCHECK_CONFIGURE_FLAGS=\"\$DISTCHECK_CONFIGURE_FLAGS\" ||
        (
A
Andrea Bolognani 已提交
48 49 50
          echo '=== LOG FILE(S) START ===';
          find -name test-suite.log | xargs cat;
          echo '=== LOG FILE(S) END ===';
51 52 53
          exit 1
        )
      "
A
Andrea Bolognani 已提交
54 55 56 57 58 59 60 61 62 63
    # We can't run 'distcheck' or 'syntax-check' because they fail on
    # macOS, but doing 'install' and 'dist' gives us some useful coverage
    - MACOS_CMD="
        brew update &&
        brew install ccache rpcgen xz yajl &&
        ./autogen.sh --prefix=\$(pwd)/install-root &&
        make -j3 &&
        make -j3 install &&
        make -j3 dist ||
        (
A
Andrea Bolognani 已提交
64 65 66
          echo '=== LOG FILE(S) START ===';
          find -name test-suite.log | xargs cat;
          echo '=== LOG FILE(S) END ===';
A
Andrea Bolognani 已提交
67 68 69
          exit 1
        )
      "
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 125 126 127 128 129 130 131 132 133 134 135 136
    # Please keep this list sorted alphabetically
    - PACKAGES="
        augeas-tools
        autoconf
        automake
        autopoint
        bash-completion
        ccache
        dnsmasq-base
        dwarves
        ebtables
        gcc
        gettext
        git
        glusterfs-client
        libacl1-dev
        libapparmor-dev
        libattr1-dev
        libaudit-dev
        libavahi-client-dev
        libblkid-dev
        libc6-dev
        libcap-ng-dev
        libc-dev-bin
        libdbus-1-dev
        libdevmapper-dev
        libfuse-dev
        libgnutls28-dev
        libnetcf-dev
        libnl-3-dev
        libnl-route-3-dev
        libnuma-dev
        libopenwsman-dev
        libparted-dev
        libpcap-dev
        libpciaccess-dev
        librbd-dev
        libreadline-dev
        libsanlock-dev
        libsasl2-dev
        libselinux1-dev
        libssh2-1-dev
        libssh-dev
        libtirpc-dev
        libtool
        libudev-dev
        libxen-dev
        libxml2-dev
        libxml2-utils
        libyajl-dev
        lvm2
        make
        nfs-common
        open-iscsi
        parted
        patch
        perl
        pkgconf
        policykit-1
        qemu-utils
        radvd
        scrub
        sheepdog
        systemtap-sdt-dev
        xsltproc
        zfs-fuse
      "
137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152

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