On Wed, Aug 17 2016, Tomi Ollila <tomi.ollila@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