|
|
@@ -58,6 +58,29 @@ func checkUserEmail(ctx context.Context, logger log.Logger, _ bool) error { |
|
|
|
return nil |
|
|
|
} |
|
|
|
|
|
|
|
// From time to time Gitea makes changes to the reserved usernames and which symbols |
|
|
|
// are allowed for various reasons. This check helps with detecting users that, according |
|
|
|
// to our reserved names, don't have a valid username. |
|
|
|
func checkUserName(ctx context.Context, logger log.Logger, _ bool) error { |
|
|
|
var invalidUserCount int64 |
|
|
|
if err := iterateUserAccounts(ctx, func(u *user.User) error { |
|
|
|
if err := user.IsUsableUsername(u.Name); err != nil { |
|
|
|
invalidUserCount++ |
|
|
|
logger.Warn("User[id=%d] does not have a valid username: %v", u.ID, err) |
|
|
|
} |
|
|
|
return nil |
|
|
|
}); err != nil { |
|
|
|
return fmt.Errorf("iterateUserAccounts: %v", err) |
|
|
|
} |
|
|
|
|
|
|
|
if invalidUserCount == 0 { |
|
|
|
logger.Info("All users have a valid username.") |
|
|
|
} else { |
|
|
|
logger.Warn("%d user(s) have a non-valid username.", invalidUserCount) |
|
|
|
} |
|
|
|
return nil |
|
|
|
} |
|
|
|
|
|
|
|
func init() { |
|
|
|
Register(&Check{ |
|
|
|
Title: "Check if users has an valid email address", |
|
|
@@ -66,4 +89,11 @@ func init() { |
|
|
|
Run: checkUserEmail, |
|
|
|
Priority: 9, |
|
|
|
}) |
|
|
|
Register(&Check{ |
|
|
|
Title: "Check if users have a valid username", |
|
|
|
Name: "check-user-names", |
|
|
|
IsDefault: false, |
|
|
|
Run: checkUserName, |
|
|
|
Priority: 9, |
|
|
|
}) |
|
|
|
} |