Add Dingtalk webhook support (#4773)

* Add dingtalk webhook into html template

* Add Dingtalk's icon

* Insert dingtalk into repo's webhook page template

* Insert dingtalk into org's webhook page

* Add dingtalk into default webhook config

* Add locale string for add_dingtalk_hook_desc

* Update bindata

* Add dingtalk webhook form validator

* Add dingtalk hook task

* Add dingtalk hook create handler

* Add dingtalk hook edit handler

* Add dingtalk router

* Add dingtalk webhook task skeleton

* Add markdown link formatter

* Add Dingtalk ActionCard create wrapper

* Add support for dingtalk create event payload

* Add support for dingtalk delete event payload

* Add support for dingtalk fork event payload

* Add support for dingtalk push event payload

* Add support for dingtalk issue event payload

* Add support for dingtalk issue comment payload

* Add support for dingtalk pull event payload

* Add support for dingtalk release event payload
This commit is contained in:
Athurg Feng
2017-09-22 02:32:48 +08:00
committed by 无闻
parent b1100b5e34
commit 52f3833811
37 changed files with 647 additions and 255 deletions

View File

@@ -349,6 +349,7 @@ const (
GOGS HookTaskType = iota + 1
SLACK
DISCORD
DINGTALK
)
var hookTaskTypes = map[string]HookTaskType{
@@ -571,6 +572,11 @@ func prepareHookTasks(e Engine, repo *Repository, event HookEventType, p api.Pay
if err != nil {
return fmt.Errorf("GetDiscordPayload: %v", err)
}
case DINGTALK:
payloader, err = GetDingtalkPayload(p, event)
if err != nil {
return fmt.Errorf("GetDingtalkPayload: %v", err)
}
default:
payloader = p
}