diff --git a/app/controller/home.js b/app/controller/home.js index d042269..f7b74bd 100644 --- a/app/controller/home.js +++ b/app/controller/home.js @@ -44,7 +44,7 @@ class HomeController extends Controller { if (ctx.request.headers['x-gitlab-event']) { gitlabEvent = ctx.request.headers['x-gitlab-event']; if (Object.values(X_GITLAB_EVENT).indexOf(gitlabEvent) === -1) { - const errMsg = `====> x-gitlab-event "${gitlabEvent}" is not supported}`; + const errMsg = `====> x-gitlab-event "${gitlabEvent}" is not supported`; this.logger.error(errMsg); ctx.body = { error: errMsg, diff --git a/app/imports/const.js b/app/imports/const.js index 758bd3a..fa197cb 100644 --- a/app/imports/const.js +++ b/app/imports/const.js @@ -36,6 +36,12 @@ const EVENT_TYPE = { const X_GITLAB_EVENT = { push: 'Push Hook', system: 'System Hook', + merge_request: 'Merge Request Hook', + tag_push: 'Tag Push Hook', + issue: 'Issue Hook', + note: 'Note Hook', + pipeline: 'Pipeline Hook', + wiki_page: 'Wiki Page Hook' }; module.exports = { OBJECT_KIND, EVENT_TYPE, X_GITLAB_EVENT }; diff --git a/app/service/webhook.js b/app/service/webhook.js index ad590ed..b688aa3 100644 --- a/app/service/webhook.js +++ b/app/service/webhook.js @@ -55,6 +55,15 @@ class WebhookService extends Service { ? this.pushHookHandler(content, data) : this.systemHookHandler(content, data); break; + case X_GITLAB_EVENT.merge_request: + case X_GITLAB_EVENT.tag_push: + case X_GITLAB_EVENT.issue: + case X_GITLAB_EVENT.note: + case X_GITLAB_EVENT.pipeline: + case X_GITLAB_EVENT.wiki_page: + // 所有通过object_kind处理的事件都使用pushHookHandler + this.pushHookHandler(content, data); + break; default: // controller make sure not to here break;