From ea139541fad8ab21d3aae4a3908d584868d6e38aa1c86a6ef66d052b5544a192 Mon Sep 17 00:00:00 2001 From: Aleksa Sarai Date: Tue, 12 Mar 2019 08:21:05 +0000 Subject: [PATCH] Fix broken patch. OBS-URL: https://build.opensuse.org/package/show/Virtualization:containers/docker?expand=0&rev=302 --- ...don-t-build-test-images-if-they-alre.patch | 48 ++++++++++++++----- tests.sh | 16 +------ 2 files changed, 38 insertions(+), 26 deletions(-) diff --git a/bsc1128746-0001-integration-cli-don-t-build-test-images-if-they-alre.patch b/bsc1128746-0001-integration-cli-don-t-build-test-images-if-they-alre.patch index 1eb52ab..69c10b5 100644 --- a/bsc1128746-0001-integration-cli-don-t-build-test-images-if-they-alre.patch +++ b/bsc1128746-0001-integration-cli-don-t-build-test-images-if-they-alre.patch @@ -1,6 +1,6 @@ -From 911af815ea12dacb81afef0a6704c73d48df01d3 Mon Sep 17 00:00:00 2001 +From 87416bfab7420bb5d0b18269909eb71dcb8632c6 Mon Sep 17 00:00:00 2001 From: Aleksa Sarai -Date: Tue, 12 Mar 2019 18:48:38 +1100 +Date: Tue, 12 Mar 2019 18:37:31 +1100 Subject: [PATCH] integration-cli: don't build -test images if they already exist @@ -11,18 +11,31 @@ integration-cli suite on a host machine (such as distributions doing tests) this change allows images to be pre-loaded such that compilers aren't needed on the test machine. +However, this does remove the accidental re-compilation of nnp-test, as +well as handling errors far more cleanly (previously if an error +occurred during a test build, further tests won't attempt to rebuild +it). + SUSE-Bugs: bsc#1128746 Signed-off-by: Aleksa Sarai --- - .../fixtures_linux_daemon_test.go | 20 +++++++++++-------- - .../internal/test/environment/environment.go | 20 +++++++++++++++++++ - 2 files changed, 32 insertions(+), 8 deletions(-) + .../fixtures_linux_daemon_test.go | 21 +++++++++-------- + .../internal/test/environment/environment.go | 23 +++++++++++++++++++ + 2 files changed, 35 insertions(+), 9 deletions(-) diff --git a/components/engine/integration-cli/fixtures_linux_daemon_test.go b/components/engine/integration-cli/fixtures_linux_daemon_test.go -index 2387a9ebee2b..ae01180d8523 100644 +index 2387a9ebee2b..0a770a76a2a9 100644 --- a/components/engine/integration-cli/fixtures_linux_daemon_test.go +++ b/components/engine/integration-cli/fixtures_linux_daemon_test.go -@@ -24,17 +24,13 @@ type logT interface { +@@ -8,7 +8,6 @@ import ( + "path/filepath" + "runtime" + "strings" +- "sync" + + "github.com/docker/docker/integration-cli/checker" + "github.com/docker/docker/internal/test/fixtures/load" +@@ -24,17 +23,13 @@ type logT interface { Logf(string, ...interface{}) } @@ -44,7 +57,7 @@ index 2387a9ebee2b..ae01180d8523 100644 // if no match, must build in docker, which is significantly slower // (slower mostly because of the vfs graphdriver) -@@ -93,6 +89,14 @@ func ensureSyscallTestBuild(c *check.C) { +@@ -93,6 +88,14 @@ func ensureSyscallTestBuild(c *check.C) { func ensureNNPTest(c *check.C) { defer testEnv.ProtectImage(c, "nnp-test:latest") @@ -60,17 +73,30 @@ index 2387a9ebee2b..ae01180d8523 100644 ensureNNPTestBuild(c) return diff --git a/components/engine/internal/test/environment/environment.go b/components/engine/internal/test/environment/environment.go -index 74c8e2ce0ad7..56692a4f6594 100644 +index 74c8e2ce0ad7..e1c8a49ea8cb 100644 --- a/components/engine/internal/test/environment/environment.go +++ b/components/engine/internal/test/environment/environment.go -@@ -145,6 +145,26 @@ func (e *Execution) APIClient() client.APIClient { +@@ -8,9 +8,12 @@ import ( + "strings" + + "github.com/docker/docker/api/types" ++ "github.com/docker/docker/api/types/filters" + "github.com/docker/docker/client" ++ "github.com/docker/docker/internal/test" + "github.com/docker/docker/internal/test/fixtures/load" + "github.com/pkg/errors" ++ "gotest.tools/assert" + ) + + // Execution contains information about the current test execution and daemon +@@ -145,6 +148,26 @@ func (e *Execution) APIClient() client.APIClient { return e.client } +// HasExistingImage checks whether there is an image with the given reference. +// Note that this is done by filtering and then checking whether there were any +// results -- so ambiguous references might result in false-positives. -+func (e *Execution) HasExistingImage(t TestingT, reference string) bool { ++func (e *Execution) HasExistingImage(t testingT, reference string) bool { + if ht, ok := t.(test.HelperT); ok { + ht.Helper() + } diff --git a/tests.sh b/tests.sh index a61fd60..b57c155 100644 --- a/tests.sh +++ b/tests.sh @@ -37,7 +37,7 @@ abort_usage() { usage ; abort "$@" ; } bundle() { local bundle="$1"; shift - log "Making bundle: $(basename "$bundle") (in $DEST)" + log "Making bundle: $(basename "$bundle") (in $PWD)" local oldFlags="$-" set +Eeu source "$SCRIPTS_DIR/make/$bundle" "$@" @@ -82,19 +82,6 @@ if [ "$#" -gt 0 ] ; then TEST_ARGS+=( "-check.f=$(echo $@ | tr ' ' '|')" ) fi -# We want this to fail if the bundles already exist and cannot be removed. -# This is to avoid mixing bundles from different versions of the code. -mkdir -p "$BUNDLES_DIR" -if [ -e "$BUNDLES_DIR/$VERSION" ] && [ -z "$KEEPBUNDLE" ]; then - log "$BUNDLES_DIR/$VERSION already exists. Removing." - rm -fr "$BUNDLES_DIR/$VERSION" && mkdir "$BUNDLES_DIR/$VERSION" || exit 1 - echo -fi - -DEST="$BUNDLES_DIR/$VERSION/" -mkdir -p "$DEST" -export DEST="$(realpath "$DEST")" - if [ -n "$ENABLE_XUNIT" ] ; then if [ ! -x /usr/local/bin/go2xunit ] ; then echo >&2 "Installing go2xunit." @@ -154,7 +141,6 @@ cat <"$CFG_DOCKER" "max-file": "5" }, "userns-remap": "$DOCKER_REMAP_ROOT", - "pidfile": "$DEST/docker.pid", "hosts": [ "tcp://127.0.0.1:2375" ],