@@ -27,28 +27,21 @@ type EventType string
27
27
28
28
// List of available event types.
29
29
const (
30
+ EventConfidentialIssue EventType = "Confidential Issue Hook"
31
+ EventConfidentialNote EventType = "Confidential Note Hook"
30
32
EventTypeBuild EventType = "Build Hook"
31
33
EventTypeDeployment EventType = "Deployment Hook"
32
34
EventTypeIssue EventType = "Issue Hook"
33
- EventConfidentialIssue EventType = "Confidential Issue Hook"
34
35
EventTypeJob EventType = "Job Hook"
35
36
EventTypeMergeRequest EventType = "Merge Request Hook"
36
37
EventTypeNote EventType = "Note Hook"
37
- EventConfidentialNote EventType = "Confidential Note Hook"
38
38
EventTypePipeline EventType = "Pipeline Hook"
39
39
EventTypePush EventType = "Push Hook"
40
40
EventTypeRelease EventType = "Release Hook"
41
+ EventTypeServiceHook EventType = "Service Hook"
41
42
EventTypeSystemHook EventType = "System Hook"
42
43
EventTypeTagPush EventType = "Tag Push Hook"
43
44
EventTypeWikiPage EventType = "Wiki Page Hook"
44
- EventTypeServiceHook EventType = "Service Hook"
45
- )
46
-
47
- const (
48
- noteableTypeCommit = "Commit"
49
- noteableTypeMergeRequest = "MergeRequest"
50
- noteableTypeIssue = "Issue"
51
- noteableTypeSnippet = "Snippet"
52
45
)
53
46
54
47
const (
@@ -57,6 +50,13 @@ const (
57
50
eventObjectKindMergeRequest = "merge_request"
58
51
)
59
52
53
+ const (
54
+ noteableTypeCommit = "Commit"
55
+ noteableTypeIssue = "Issue"
56
+ noteableTypeMergeRequest = "MergeRequest"
57
+ noteableTypeSnippet = "Snippet"
58
+ )
59
+
60
60
type noteEvent struct {
61
61
ObjectKind string `json:"object_kind"`
62
62
ObjectAttributes struct {
@@ -220,16 +220,6 @@ func ParseWebhook(eventType EventType, payload []byte) (event interface{}, err e
220
220
event = & JobEvent {}
221
221
case EventTypeMergeRequest :
222
222
event = & MergeEvent {}
223
- case EventTypePipeline :
224
- event = & PipelineEvent {}
225
- case EventTypePush :
226
- event = & PushEvent {}
227
- case EventTypeRelease :
228
- event = & ReleaseEvent {}
229
- case EventTypeTagPush :
230
- event = & TagEvent {}
231
- case EventTypeWikiPage :
232
- event = & WikiPageEvent {}
233
223
case EventTypeNote , EventConfidentialNote :
234
224
note := & noteEvent {}
235
225
err := json .Unmarshal (payload , note )
@@ -253,6 +243,12 @@ func ParseWebhook(eventType EventType, payload []byte) (event interface{}, err e
253
243
default :
254
244
return nil , fmt .Errorf ("unexpected noteable type %s" , note .ObjectAttributes .NoteableType )
255
245
}
246
+ case EventTypePipeline :
247
+ event = & PipelineEvent {}
248
+ case EventTypePush :
249
+ event = & PushEvent {}
250
+ case EventTypeRelease :
251
+ event = & ReleaseEvent {}
256
252
case EventTypeServiceHook :
257
253
service := & serviceEvent {}
258
254
err := json .Unmarshal (payload , service )
@@ -269,7 +265,10 @@ func ParseWebhook(eventType EventType, payload []byte) (event interface{}, err e
269
265
default :
270
266
return nil , fmt .Errorf ("unexpected service type %s" , service .ObjectKind )
271
267
}
272
-
268
+ case EventTypeTagPush :
269
+ event = & TagEvent {}
270
+ case EventTypeWikiPage :
271
+ event = & WikiPageEvent {}
273
272
default :
274
273
return nil , fmt .Errorf ("unexpected event type: %s" , eventType )
275
274
}
0 commit comments