mirror of https://github.com/docker/docs.git
add options to docker login
This commit is contained in:
parent
5ccde4dffc
commit
42bcfcc927
61
commands.go
61
commands.go
|
@ -282,45 +282,62 @@ func (cli *DockerCli) CmdLogin(args ...string) error {
|
||||||
return readStringOnRawTerminal(stdin, stdout, false)
|
return readStringOnRawTerminal(stdin, stdout, false)
|
||||||
}
|
}
|
||||||
|
|
||||||
oldState, err := term.SetRawTerminal()
|
cmd := Subcmd("login", "[OPTIONS]", "Register or Login to the docker registry server")
|
||||||
if err != nil {
|
flUsername := cmd.String("u", "", "username")
|
||||||
return err
|
flPassword := cmd.String("p", "", "password")
|
||||||
}
|
flEmail := cmd.String("e", "", "email")
|
||||||
defer term.RestoreTerminal(oldState)
|
|
||||||
|
|
||||||
cmd := Subcmd("login", "", "Register or Login to the docker registry server")
|
|
||||||
if err := cmd.Parse(args); err != nil {
|
if err := cmd.Parse(args); err != nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
var oldState *term.State
|
||||||
|
if *flUsername != "" && *flPassword != "" && *flEmail != "" {
|
||||||
|
oldState, err := term.SetRawTerminal()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
defer term.RestoreTerminal(oldState)
|
||||||
|
}
|
||||||
|
|
||||||
var username string
|
var username string
|
||||||
var password string
|
var password string
|
||||||
var email string
|
var email string
|
||||||
|
|
||||||
fmt.Print("Username (", cli.authConfig.Username, "): ")
|
if *flUsername == "" {
|
||||||
username = readAndEchoString(os.Stdin, os.Stdout)
|
fmt.Print("Username (", cli.authConfig.Username, "): ")
|
||||||
if username == "" {
|
username = readAndEchoString(os.Stdin, os.Stdout)
|
||||||
username = cli.authConfig.Username
|
if username == "" {
|
||||||
|
username = cli.authConfig.Username
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
username = *flUsername
|
||||||
}
|
}
|
||||||
if username != cli.authConfig.Username {
|
if username != cli.authConfig.Username {
|
||||||
fmt.Print("Password: ")
|
if *flPassword == "" {
|
||||||
password = readString(os.Stdin, os.Stdout)
|
fmt.Print("Password: ")
|
||||||
|
password = readString(os.Stdin, os.Stdout)
|
||||||
if password == "" {
|
if password == "" {
|
||||||
return fmt.Errorf("Error : Password Required")
|
return fmt.Errorf("Error : Password Required")
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
password = *flPassword
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt.Print("Email (", cli.authConfig.Email, "): ")
|
if *flEmail == "" {
|
||||||
email = readAndEchoString(os.Stdin, os.Stdout)
|
fmt.Print("Email (", cli.authConfig.Email, "): ")
|
||||||
if email == "" {
|
email = readAndEchoString(os.Stdin, os.Stdout)
|
||||||
email = cli.authConfig.Email
|
if email == "" {
|
||||||
|
email = cli.authConfig.Email
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
email = *flEmail
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
password = cli.authConfig.Password
|
password = cli.authConfig.Password
|
||||||
email = cli.authConfig.Email
|
email = cli.authConfig.Email
|
||||||
}
|
}
|
||||||
term.RestoreTerminal(oldState)
|
if oldState != nil {
|
||||||
|
term.RestoreTerminal(oldState)
|
||||||
|
}
|
||||||
cli.authConfig.Username = username
|
cli.authConfig.Username = username
|
||||||
cli.authConfig.Password = password
|
cli.authConfig.Password = password
|
||||||
cli.authConfig.Email = email
|
cli.authConfig.Email = email
|
||||||
|
|
|
@ -8,6 +8,10 @@
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
Usage: docker login
|
Usage: docker login [OPTIONS]
|
||||||
|
|
||||||
Register or Login to the docker registry server
|
Register or Login to the docker registry server
|
||||||
|
|
||||||
|
-e="": email
|
||||||
|
-p="": password
|
||||||
|
-u="": username
|
||||||
|
|
Loading…
Reference in New Issue