]> git.ipfire.org Git - thirdparty/systemd.git/blob - travis-ci/managers/xenial.sh
travis: make the ASan+UBSan stage compatible with Azure Pipelines
[thirdparty/systemd.git] / travis-ci / managers / xenial.sh
1 #!/bin/bash
2 set -e
3 set -x
4
5 bash -c "echo 'deb-src http://archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse' >>/etc/apt/sources.list"
6 apt-get update
7 apt-get build-dep systemd -y
8 apt-get install -y util-linux libmount-dev libblkid-dev liblzma-dev libqrencode-dev libmicrohttpd-dev iptables-dev liblz4-dev libcurl4-gnutls-dev unifont itstool kbd cryptsetup-bin net-tools isc-dhcp-client iputils-ping strace qemu-system-x86 linux-image-virtual mount libgpg-error-dev libxkbcommon-dev python-lxml python3-lxml python3-pip libcap-dev
9 apt-get install -y gettext python3-evdev python3-pyparsing libmount-dev python3-setuptools ninja-build
10 pip3 install meson
11
12 cd ${REPO_ROOT:-$(pwd)}
13
14 sed -i 's/2\.30/2.27/' meson.build
15
16 meson --werror -Db_sanitize=address,undefined -Dsplit-usr=true build
17 ninja -v -C build
18 make -C test/TEST-01-BASIC clean setup run TEST_NO_QEMU=yes NSPAWN_ARGUMENTS=--keep-unit RUN_IN_UNPRIVILEGED_CONTAINER=no
19
20 # Now that we're more or less sure that ASan isn't going to crash systemd and cause a kernel panic
21 # let's also run the test with QEMU to cover udevd, sysctl and everything else that isn't run
22 # in containers.
23 make -C test/TEST-01-BASIC clean setup run TEST_NO_NSPAWN=yes