From 9e78c9b063f27cda9bdbeee51a643ed09866ee11 Mon Sep 17 00:00:00 2001 From: Nishant Totla Date: Wed, 8 Feb 2017 14:15:32 -0800 Subject: [PATCH] Suppressing image digest in docker ps Signed-off-by: Nishant Totla --- command/formatter/container.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/command/formatter/container.go b/command/formatter/container.go index 6273453355..e31611c1e7 100644 --- a/command/formatter/container.go +++ b/command/formatter/container.go @@ -6,6 +6,7 @@ import ( "strings" "time" + "github.com/docker/distribution/reference" "github.com/docker/docker/api" "github.com/docker/docker/api/types" "github.com/docker/docker/pkg/stringid" @@ -115,7 +116,22 @@ func (c *containerContext) Image() string { if trunc := stringid.TruncateID(c.c.ImageID); trunc == stringid.TruncateID(c.c.Image) { return trunc } + // truncate digest if no-trunc option was not selected + ref, err := reference.ParseNormalizedNamed(c.c.Image) + if err == nil { + if nt, ok := ref.(reference.NamedTagged); ok { + // case for when a tag is provided + if namedTagged, err := reference.WithTag(reference.TrimNamed(nt), nt.Tag()); err == nil { + return reference.FamiliarString(namedTagged) + } + } else { + // case for when a tag is not provided + named := reference.TrimNamed(ref) + return reference.FamiliarString(named) + } + } } + return c.c.Image }