summaryrefslogtreecommitdiff
path: root/pkg/domain/infra/abi
diff options
context:
space:
mode:
authorJhon Honce <jhonce@redhat.com>2020-04-22 11:45:31 -0700
committerJhon Honce <jhonce@redhat.com>2020-04-22 14:25:40 -0700
commit565f93531eae65ca85c286bf6bd2aa07eb713976 (patch)
treea36ef0168a0edbd34a5eb539d24062b9ad788aa0 /pkg/domain/infra/abi
parent142757bd7288ccdb88d8f1322932f999ffb18c02 (diff)
downloadpodman-565f93531eae65ca85c286bf6bd2aa07eb713976.tar.gz
podman-565f93531eae65ca85c286bf6bd2aa07eb713976.tar.bz2
podman-565f93531eae65ca85c286bf6bd2aa07eb713976.zip
V2 restore libpod.Shutdown() when exiting podman commands
Signed-off-by: Jhon Honce <jhonce@redhat.com>
Diffstat (limited to 'pkg/domain/infra/abi')
-rw-r--r--pkg/domain/infra/abi/containers.go7
-rw-r--r--pkg/domain/infra/abi/images.go7
-rw-r--r--pkg/domain/infra/abi/runtime.go4
3 files changed, 18 insertions, 0 deletions
diff --git a/pkg/domain/infra/abi/containers.go b/pkg/domain/infra/abi/containers.go
index 73a0d8ec3..a77b18ce1 100644
--- a/pkg/domain/infra/abi/containers.go
+++ b/pkg/domain/infra/abi/containers.go
@@ -957,3 +957,10 @@ func (ic *ContainerEngine) ContainerPort(ctx context.Context, nameOrId string, o
}
return reports, nil
}
+
+// Shutdown Libpod engine
+func (ic *ContainerEngine) Shutdown(_ context.Context) {
+ shutdownSync.Do(func() {
+ _ = ic.Libpod.Shutdown(false)
+ })
+}
diff --git a/pkg/domain/infra/abi/images.go b/pkg/domain/infra/abi/images.go
index d0b7b42b5..bed59b379 100644
--- a/pkg/domain/infra/abi/images.go
+++ b/pkg/domain/infra/abi/images.go
@@ -553,3 +553,10 @@ func (ir *ImageEngine) Remove(ctx context.Context, images []string, opts entitie
return
}
+
+// Shutdown Libpod engine
+func (ir *ImageEngine) Shutdown(_ context.Context) {
+ shutdownSync.Do(func() {
+ _ = ir.Libpod.Shutdown(false)
+ })
+}
diff --git a/pkg/domain/infra/abi/runtime.go b/pkg/domain/infra/abi/runtime.go
index 7394cadfc..fba422d8e 100644
--- a/pkg/domain/infra/abi/runtime.go
+++ b/pkg/domain/infra/abi/runtime.go
@@ -1,6 +1,8 @@
package abi
import (
+ "sync"
+
"github.com/containers/libpod/libpod"
)
@@ -13,3 +15,5 @@ type ImageEngine struct {
type ContainerEngine struct {
Libpod *libpod.Runtime
}
+
+var shutdownSync sync.Once