forked from gitea/gitea
		
	Fix comments webhook panic backport (#12058)
* Handle HookIssueReviewed action in webhook * Fix webhook comment handling type cast panic
This commit is contained in:
		
							parent
							
								
									d059156c3a
								
							
						
					
					
						commit
						445992d929
					
				| @ -264,7 +264,11 @@ func GetDingtalkPayload(p api.Payloader, event models.HookEventType, meta string | ||||
| 	case models.HookEventIssues, models.HookEventIssueAssign, models.HookEventIssueLabel, models.HookEventIssueMilestone: | ||||
| 		return getDingtalkIssuesPayload(p.(*api.IssuePayload)) | ||||
| 	case models.HookEventIssueComment, models.HookEventPullRequestComment: | ||||
| 		return getDingtalkIssueCommentPayload(p.(*api.IssueCommentPayload)) | ||||
| 		pl, ok := p.(*api.IssueCommentPayload) | ||||
| 		if ok { | ||||
| 			return getDingtalkIssueCommentPayload(pl) | ||||
| 		} | ||||
| 		return getDingtalkPullRequestPayload(p.(*api.PullRequestPayload)) | ||||
| 	case models.HookEventPush: | ||||
| 		return getDingtalkPushPayload(p.(*api.PushPayload)) | ||||
| 	case models.HookEventPullRequest, models.HookEventPullRequestAssign, models.HookEventPullRequestLabel, | ||||
|  | ||||
| @ -408,7 +408,11 @@ func GetDiscordPayload(p api.Payloader, event models.HookEventType, meta string) | ||||
| 	case models.HookEventIssues, models.HookEventIssueAssign, models.HookEventIssueLabel, models.HookEventIssueMilestone: | ||||
| 		return getDiscordIssuesPayload(p.(*api.IssuePayload), discord) | ||||
| 	case models.HookEventIssueComment, models.HookEventPullRequestComment: | ||||
| 		return getDiscordIssueCommentPayload(p.(*api.IssueCommentPayload), discord) | ||||
| 		pl, ok := p.(*api.IssueCommentPayload) | ||||
| 		if ok { | ||||
| 			return getDiscordIssueCommentPayload(pl, discord) | ||||
| 		} | ||||
| 		return getDiscordPullRequestPayload(p.(*api.PullRequestPayload), discord) | ||||
| 	case models.HookEventPush: | ||||
| 		return getDiscordPushPayload(p.(*api.PushPayload), discord) | ||||
| 	case models.HookEventPullRequest, models.HookEventPullRequestAssign, models.HookEventPullRequestLabel, | ||||
|  | ||||
| @ -183,13 +183,17 @@ func GetFeishuPayload(p api.Payloader, event models.HookEventType, meta string) | ||||
| 		return getFeishuForkPayload(p.(*api.ForkPayload)) | ||||
| 	case models.HookEventIssues: | ||||
| 		return getFeishuIssuesPayload(p.(*api.IssuePayload)) | ||||
| 	case models.HookEventIssueComment: | ||||
| 		return getFeishuIssueCommentPayload(p.(*api.IssueCommentPayload)) | ||||
| 	case models.HookEventIssueComment, models.HookEventPullRequestComment: | ||||
| 		pl, ok := p.(*api.IssueCommentPayload) | ||||
| 		if ok { | ||||
| 			return getFeishuIssueCommentPayload(pl) | ||||
| 		} | ||||
| 		return getFeishuPullRequestPayload(p.(*api.PullRequestPayload)) | ||||
| 	case models.HookEventPush: | ||||
| 		return getFeishuPushPayload(p.(*api.PushPayload)) | ||||
| 	case models.HookEventPullRequest: | ||||
| 		return getFeishuPullRequestPayload(p.(*api.PullRequestPayload)) | ||||
| 	case models.HookEventPullRequestReviewApproved, models.HookEventPullRequestReviewRejected, models.HookEventPullRequestComment: | ||||
| 	case models.HookEventPullRequestReviewApproved, models.HookEventPullRequestReviewRejected: | ||||
| 		return getFeishuPullRequestApprovalPayload(p.(*api.PullRequestPayload), event) | ||||
| 	case models.HookEventRepository: | ||||
| 		return getFeishuRepositoryPayload(p.(*api.RepositoryPayload)) | ||||
|  | ||||
| @ -119,6 +119,8 @@ func getPullRequestPayloadInfo(p *api.PullRequestPayload, linkFormatter linkForm | ||||
| 			linkFormatter(mileStoneLink, p.PullRequest.Milestone.Title), titleLink) | ||||
| 	case api.HookIssueDemilestoned: | ||||
| 		text = fmt.Sprintf("[%s] Pull request milestone cleared: %s", repoLink, titleLink) | ||||
| 	case api.HookIssueReviewed: | ||||
| 		text = fmt.Sprintf("[%s] Pull request reviewed: %s", repoLink, titleLink) | ||||
| 	} | ||||
| 	if withSender { | ||||
| 		text += fmt.Sprintf(" by %s", linkFormatter(setting.AppURL+p.Sender.UserName, p.Sender.UserName)) | ||||
|  | ||||
| @ -230,7 +230,11 @@ func GetMatrixPayload(p api.Payloader, event models.HookEventType, meta string) | ||||
| 	case models.HookEventIssues, models.HookEventIssueAssign, models.HookEventIssueLabel, models.HookEventIssueMilestone: | ||||
| 		return getMatrixIssuesPayload(p.(*api.IssuePayload), matrix) | ||||
| 	case models.HookEventIssueComment, models.HookEventPullRequestComment: | ||||
| 		return getMatrixIssueCommentPayload(p.(*api.IssueCommentPayload), matrix) | ||||
| 		pl, ok := p.(*api.IssueCommentPayload) | ||||
| 		if ok { | ||||
| 			return getMatrixIssueCommentPayload(pl, matrix) | ||||
| 		} | ||||
| 		return getMatrixPullRequestPayload(p.(*api.PullRequestPayload), matrix) | ||||
| 	case models.HookEventPush: | ||||
| 		return getMatrixPushPayload(p.(*api.PushPayload), matrix) | ||||
| 	case models.HookEventPullRequest, models.HookEventPullRequestAssign, models.HookEventPullRequestLabel, | ||||
|  | ||||
| @ -558,7 +558,11 @@ func GetMSTeamsPayload(p api.Payloader, event models.HookEventType, meta string) | ||||
| 	case models.HookEventIssues, models.HookEventIssueAssign, models.HookEventIssueLabel, models.HookEventIssueMilestone: | ||||
| 		return getMSTeamsIssuesPayload(p.(*api.IssuePayload)) | ||||
| 	case models.HookEventIssueComment, models.HookEventPullRequestComment: | ||||
| 		return getMSTeamsIssueCommentPayload(p.(*api.IssueCommentPayload)) | ||||
| 		pl, ok := p.(*api.IssueCommentPayload) | ||||
| 		if ok { | ||||
| 			return getMSTeamsIssueCommentPayload(pl) | ||||
| 		} | ||||
| 		return getMSTeamsPullRequestPayload(p.(*api.PullRequestPayload)) | ||||
| 	case models.HookEventPush: | ||||
| 		return getMSTeamsPushPayload(p.(*api.PushPayload)) | ||||
| 	case models.HookEventPullRequest, models.HookEventPullRequestAssign, models.HookEventPullRequestLabel, | ||||
|  | ||||
| @ -321,7 +321,11 @@ func GetSlackPayload(p api.Payloader, event models.HookEventType, meta string) ( | ||||
| 	case models.HookEventIssues, models.HookEventIssueAssign, models.HookEventIssueLabel, models.HookEventIssueMilestone: | ||||
| 		return getSlackIssuesPayload(p.(*api.IssuePayload), slack) | ||||
| 	case models.HookEventIssueComment, models.HookEventPullRequestComment: | ||||
| 		return getSlackIssueCommentPayload(p.(*api.IssueCommentPayload), slack) | ||||
| 		pl, ok := p.(*api.IssueCommentPayload) | ||||
| 		if ok { | ||||
| 			return getSlackIssueCommentPayload(pl, slack) | ||||
| 		} | ||||
| 		return getSlackPullRequestPayload(p.(*api.PullRequestPayload), slack) | ||||
| 	case models.HookEventPush: | ||||
| 		return getSlackPushPayload(p.(*api.PushPayload), slack) | ||||
| 	case models.HookEventPullRequest, models.HookEventPullRequestAssign, models.HookEventPullRequestLabel, | ||||
|  | ||||
| @ -206,7 +206,11 @@ func GetTelegramPayload(p api.Payloader, event models.HookEventType, meta string | ||||
| 	case models.HookEventIssues, models.HookEventIssueAssign, models.HookEventIssueLabel, models.HookEventIssueMilestone: | ||||
| 		return getTelegramIssuesPayload(p.(*api.IssuePayload)) | ||||
| 	case models.HookEventIssueComment, models.HookEventPullRequestComment: | ||||
| 		return getTelegramIssueCommentPayload(p.(*api.IssueCommentPayload)) | ||||
| 		pl, ok := p.(*api.IssueCommentPayload) | ||||
| 		if ok { | ||||
| 			return getTelegramIssueCommentPayload(pl) | ||||
| 		} | ||||
| 		return getTelegramPullRequestPayload(p.(*api.PullRequestPayload)) | ||||
| 	case models.HookEventPush: | ||||
| 		return getTelegramPushPayload(p.(*api.PushPayload)) | ||||
| 	case models.HookEventPullRequest, models.HookEventPullRequestAssign, models.HookEventPullRequestLabel, | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Cornel
						Cornel