From eea2758761ccb6ca97db1ee0f409fd04d9a05939 Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Fri, 5 Nov 2021 17:29:44 +0100 Subject: [PATCH] TestBuildUserNamespaceValidateCapabilitiesAreV2: cleanup daemon storage This should help with Jenkins failing to clean up the Workspace: - make sure "cleanup" is also called in the defer for all daemons. keeping the daemon's storage around prevented Jenkins from cleaning up. - close client connections and some readers (just to be sure) Signed-off-by: Sebastiaan van Stijn --- integration/build/build_userns_linux_test.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/integration/build/build_userns_linux_test.go b/integration/build/build_userns_linux_test.go index a702eb40d6..dbb70f5961 100644 --- a/integration/build/build_userns_linux_test.go +++ b/integration/build/build_userns_linux_test.go @@ -40,6 +40,7 @@ func TestBuildUserNamespaceValidateCapabilitiesAreV2(t *testing.T) { dUserRemap.Start(t, "--userns-remap", "default") ctx := context.Background() clientUserRemap := dUserRemap.NewClientT(t) + defer clientUserRemap.Close() err = load.FrozenImagesLinux(clientUserRemap, "debian:bullseye-slim") assert.NilError(t, err) @@ -48,6 +49,7 @@ func TestBuildUserNamespaceValidateCapabilitiesAreV2(t *testing.T) { defer func() { if dUserRemapRunning { dUserRemap.Stop(t) + dUserRemap.Cleanup(t) } }() @@ -89,12 +91,17 @@ func TestBuildUserNamespaceValidateCapabilitiesAreV2(t *testing.T) { dNoUserRemap := daemon.New(t) dNoUserRemap.Start(t) - defer dNoUserRemap.Stop(t) + defer func() { + dNoUserRemap.Stop(t) + dNoUserRemap.Cleanup(t) + }() clientNoUserRemap := dNoUserRemap.NewClientT(t) + defer clientNoUserRemap.Close() tarFile, err := os.Open(tmp + "/image.tar") assert.NilError(t, err, "failed to open image tar file") + defer tarFile.Close() tarReader := bufio.NewReader(tarFile) loadResp, err := clientNoUserRemap.ImageLoad(ctx, tarReader, false) @@ -112,6 +119,7 @@ func TestBuildUserNamespaceValidateCapabilitiesAreV2(t *testing.T) { ShowStdout: true, }) assert.NilError(t, err) + defer logReader.Close() actualStdout := new(bytes.Buffer) actualStderr := io.Discard