This moves the Travis tests from their old legacy VM infrastructure (which only seems to run 5-6 jobs at once) to their new container based approach.
The principle difference is there is no sudo in the containers so all packages are installed using the apt add-on. This means one of the build combinations can be dropped as it was only for checking the build with additional packages. I've disabled the user-space tracing build until the dependant packages go through the Travis package white-listing process. Signed-off-by: Alex Bennée <alex.ben...@linaro.org> --- .travis.yml | 49 +++++++++++++++++++++++++++++++++---------------- 1 file changed, 33 insertions(+), 16 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6ca0260..2fef5dc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,9 +1,37 @@ +sudo: false language: c python: - "2.4" compiler: - gcc - clang +addons: + apt: + packages: + - libaio-dev + - libattr1-dev + - libbrlapi-dev + - libcap-ng-dev + - libgnutls-dev + - libgtk-3-dev + - libiscsi-dev + - liblttng-ust-dev + - libncurses5-dev + - libnss3-dev + - libpixman-1-dev + - libpng12-dev + - librados-dev + - libsdl1.2-dev + - libseccomp-dev + - libspice-protocol-dev + - libspice-server-dev + - libssh2-1-dev + - liburcu-dev + - libusb-1.0-0-dev + - libvte-2.90-dev + - sparse + - uuid-dev + notifications: irc: channels: @@ -14,11 +42,6 @@ env: global: - TEST_CMD="" - EXTRA_CONFIG="" - # Development packages, EXTRA_PKGS saved for additional builds - - CORE_PKGS="libusb-1.0-0-dev libiscsi-dev librados-dev libncurses5-dev" - - NET_PKGS="libseccomp-dev libgnutls-dev libssh2-1-dev libspice-server-dev libspice-protocol-dev libnss3-dev" - - GUI_PKGS="libgtk-3-dev libvte-2.90-dev libsdl1.2-dev libpng12-dev libpixman-1-dev" - - EXTRA_PKGS="" matrix: # Group major targets together with their linux-user counterparts - TARGETS=alpha-softmmu,alpha-linux-user @@ -43,8 +66,6 @@ git: before_install: - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ - git submodule update --init --recursive - - sudo apt-get update -qq - - sudo apt-get install -qq ${CORE_PKGS} ${NET_PKGS} ${GUI_PKGS} ${EXTRA_PKGS} before_script: - ./configure --target-list=${TARGETS} --enable-debug-tcg ${EXTRA_CONFIG} script: @@ -64,16 +85,12 @@ matrix: - env: TARGETS=i386-softmmu,x86_64-softmmu EXTRA_CONFIG="--enable-debug --enable-tcg-interpreter" compiler: gcc - # All the extra -dev packages - - env: TARGETS=i386-softmmu,x86_64-softmmu - EXTRA_PKGS="libaio-dev libcap-ng-dev libattr1-dev libbrlapi-dev uuid-dev libusb-1.0.0-dev" - compiler: gcc # Currently configure doesn't force --disable-pie - env: TARGETS=i386-softmmu,x86_64-softmmu EXTRA_CONFIG="--enable-gprof --enable-gcov --disable-pie" compiler: gcc + # Sparse - env: TARGETS=i386-softmmu,x86_64-softmmu - EXTRA_PKGS="sparse" EXTRA_CONFIG="--enable-sparse" compiler: gcc # All the trace backends (apart from dtrace) @@ -86,10 +103,10 @@ matrix: - env: TARGETS=i386-softmmu,x86_64-softmmu EXTRA_CONFIG="--enable-trace-backends=ftrace" compiler: gcc - - env: TARGETS=i386-softmmu,x86_64-softmmu - EXTRA_PKGS="liblttng-ust-dev liburcu-dev" - EXTRA_CONFIG="--enable-trace-backends=ust" - compiler: gcc + # UST backend disabled until liblttng-ust-dev pkg white-listed + #- env: TARGETS=i386-softmmu,x86_64-softmmu + # EXTRA_CONFIG="--enable-trace-backends=ust" + # compiler: gcc - env: TARGETS=i386-softmmu,x86_64-softmmu EXTRA_CONFIG="--enable-modules" compiler: gcc -- 2.6.4