summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbaude <bbaude@redhat.com>2019-08-25 14:02:33 -0500
committerMatthew Heon <matthew.heon@pm.me>2019-08-28 09:28:49 -0400
commit8b09b07b19126c60876aaee6c1a4250a38cdd48c (patch)
tree4c9d4a76bb229da7df21948e359fda2d32e6438b
parent67926d86b50973d6cb0d8e953583441c8cb2fecf (diff)
downloadpodman-8b09b07b19126c60876aaee6c1a4250a38cdd48c.tar.gz
podman-8b09b07b19126c60876aaee6c1a4250a38cdd48c.tar.bz2
podman-8b09b07b19126c60876aaee6c1a4250a38cdd48c.zip
clean up after remote build
when performing an image build over a varlink connection, we should clean up tmp files that are a result of sending the file to the host and untarring it for the build. Fixes: #3869 Signed-off-by: baude <bbaude@redhat.com>
-rw-r--r--pkg/varlinkapi/images.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/pkg/varlinkapi/images.go b/pkg/varlinkapi/images.go
index a1fdf5955..0e1ef5b76 100644
--- a/pkg/varlinkapi/images.go
+++ b/pkg/varlinkapi/images.go
@@ -142,7 +142,14 @@ func (i *LibpodAPI) BuildImage(call iopodman.VarlinkCall, config iopodman.BuildI
return call.ReplyErrorOccurred(fmt.Sprintf("unable to untar context dir %s", contextDir))
}
logrus.Debugf("untar of %s successful", contextDir)
-
+ defer func() {
+ if err := os.Remove(contextDir); err != nil {
+ logrus.Errorf("unable to delete file '%s': %q", contextDir, err)
+ }
+ if err := os.RemoveAll(newContextDir); err != nil {
+ logrus.Errorf("unable to delete directory '%s': %q", newContextDir, err)
+ }
+ }()
// All output (stdout, stderr) is captured in output as well
var output bytes.Buffer