* [Qemu-devel] [PATCH] .travis.yml: migrate to container builds
@ 2016-01-15 10:45 Alex Bennée
2016-01-19 6:15 ` David Gibson
0 siblings, 1 reply; 4+ messages in thread
From: Alex Bennée @ 2016-01-15 10:45 UTC (permalink / raw)
To: qemu-devel; +Cc: pbonzini, Alex Bennée, david
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.bennee@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
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH] .travis.yml: migrate to container builds
2016-01-15 10:45 [Qemu-devel] [PATCH] .travis.yml: migrate to container builds Alex Bennée
@ 2016-01-19 6:15 ` David Gibson
2016-01-19 7:22 ` Alex Bennée
0 siblings, 1 reply; 4+ messages in thread
From: David Gibson @ 2016-01-19 6:15 UTC (permalink / raw)
To: Alex Bennée; +Cc: pbonzini, qemu-devel
[-- Attachment #1: Type: text/plain, Size: 1885 bytes --]
On Fri, Jan 15, 2016 at 10:45:09AM +0000, Alex Bennée wrote:
> 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.bennee@linaro.org>
Tested-by: David Gibson <david@gibson.dropbear.id.au>
Is it safe to just drop that build combination, or should we instead
be doing something else to test the build _without_ those extra
packages?
[snip]
> @@ -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
This comment is a bit confusing to me, since the apt addon package
list already seems to include liblttng-ust-dev.
> - env: TARGETS=i386-softmmu,x86_64-softmmu
> EXTRA_CONFIG="--enable-modules"
> compiler: gcc
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH] .travis.yml: migrate to container builds
2016-01-19 6:15 ` David Gibson
@ 2016-01-19 7:22 ` Alex Bennée
2016-01-20 2:29 ` David Gibson
0 siblings, 1 reply; 4+ messages in thread
From: Alex Bennée @ 2016-01-19 7:22 UTC (permalink / raw)
To: David Gibson; +Cc: pbonzini, qemu-devel
David Gibson <david@gibson.dropbear.id.au> writes:
> On Fri, Jan 15, 2016 at 10:45:09AM +0000, Alex Bennée wrote:
>> 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.bennee@linaro.org>
>
> Tested-by: David Gibson <david@gibson.dropbear.id.au>
>
> Is it safe to just drop that build combination, or should we instead
> be doing something else to test the build _without_ those extra
> packages?
Hmm, currently there doesn't seem to be a way to do this with the Travis
infrastructure as the packages are no longer part of a matrix.
>
>
> [snip]
>> @@ -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
>
> This comment is a bit confusing to me, since the apt addon package
> list already seems to include liblttng-ust-dev.
It's in the list but still awaiting whitelisting by Travis:
https://github.com/travis-ci/apt-package-whitelist/issues/2258
>
>> - env: TARGETS=i386-softmmu,x86_64-softmmu
>> EXTRA_CONFIG="--enable-modules"
>> compiler: gcc
--
Alex Bennée
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH] .travis.yml: migrate to container builds
2016-01-19 7:22 ` Alex Bennée
@ 2016-01-20 2:29 ` David Gibson
0 siblings, 0 replies; 4+ messages in thread
From: David Gibson @ 2016-01-20 2:29 UTC (permalink / raw)
To: Alex Bennée; +Cc: pbonzini, qemu-devel
[-- Attachment #1: Type: text/plain, Size: 2574 bytes --]
On Tue, Jan 19, 2016 at 07:22:07AM +0000, Alex Bennée wrote:
>
> David Gibson <david@gibson.dropbear.id.au> writes:
>
> > On Fri, Jan 15, 2016 at 10:45:09AM +0000, Alex Bennée wrote:
> >> 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.bennee@linaro.org>
> >
> > Tested-by: David Gibson <david@gibson.dropbear.id.au>
> >
> > Is it safe to just drop that build combination, or should we instead
> > be doing something else to test the build _without_ those extra
> > packages?
>
> Hmm, currently there doesn't seem to be a way to do this with the Travis
> infrastructure as the packages are no longer part of a matrix.
Ok, but would it work to explicitly disable use of the packages in
some of the builds?
> > [snip]
> >> @@ -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
> >
> > This comment is a bit confusing to me, since the apt addon package
> > list already seems to include liblttng-ust-dev.
>
> It's in the list but still awaiting whitelisting by Travis:
>
> https://github.com/travis-ci/apt-package-whitelist/issues/2258
Ah, ok. I'm kind of surprised that Travis passes a build requesting a
non-whitelisted package.
Do we want to wait until that's approved before merging? I don't have
a strong opinion either way.
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2016-01-20 2:33 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-15 10:45 [Qemu-devel] [PATCH] .travis.yml: migrate to container builds Alex Bennée
2016-01-19 6:15 ` David Gibson
2016-01-19 7:22 ` Alex Bennée
2016-01-20 2:29 ` David Gibson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).