[RFC PATCH] test: add devel/test-in-docker.sh
Tomi Ollila
tomi.ollila at iki.fi
Fri Aug 19 06:50:20 PDT 2016
On Wed, Aug 17 2016, Tomi Ollila <tomi.ollila at iki.fi> wrote:
> With this user can try and test notmuch in docker container,
> in fixed environment where it should compile and tests should pass...
>
> Currently provided container environments are Debian 8.5 and
> Ubuntu 16.04 based. Host OS could be any Linux environment with
> modern enough docker; Perhaps this works on macOS (with docker 1.12+)
> too (in Windows this script probably fails).
> ---
>
> Currently quite a few tests FAIL -- due to missing prerequisite tests.
> It would be easy to add some packages, like gdb, emacs(-nox), dtach,
> but I left those out just to tease you >;)
>
There are 2 problems in this script
1) If the initial docker images (ubuntu:16.04 or debian:8.5) are not
pulled before docker build started, using sha256 hash of the docker
image doesn't work as the initial image where to start building on.
2) Surprisingly(*) ubuntu:16.03 sha256 has changed from
42118e3df429f09ca581a9deb3df274601930e428e452f7e4e9f1833c56a100a to
f8d79ba03c00bbcd8079cf05b7526ac8f4f422744aad8c3747a29a38ed8c4a41
between 2016-08-15 (mon) and 2016-08-19 (fri).
So, currently `docker pull debian:8.5` and then
`./test-in-docker debian8` should work. If ubuntu:16.04 was pulled early
enough `./test-in-docker ubuntu1604` would work (too).
The next version (which I probably do sometime in distant future, when I
have time to enchange tests (before that I try to do some reviews!)) will
probably work the opposite way -- use name:tag as source and after build
spit a (friendly) WARNING if the hash of the initial image has changed
in-between.
(*) or perhaps not so surprisingly -- anyway it is unfortunate that these
images are not so ephemeral as one would wish for...
Tomi
More information about the notmuch
mailing list