36ac78e65a
docker: Don't mount ccache db if NOUSER=1
...
With NOUSER=1 the container runs code as root, which may create
privileged files that will not be be accssible next time. Skip ccache
dir mount in this case.
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170925075458.18047-1-famz@redhat.com >
Acked-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
2017-09-29 11:14:15 +08:00
12b25a7d96
docker: test-block: Don't continue if build fails
...
Report error and exit upon compiling error, otherwise the iotests output
will be pure noise.
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170926110134.2786-1-famz@redhat.com >
Reviewed-by: Eric Blake <eblake@redhat.com >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-09-29 11:14:15 +08:00
bcd7f06f57
tests/docker/run: don't source /etc/profile
...
The usual behaviour of /etc/profile is to set the default PATH for
users. This runs into problems when we have updated PATH in our
dockerfile e.g. to access a cross-compiler in a non-standard
location. It shouldn't be needed anyway as we inherit the env from the
image when it was setup.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
CC: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-Id: <20170926133622.14991-1-alex.bennee@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-09-29 11:14:15 +08:00
299d296ea9
docker: Fix test-mingw
...
Feature "dtc" is explicitly required by test-mingw, but is not detected
by the run script since we switched to archive-source.sh in b7f404201e
.
Since it isn't available in the Fedora image which runs this test on
patchew, the way we get dtc is still from submodule.
archive-source.sh takes care of bundling the submodule files already, so
what we need to do is just checking if files are there. Makefile is
chosen because it is one that is unlikely to get renamed in the future.
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170925082913.22089-1-famz@redhat.com >
Reviewed-by: Alistair Francis <alistair.francis@xilinx.com >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-09-29 11:14:14 +08:00
6283847857
docker: add installation to build tests
...
Basic test that "make install" works; this requires msgfmt so add
gettext to the packages.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
Message-Id: <1506095371-23160-1-git-send-email-pbonzini@redhat.com >
[Rebase to master. - Fam]
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-09-29 11:14:14 +08:00
4f6afe41f2
docker: Drop 'set -e' from run script
...
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-09-22 14:51:43 +08:00
b7f404201e
docker: Use archive-source.py
...
Signed-off-by: Fam Zheng <famz@redhat.com >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
2017-09-22 14:51:43 +08:00
f300ca63c7
docker: Add test-block
...
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170905025614.579-6-famz@redhat.com >
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com >
Based-on: 20170905021201.25684-1-famz@redhat.com
2017-09-22 10:20:34 +08:00
18d4e35f93
docker: Add nettle-devel to fedora image
...
The LUKS cases in qemu-iotests requires this.
Reviewed-by: Kashyap Chamarthy <kchamart@redhat.com >
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170905025614.579-5-famz@redhat.com >
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com >
Based-on: 20170905021201.25684-1-famz@redhat.com
2017-09-22 10:20:34 +08:00
4470749186
docker: Use unconfined security profile
...
Some by default blocked syscalls are required to run tests for example
userfaultfd.
Reviewed-by: Kashyap Chamarthy <kchamart@redhat.com >
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170905025614.579-4-famz@redhat.com >
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com >
Based-on: 20170905021201.25684-1-famz@redhat.com
2017-09-22 10:20:34 +08:00
82659e844a
docker: Add test_fail and prep_fail
...
They both print a message and exit, but with different status code so
distinguish real test errors from env preparation failures.
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170905025614.579-3-famz@redhat.com >
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com >
Based-on: 20170905021201.25684-1-famz@redhat.com
2017-09-22 10:20:34 +08:00
d8a2f5116d
docker: Fix return code of build_qemu()
...
Without "set -e", the "&&" makes sure that the return code reflects the
result status, and that make only runs if configure succeeds.
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170905025614.579-2-famz@redhat.com >
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com >
Based-on: 20170905021201.25684-1-famz@redhat.com
2017-09-22 10:20:34 +08:00
05790dafef
tests/docker: Clean up paths
...
The 'run' script already creats src, build and install directories under
$TEST_DIR, use it in common.rc.
Also the tests always run from $QEMU_SRC/tests/docker, so use a relative
$CMD string.
Message-Id: <20170817035721.11064-1-famz@redhat.com >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-09-22 10:20:34 +08:00
5e8a7fe673
docker: Enable features explicitly in test-full
...
Also avoid "set -e".
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170907141245.31946-3-famz@redhat.com >
Reviewed-by: Eric Blake <eblake@redhat.com >
2017-09-22 10:20:34 +08:00
7fc581c295
docker: Update ubuntu image
...
Base on the newer ubuntu-lts (16.06) and include more packages for
better build coverage.
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170907141245.31946-2-famz@redhat.com >
2017-09-22 10:20:34 +08:00
3f2ff267af
docker: reduce noise when building travis.docker
...
Set the DEBIAN_FRONTEND and locale env vars to stop apt complaining so
much as we build the image.
Suggested-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Message-Id: <20170725133425.436-7-alex.bennee@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-09-22 10:20:34 +08:00
9b4154a570
docker: don't install device-tree-compiler build-deps in travis.docker
...
Installing the device-tree-compiler build-deps is a little extreme. We
only actually need the binary so include it with the other packages.
Suggested-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Message-Id: <20170725133425.436-6-alex.bennee@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-09-22 10:20:34 +08:00
6fe3ae3f19
docker: docker.py make --no-cache skip checksum test
...
If you invoke with NOCACHE=1 we pass --no-cache in the argv to
docker.py but may still not force a rebuild if the dockerfile checksum
hasn't changed. By testing for its presence we can force builds
without having to manually remove the docker image.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Message-Id: <20170725133425.436-5-alex.bennee@linaro.org >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-09-22 10:20:34 +08:00
1fddbf7c5e
docker: ensure NOUSER for travis images
...
While adding the current user is a useful default behaviour for
creating new images it is not appropriate for Travis which already has
a default user.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-Id: <20170725133425.436-2-alex.bennee@linaro.org >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-09-22 10:20:34 +08:00
7437866bfc
docker: fix creation of archives
...
The pixman submodule does not exist anymore, and its removal broke
docker-based tests. Fix it.
Cc: Fam Zheng <famz@redhat.com >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2017-09-19 16:20:49 +02:00
c2d3189667
docker.py: Python 2.6 argparse compatibility
...
Add the scripts/ directory to sys.path so Python 2.6 will be able to
import argparse.
Cc: Fam Zheng <famz@redhat.com >
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
Acked-by: John Snow <jsnow@redhat.com >
Acked-by: Fam Zheng <famz@redhat.com >
Message-id: 20170825155732.15665-3-stefanha@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2017-08-30 12:02:11 +01:00
a8132a2f28
docker: add centos7 image
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-Id: <20170728233316.13352-5-f4bug@amsat.org >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-08-15 15:16:45 +08:00
06f3c7b852
docker: install more packages on CentOS to extend code coverage
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-Id: <20170728233316.13352-4-f4bug@amsat.org >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-08-15 15:16:45 +08:00
18a2b7affc
docker: add Xen libs to centos6 image
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-Id: <20170728233316.13352-3-f4bug@amsat.org >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-08-15 15:16:45 +08:00
6aef2ad70b
docker: use one package per line in CentOS config
...
This ease rebase/cherry-pick, also it is faster to visually find if a package
is here.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-Id: <20170728233316.13352-2-f4bug@amsat.org >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-08-15 15:16:45 +08:00
118d1becc0
docker: install clang since Shippable setup_ve() verify it is available
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:58:36 +01:00
3e11974988
docker: warn users to use newer debian8/debian9 base image
...
to stay backward incompatible.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:58:36 +01:00
f847325106
docker: add debian Ports base image
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:58:36 +01:00
982e758af7
docker: add MXE (M cross environment) base image for MinGW-w64
...
see http://mxe.cc/
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:58:36 +01:00
fd7b284d79
docker: add debian/mips64el image
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:58:36 +01:00
4319db7b13
docker: add debian/mips[eb] images
...
change image mips little -> big endian
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:58:35 +01:00
16dcece4d5
docker: add debian/powerpc based on Jessie
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
[AJB: split from merged patch]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:58:35 +01:00
bec45514e5
docker: add 'apt-fake' script which generate fake debian packages
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:58:35 +01:00
a3cf6b1961
docker: add qemu:debian-jessie based on outdated jessie release
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:58:35 +01:00
c705b8617b
docker: enable nettle to extend code coverage on arm64
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
6f8bbb374b
docker: enable gcrypt to extend code coverage on amd64
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
0cf01f5b4a
docker: enable netmap to extend code coverage on amd64
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
b2e7717425
docker: enable virgl to extend code coverage on amd64
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
[AJB: mv, comments in dockerfile]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
15288046e0
docker: add debian/amd64 based on Stretch
...
By itself this doesn't add much to our coverage. However later patches
will extend this image to include more bleeding edge libraries which
are not yet widely available in distros.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
[AJB: extend commit msg]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
2b1c10bdcf
docker: add debian/ppc64el based on Stretch
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
31e205d1bf
docker: add debian/armel based on Stretch
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
aaa6ccc9ff
docker: optimize debian9 base image
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
2a444f55eb
docker: remove packages now dependent of qemu in Stretch
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
7d2bcf2363
docker: debian/s390x no more in unstable, now available in Stretch
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
94afe49eab
docker: add common packages to debian base
...
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
24044d4825
docker: rename debian stable -> 9 (Stretch)
...
We'll also want to support some older Debian combinations for
architectures that didn't make the Debian 9 cut.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
[AJB: extend commit msg]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:30 +01:00
ed7023b05b
docker: add debug tools to travis.docker
...
When a test fails/hangs you don't want the hassle of getting the debug
tools installed. Lets install them on our image by default so we can
debug when we need to.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Fam Zheng <famz@redhat.com >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:23 +01:00
dca34e8c4e
docker: include python-yaml in travis.docker
...
Although the upstream Travis images don't need this library our
"travis-lite" scripts are written in python. This allows us to do:
make docker-travis@travis J=10
and approximate a travis run on their default image.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Fam Zheng <famz@redhat.com >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 10:54:13 +01:00
6ca9f7fedb
docker: allow customizing Travis global_env variables
...
This is useful so that we can do builds at higher than -j3 when running
travis.py locally.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2017-07-18 09:39:19 +01:00
0b95ff72cb
docker.py: Improve subprocess exit code handling
...
A few error handlings are missing because we ignore the subprocess exit
code, for example "docker build" errors are currently ignored.
Introduce _do_check() aside the existing _do() method and use it in a
few places.
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <20170712075528.22770-3-famz@redhat.com >
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Signed-off-by: Fam Zheng <famz@redhat.com >
2017-07-17 11:34:20 +08:00