From 8ae28a55acc51a02597b23140916a690fbbdc3fc Mon Sep 17 00:00:00 2001 From: Jhon Honce Date: Mon, 6 Apr 2020 16:40:32 -0700 Subject: V2 podman diff(changes) support * Ported CLI command * Added API endpoint * Added bindings * Updated swagger (TODO: n endpoints, one handler) Signed-off-by: Jhon Honce --- pkg/bindings/containers/diff.go | 24 ++++++++++++++++++++++++ pkg/bindings/images/diff.go | 24 ++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 pkg/bindings/containers/diff.go create mode 100644 pkg/bindings/images/diff.go (limited to 'pkg/bindings') diff --git a/pkg/bindings/containers/diff.go b/pkg/bindings/containers/diff.go new file mode 100644 index 000000000..82070ca9a --- /dev/null +++ b/pkg/bindings/containers/diff.go @@ -0,0 +1,24 @@ +package containers + +import ( + "context" + "net/http" + + "github.com/containers/libpod/pkg/bindings" + "github.com/containers/storage/pkg/archive" +) + +// Diff provides the changes between two container layers +func Diff(ctx context.Context, nameOrId string) ([]archive.Change, error) { + conn, err := bindings.GetClient(ctx) + if err != nil { + return nil, err + } + + response, err := conn.DoRequest(nil, http.MethodGet, "/containers/%s/changes", nil, nameOrId) + if err != nil { + return nil, err + } + var changes []archive.Change + return changes, response.Process(&changes) +} diff --git a/pkg/bindings/images/diff.go b/pkg/bindings/images/diff.go new file mode 100644 index 000000000..cfdd06a97 --- /dev/null +++ b/pkg/bindings/images/diff.go @@ -0,0 +1,24 @@ +package images + +import ( + "context" + "net/http" + + "github.com/containers/libpod/pkg/bindings" + "github.com/containers/storage/pkg/archive" +) + +// Diff provides the changes between two container layers +func Diff(ctx context.Context, nameOrId string) ([]archive.Change, error) { + conn, err := bindings.GetClient(ctx) + if err != nil { + return nil, err + } + + response, err := conn.DoRequest(nil, http.MethodGet, "/images/%s/changes", nil, nameOrId) + if err != nil { + return nil, err + } + var changes []archive.Change + return changes, response.Process(&changes) +} -- cgit v1.2.3-54-g00ecf