diff --git a/cmd/admin.go b/cmd/admin.go index be21ec0f36..ecb4eb48a6 100644 --- a/cmd/admin.go +++ b/cmd/admin.go @@ -73,6 +73,10 @@ var ( Usage: "Length of the random password to be generated", Value: 12, }, + cli.BoolFlag{ + Name: "access-token", + Usage: "Generate access token for the user", + }, }, } @@ -300,7 +304,7 @@ func runCreateUser(c *cli.Context) error { changePassword = c.Bool("must-change-password") } - if err := models.CreateUser(&models.User{ + u := &models.User{ Name: username, Email: c.String("email"), Passwd: password, @@ -308,10 +312,25 @@ func runCreateUser(c *cli.Context) error { IsAdmin: c.Bool("admin"), MustChangePassword: changePassword, Theme: setting.UI.DefaultTheme, - }); err != nil { + } + + if err := models.CreateUser(u); err != nil { return fmt.Errorf("CreateUser: %v", err) } + if c.Bool("access-token") { + t := &models.AccessToken{ + Name: "gitea-admin", + UID: u.ID, + } + + if err := models.NewAccessToken(t); err != nil { + return err + } + + fmt.Printf("Access token was successfully created... %s\n", t.Token) + } + fmt.Printf("New user '%s' has been successfully created!\n", username) return nil }