mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-31 14:31:02 +00:00 
			
		
		
		
	Fix some webhooks bugs (#3981)
* fix some webhooks bugs * update vendor Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com> * fix test * fix clearlabels * fix pullrequest webhook bug fix #3492 * update release webhook description * remove unused code * fix push webhook in pull request * small changes
This commit is contained in:
		
					parent
					
						
							
								dc0ef38950
							
						
					
				
			
			
				commit
				
					
						6bdc556b7f
					
				
			
		
					 16 changed files with 277 additions and 45 deletions
				
			
		|  | @ -159,12 +159,16 @@ func (issue *Issue) changeAssignee(sess *xorm.Session, doer *User, assigneeID in | |||
| 		return fmt.Errorf("createAssigneeComment: %v", err) | ||||
| 	} | ||||
| 
 | ||||
| 	mode, _ := accessLevel(sess, doer.ID, issue.Repo) | ||||
| 	if issue.IsPull { | ||||
| 		issue.PullRequest = &PullRequest{Issue: issue} | ||||
| 		if err = issue.loadPullRequest(sess); err != nil { | ||||
| 			return fmt.Errorf("loadPullRequest: %v", err) | ||||
| 		} | ||||
| 		issue.PullRequest.Issue = issue | ||||
| 		apiPullRequest := &api.PullRequestPayload{ | ||||
| 			Index:       issue.Index, | ||||
| 			PullRequest: issue.PullRequest.APIFormat(), | ||||
| 			Repository:  issue.Repo.APIFormat(AccessModeNone), | ||||
| 			Repository:  issue.Repo.APIFormat(mode), | ||||
| 			Sender:      doer.APIFormat(), | ||||
| 		} | ||||
| 		if removed { | ||||
|  | @ -172,7 +176,23 @@ func (issue *Issue) changeAssignee(sess *xorm.Session, doer *User, assigneeID in | |||
| 		} else { | ||||
| 			apiPullRequest.Action = api.HookIssueAssigned | ||||
| 		} | ||||
| 		if err := PrepareWebhooks(issue.Repo, HookEventPullRequest, apiPullRequest); err != nil { | ||||
| 		if err := prepareWebhooks(sess, issue.Repo, HookEventPullRequest, apiPullRequest); err != nil { | ||||
| 			log.Error(4, "PrepareWebhooks [is_pull: %v, remove_assignee: %v]: %v", issue.IsPull, removed, err) | ||||
| 			return nil | ||||
| 		} | ||||
| 	} else { | ||||
| 		apiIssue := &api.IssuePayload{ | ||||
| 			Index:      issue.Index, | ||||
| 			Issue:      issue.APIFormat(), | ||||
| 			Repository: issue.Repo.APIFormat(mode), | ||||
| 			Sender:     doer.APIFormat(), | ||||
| 		} | ||||
| 		if removed { | ||||
| 			apiIssue.Action = api.HookIssueUnassigned | ||||
| 		} else { | ||||
| 			apiIssue.Action = api.HookIssueAssigned | ||||
| 		} | ||||
| 		if err := prepareWebhooks(sess, issue.Repo, HookEventIssues, apiIssue); err != nil { | ||||
| 			log.Error(4, "PrepareWebhooks [is_pull: %v, remove_assignee: %v]: %v", issue.IsPull, removed, err) | ||||
| 			return nil | ||||
| 		} | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue