Skip to content

Commit 1a1067a

Browse files
author
Matthew Fisher
committed
feat(parser): add --login=true to auth:register
This flag allows users to enable/disable automatic login after registering a user.
1 parent a4492a3 commit 1a1067a

4 files changed

Lines changed: 25 additions & 4 deletions

File tree

cmd/auth.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,7 @@ func (d *DeisCmd) Register(controller string, username string, password string,
7272

7373
d.Printf("Registered %s\n", username)
7474

75-
s := settings.Settings{Client: c}
76-
return d.doLogin(s, username, password)
75+
return nil
7776
}
7877

7978
func (d *DeisCmd) doLogin(s settings.Settings, username, password string) error {

cmd/auth_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ func TestRegister(t *testing.T) {
5353

5454
err = cmdr.Register(server.Server.URL, username, password, email, true)
5555
assert.NoErr(t, err)
56-
expected := fmt.Sprintf("Registered %s\nLogged in as %s\nConfiguration file written to %s\n", username, username, cf)
56+
expected := fmt.Sprintf("Registered %s\n", username)
5757

5858
assert.Equal(t, b.String(), expected, "output")
5959
}

parser/auth.go

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,8 @@ Options:
6464
provide a password for the new account.
6565
--email=<email>
6666
provide an email address.
67+
--login=true
68+
logs into the new account after registering.
6769
--ssl-verify=true
6870
enables/disables SSL certificate verification for API requests
6971
`
@@ -84,7 +86,19 @@ Options:
8486
sslVerify = false
8587
}
8688

87-
return cmdr.Register(controller, username, password, email, sslVerify)
89+
if err := cmdr.Register(controller, username, password, email, sslVerify); err != nil {
90+
return err
91+
}
92+
93+
// NOTE(bacongobbler): two use cases to check here:
94+
//
95+
// 1) Legacy; calling `deis auth:register` without --login
96+
// 2) calling `deis auth:register --login true`
97+
if args["--login"] == nil || args["--login"].(string) == "true" {
98+
return cmdr.Login(controller, username, password, sslVerify)
99+
}
100+
101+
return nil
88102
}
89103

90104
func authLogin(argv []string, cmdr cmd.Commander) error {

parser/auth_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,14 @@ func TestAuth(t *testing.T) {
6161
args: []string{"auth:register", server.Server.URL},
6262
expected: "",
6363
},
64+
{
65+
args: []string{"auth:register", server.Server.URL, "--ssl-verify=true"},
66+
expected: "",
67+
},
68+
{
69+
args: []string{"auth:register", server.Server.URL, "--login=false"},
70+
expected: "",
71+
},
6472
{
6573
args: []string{"auth:login", server.Server.URL},
6674
expected: "",

0 commit comments

Comments
 (0)