Просмотр исходного кода

Moves password stdin down to the original location.

Kenix 3 лет назад
Родитель
Сommit
50cd50cfdf
1 измененных файлов с 7 добавлено и 9 удалено
  1. 7 9
      cmd/user.go

+ 7 - 9
cmd/user.go

@@ -147,7 +147,13 @@ func execUserAdd(c *cli.Context) error {
 	} else if !auth.AllowedRole(role) {
 		return errors.New("role must be either 'user' or 'admin'")
 	}
-
+	manager, err := createAuthManager(c)
+	if err != nil {
+		return err
+	}
+	if user, _ := manager.User(username); user != nil {
+		return fmt.Errorf("user %s already exists", username)
+	}
 	// If the password env var was not set, read it from stdin
 	if password == "" {
 		p, err := readPasswordAndConfirm(c)
@@ -157,14 +163,6 @@ func execUserAdd(c *cli.Context) error {
 
 		password = p
 	}
-
-	manager, err := createAuthManager(c)
-	if err != nil {
-		return err
-	}
-	if user, _ := manager.User(username); user != nil {
-		return fmt.Errorf("user %s already exists", username)
-	}
 	if err := manager.AddUser(username, password, role); err != nil {
 		return err
 	}