Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 40 additions & 9 deletions modules/actions/github.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,48 @@ const (
githubEventPullRequestComment = "pull_request_comment"
)

func convertFromGithubEvent(evt *jobparser.Event) string {
// canGithubEventMatch check if the input Github event can match any Gitea event.
func canGithubEventMatch(evt *jobparser.Event, triggedEvent webhook_module.HookEventType) bool {
switch evt.Name {
case githubEventPullRequest, githubEventPullRequestTarget, githubEventPullRequestReview,
githubEventPullRequestReviewComment:
return string(webhook_module.HookEventPullRequest)
case githubEventRegistryPackage:
return string(webhook_module.HookEventPackage)
case githubEventCreate, githubEventDelete, githubEventFork, githubEventPush,
githubEventIssues, githubEventIssueComment, githubEventRelease, githubEventPullRequestComment:
fallthrough
return triggedEvent == webhook_module.HookEventPackage

case githubEventIssues:
switch triggedEvent {
case webhook_module.HookEventIssues,
webhook_module.HookEventIssueAssign,
webhook_module.HookEventIssueLabel,
webhook_module.HookEventIssueMilestone:
return true

default:
return false
}

case githubEventPullRequest, githubEventPullRequestTarget:
switch triggedEvent {
case webhook_module.HookEventPullRequest,
webhook_module.HookEventPullRequestSync,
webhook_module.HookEventPullRequestAssign,
webhook_module.HookEventPullRequestLabel:
return true

default:
return false
}

case githubEventPullRequestReview:
switch triggedEvent {
case webhook_module.HookEventPullRequestReviewApproved,
webhook_module.HookEventPullRequestReviewComment,
webhook_module.HookEventPullRequestReviewRejected:
return true

default:
return false
}

default:
return evt.Name
return evt.Name == string(triggedEvent)
}
}
2 changes: 1 addition & 1 deletion modules/actions/workflows.go
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ func DetectWorkflows(commit *git.Commit, triggedEvent webhook_module.HookEventTy
}

func detectMatched(commit *git.Commit, triggedEvent webhook_module.HookEventType, payload api.Payloader, evt *jobparser.Event) bool {
if convertFromGithubEvent(evt) != string(triggedEvent) {
if !canGithubEventMatch(evt, triggedEvent) {
return false
}

Expand Down