webhook: match email with real user in database for test delivery (#3652)
parent
f4aedda13a
commit
279e475b89
|
@ -347,6 +347,8 @@ func SlackHooksEditPost(ctx *context.Context, form auth.NewSlackHookForm) {
|
|||
}
|
||||
|
||||
func TestWebhook(ctx *context.Context) {
|
||||
var authorUsername, committerUsername string
|
||||
|
||||
// Grab latest commit or fake one if it's empty repository.
|
||||
commit := ctx.Repo.Commit
|
||||
if commit == nil {
|
||||
|
@ -357,6 +359,27 @@ func TestWebhook(ctx *context.Context) {
|
|||
Committer: ghost.NewGitSig(),
|
||||
CommitMessage: "This is a fake commit",
|
||||
}
|
||||
authorUsername = ghost.Name
|
||||
committerUsername = ghost.Name
|
||||
} else {
|
||||
// Try to match email with a real user.
|
||||
author, err := models.GetUserByEmail(commit.Author.Email)
|
||||
if err == nil {
|
||||
authorUsername = author.Name
|
||||
} else if !models.IsErrUserNotExist(err) {
|
||||
ctx.Flash.Error(fmt.Sprintf("GetUserByEmail.(author) [%s]: %v", commit.Author.Email, err))
|
||||
ctx.Status(500)
|
||||
return
|
||||
}
|
||||
|
||||
committer, err := models.GetUserByEmail(commit.Committer.Email)
|
||||
if err == nil {
|
||||
committerUsername = committer.Name
|
||||
} else if !models.IsErrUserNotExist(err) {
|
||||
ctx.Flash.Error(fmt.Sprintf("GetUserByEmail.(committer) [%s]: %v", commit.Committer.Email, err))
|
||||
ctx.Status(500)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
apiUser := ctx.User.APIFormat()
|
||||
|
@ -370,12 +393,14 @@ func TestWebhook(ctx *context.Context) {
|
|||
Message: commit.Message(),
|
||||
URL: ctx.Repo.Repository.HTMLURL() + "/commit/" + commit.ID.String(),
|
||||
Author: &api.PayloadUser{
|
||||
Name: commit.Author.Name,
|
||||
Email: commit.Author.Email,
|
||||
Name: commit.Author.Name,
|
||||
Email: commit.Author.Email,
|
||||
UserName: authorUsername,
|
||||
},
|
||||
Committer: &api.PayloadUser{
|
||||
Name: commit.Committer.Name,
|
||||
Email: commit.Committer.Email,
|
||||
Name: commit.Committer.Name,
|
||||
Email: commit.Committer.Email,
|
||||
UserName: committerUsername,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue