From d5647fe053f2fdd97118c6aebfb1e467bdbf3ed3 Mon Sep 17 00:00:00 2001 From: Theodore Cowan Date: Mon, 17 Dec 2018 07:05:44 -0500 Subject: add --get-login command to podman-login. Returns user if user is logged-in to the registry. Returns error if not logged in with non-zero status code. Signed-off-by: Theodore Cowan --- cmd/podman/login.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'cmd/podman') diff --git a/cmd/podman/login.go b/cmd/podman/login.go index cfdd8005b..4452651f8 100644 --- a/cmd/podman/login.go +++ b/cmd/podman/login.go @@ -33,6 +33,10 @@ var ( Name: "cert-dir", Usage: "Pathname of a directory containing TLS certificates and keys used to connect to the registry", }, + cli.BoolTFlag{ + Name: "get-login", + Usage: "Return the current login user for the registry", + }, cli.BoolTFlag{ Name: "tls-verify", Usage: "Require HTTPS and verify certificates when contacting registries (default: true)", @@ -65,6 +69,21 @@ func loginCmd(c *cli.Context) error { sc := common.GetSystemContext("", authfile, false) + if c.IsSet("get-login") { + user, err := config.GetUserLoggedIn(sc, server) + + if err != nil { + return errors.Wrapf(err, "unable to check for login user") + } + + if user == "" { + return errors.Errorf("not logged into %s", server) + } + + fmt.Printf("%s\n", user) + return nil + } + // username of user logged in to server (if one exists) userFromAuthFile, passFromAuthFile, err := config.GetAuthentication(sc, server) if err != nil { -- cgit v1.2.3-54-g00ecf