summaryrefslogtreecommitdiff
path: root/pkg/api/handlers/libpod/pods.go
diff options
context:
space:
mode:
authorSujil02 <sushah@redhat.com>2020-04-20 10:10:41 -0400
committerSujil02 <sushah@redhat.com>2020-04-24 15:44:07 -0400
commit5436e314417e4822d105d1efdbea4e5442d6f42d (patch)
tree053522aff93f36e441d91673f296c47e685f9ce1 /pkg/api/handlers/libpod/pods.go
parent02c2fbc4cd72524dfa65ba36bddfd5c4076a9512 (diff)
downloadpodman-5436e314417e4822d105d1efdbea4e5442d6f42d.tar.gz
podman-5436e314417e4822d105d1efdbea4e5442d6f42d.tar.bz2
podman-5436e314417e4822d105d1efdbea4e5442d6f42d.zip
Adding system prune for podman v2
Register system prune route, handler to support system prune, Adds testcase to validate the system prune flow. Signed-off-by: Sujil02 <sushah@redhat.com>
Diffstat (limited to 'pkg/api/handlers/libpod/pods.go')
-rw-r--r--pkg/api/handlers/libpod/pods.go14
1 files changed, 11 insertions, 3 deletions
diff --git a/pkg/api/handlers/libpod/pods.go b/pkg/api/handlers/libpod/pods.go
index 618d48ac0..4eba4af05 100644
--- a/pkg/api/handlers/libpod/pods.go
+++ b/pkg/api/handlers/libpod/pods.go
@@ -230,14 +230,22 @@ func PodRestart(w http.ResponseWriter, r *http.Request) {
}
func PodPrune(w http.ResponseWriter, r *http.Request) {
+ reports, err := PodPruneHelper(w, r)
+ if err != nil {
+ utils.InternalServerError(w, err)
+ return
+ }
+ utils.WriteResponse(w, http.StatusOK, reports)
+}
+
+func PodPruneHelper(w http.ResponseWriter, r *http.Request) ([]*entities.PodPruneReport, error) {
var (
runtime = r.Context().Value("runtime").(*libpod.Runtime)
reports []*entities.PodPruneReport
)
responses, err := runtime.PrunePods(r.Context())
if err != nil {
- utils.InternalServerError(w, err)
- return
+ return nil, err
}
for k, v := range responses {
reports = append(reports, &entities.PodPruneReport{
@@ -245,7 +253,7 @@ func PodPrune(w http.ResponseWriter, r *http.Request) {
Id: k,
})
}
- utils.WriteResponse(w, http.StatusOK, reports)
+ return reports, nil
}
func PodPause(w http.ResponseWriter, r *http.Request) {