1e15b6e001
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>
18 lines
255 B
Bash
Executable file
18 lines
255 B
Bash
Executable file
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
cd "$(dirname "$(readlink -f "$BASH_SOURCE")")"
|
|
|
|
TESTS=${@:-.}
|
|
|
|
function execute() {
|
|
>&2 echo "++ $@"
|
|
eval "$@"
|
|
}
|
|
|
|
execute time docker-compose build
|
|
|
|
execute docker-compose up -d
|
|
|
|
# Run the tests.
|
|
execute time bats -p $TESTS
|