Skip to content
Snippets Groups Projects
Commit 6dc564a4 authored by Tulir Asokan's avatar Tulir Asokan :cat2:
Browse files

Update confidential issue webhook handling

The webhook library maintainer preferred having a separate type for
confidential issues.
parent 6fc4cca9
No related branches found
No related tags found
No related merge requests found
......@@ -44,7 +44,7 @@ func startWebhook() func() {
hook.RegisterEvents(handlePushEvent, gitlab.PushEvents)
hook.RegisterEvents(handleTagEvent, gitlab.TagEvents)
hook.RegisterEvents(handleIssueEvent, gitlab.IssuesEvents)
hook.RegisterEvents(handleConfidentialIssueEvent, gitlab.Event("Confidential Issue Hook"))
hook.RegisterEvents(handleIssueEvent, gitlab.ConfidentialIssuesEvents)
hook.RegisterEvents(handleMergeRequestEvent, gitlab.MergeRequestEvents)
hook.RegisterEvents(handleCommentEvent, gitlab.CommentEvents)
......@@ -141,21 +141,20 @@ func handleTagEvent(payload interface{}, header webhooks.Header) {
tag)
}
func handleConfidentialIssueEvent(payload interface{}, header webhooks.Header) {
header["X-Confidential-Issue"] = []string{"true"}
handleIssueEvent(payload, header)
}
func handleIssueEvent(payload interface{}, header webhooks.Header) {
data := payload.(gitlab.IssueEventPayload)
roomID := header["X-Room-Id"][0]
room := mxbot.GetRoom(roomID)
data, ok := payload.(gitlab.IssueEventPayload)
confidential := ""
confidentialHeader, _ := header["X-Confidential-Issue"]
if len(confidentialHeader) > 0 && confidentialHeader[0] == "true" {
if !ok {
data2, ok := payload.(gitlab.ConfidentialIssueEventPayload)
if !ok {
fmt.Println("Unexpected error: Received issue event with incorrect payload type.")
return
}
confidential = "confidential "
data = data2.IssueEventPayload
}
roomID := header["X-Room-Id"][0]
room := mxbot.GetRoom(roomID)
var action = data.ObjectAttributes.Action
if action == "update" || len(action) == 0 {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment