Skip to content

WebHook

webhook管理入口

webhook管理入口

钩子类型 (type:task-result)

钩子类型类型值解释
任务执行结束钩子task-result任务执行完成后调用,无论成功或失败都会调用
任务执行失败钩子task-failure任务执行失败后调用

请求方式

POST

字段类型注释
Authorizationstring项目 token(project token)

请求体

请求使用 cloudevents 进行封装

go
event := cloudevents.NewEvent()
event.SetID(utils.GetStrID()) // 随机id
event.SetSubject({webhook-type}) // webhook钩子类型
event.SetData(cloudevents.ApplicationJSON, body)
event.SetSource(fmt.Sprintf("gophercron-center-%s", {中心服务所在ip})) // gopehrcron-center-{中心服务所在ip}
event.SetType(eventType) // succeeded / failure
event.SetTime(time.Unix(res.EndTime, 0))
event := cloudevents.NewEvent()
event.SetID(utils.GetStrID()) // 随机id
event.SetSubject({webhook-type}) // webhook钩子类型
event.SetData(cloudevents.ApplicationJSON, body)
event.SetSource(fmt.Sprintf("gophercron-center-%s", {中心服务所在ip})) // gopehrcron-center-{中心服务所在ip}
event.SetType(eventType) // succeeded / failure
event.SetTime(time.Unix(res.EndTime, 0))

cloudevents 中 data 见下表

字段类型注释
task_idstring任务 id
project_idint64项目 id
commandstring任务命令
start_timeint64任务开始时间 unix 时间戳
end_timeint64任务结束时间 unix 时间戳
resultstring任务 stdout
errorstring失败信息(空则表示成功)
client_ipstring边缘 agent ip
tmp_idstring任务执行 id
operatorstring操作人,系统自动调用时为空