From 3c5c0f5b69f8167c68bba88403882a13302c829e Mon Sep 17 00:00:00 2001 From: baude Date: Thu, 19 Apr 2018 08:58:20 -0500 Subject: podman push without destination image the destination image for podman push should be optional (if the destination has already been tagged in). the man page for podman push describes that it should work this way. Resolves: #645 Signed-off-by: baude Closes: #646 Approved by: mheon --- cmd/podman/push.go | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'cmd') diff --git a/cmd/podman/push.go b/cmd/podman/push.go index d80af2ef3..369d4d4f2 100644 --- a/cmd/podman/push.go +++ b/cmd/podman/push.go @@ -76,17 +76,25 @@ var ( ) func pushCmd(c *cli.Context) error { - var registryCreds *types.DockerAuthConfig + var ( + registryCreds *types.DockerAuthConfig + destName string + ) args := c.Args() - if len(args) < 2 { - return errors.New("podman push requires exactly 2 arguments") + srcName := args[0] + if len(args) == 0 || len(args) > 2 { + return errors.New("podman push requires at least one image name, and optionally a second to specify a different destination name") + } + switch len(args) { + case 1: + destName = args[0] + case 2: + destName = args[1] } if err := validateFlags(c, pushFlags); err != nil { return err } - srcName := args[0] - destName := args[1] // --compress and --format can only be used for the "dir" transport splitArg := strings.SplitN(destName, ":", 2) -- cgit v1.2.3-54-g00ecf