summaryrefslogtreecommitdiff
path: root/pkg
diff options
context:
space:
mode:
authorToshiki Sonoda <sonoda.toshiki@fujitsu.com>2022-09-15 11:36:02 +0900
committerToshiki Sonoda <sonoda.toshiki@fujitsu.com>2022-09-16 16:46:14 +0900
commitd63e49a26aa6df344ea3569cdb9f1b44d7f1256f (patch)
tree36b20a004b6d0907a6910aff435ee18880a44e37 /pkg
parenta73b150e70804907bb2c10390da766a0c6bc7485 (diff)
downloadpodman-d63e49a26aa6df344ea3569cdb9f1b44d7f1256f.tar.gz
podman-d63e49a26aa6df344ea3569cdb9f1b44d7f1256f.tar.bz2
podman-d63e49a26aa6df344ea3569cdb9f1b44d7f1256f.zip
remote: checkpoint --export prints a rawInput or an error on remote
This commit fixes `container checkpoint --export` to print a rawInput or an error. Fixes: #15743 Signed-off-by: Toshiki Sonoda <sonoda.toshiki@fujitsu.com>
Diffstat (limited to 'pkg')
-rw-r--r--pkg/api/handlers/libpod/containers.go16
-rw-r--r--pkg/bindings/containers/checkpoint.go2
-rw-r--r--pkg/domain/infra/tunnel/containers.go2
3 files changed, 10 insertions, 10 deletions
diff --git a/pkg/api/handlers/libpod/containers.go b/pkg/api/handlers/libpod/containers.go
index d1460569f..a76e3d988 100644
--- a/pkg/api/handlers/libpod/containers.go
+++ b/pkg/api/handlers/libpod/containers.go
@@ -266,16 +266,16 @@ func Checkpoint(w http.ResponseWriter, r *http.Request) {
utils.InternalServerError(w, err)
return
}
+ if len(reports) != 1 {
+ utils.InternalServerError(w, fmt.Errorf("expected 1 restore report but got %d", len(reports)))
+ return
+ }
+ if reports[0].Err != nil {
+ utils.InternalServerError(w, reports[0].Err)
+ return
+ }
if !query.Export {
- if len(reports) != 1 {
- utils.InternalServerError(w, fmt.Errorf("expected 1 restore report but got %d", len(reports)))
- return
- }
- if reports[0].Err != nil {
- utils.InternalServerError(w, reports[0].Err)
- return
- }
utils.WriteResponse(w, http.StatusOK, reports[0])
return
}
diff --git a/pkg/bindings/containers/checkpoint.go b/pkg/bindings/containers/checkpoint.go
index bcb944488..8c072f588 100644
--- a/pkg/bindings/containers/checkpoint.go
+++ b/pkg/bindings/containers/checkpoint.go
@@ -39,7 +39,7 @@ func Checkpoint(ctx context.Context, nameOrID string, options *CheckpointOptions
}
defer response.Body.Close()
- if !export {
+ if response.StatusCode != http.StatusOK || !export {
return &report, response.Process(&report)
}
diff --git a/pkg/domain/infra/tunnel/containers.go b/pkg/domain/infra/tunnel/containers.go
index 572807ad6..0dc73081d 100644
--- a/pkg/domain/infra/tunnel/containers.go
+++ b/pkg/domain/infra/tunnel/containers.go
@@ -413,7 +413,7 @@ func (ic *ContainerEngine) ContainerCheckpoint(ctx context.Context, namesOrIds [
if err != nil {
reports = append(reports, &entities.CheckpointReport{Id: c.ID, Err: err})
} else {
- report.RawInput = idToRawInput[report.Id]
+ report.RawInput = idToRawInput[c.ID]
reports = append(reports, report)
}
}