Previously, the strategy for avoiding lots of rebuilding and repulling
for each Docker version being tested was to use a mountpoint to persist
/var/lib/docker. This was pretty broken, and may not be a reliable
strategy. This commit changes the scripts to instead build/pull images
outside the innermost container, and copy them to the final test
environment with docker save/docker load.
This requires a fair amount of changes, since run.sh must now
communicate with the Docker engine that was formerly started by
test_runner.sh. The code that starts this engine has been broken out to
run_engine.sh so that starting the engine and running the tests under it
can be done separately (with the images loaded in between these steps).
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
- Upgrade docker-compose to 1.3.3 to work around
https://github.com/docker/compose/issues/1314
- Change run.sh to run the Docker container in the foreground so that
the exit code is propagated.
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Integrate flags better with the development flow a Docker developer.
Add a shell function to make invocation of tests easy.
Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
Added an environment variable which can be used to pass in the docker volume for the container. This allows caching the pulled images between runs, preventing unnecessary image pulls.
Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)