MCPcopy Create free account
hub / github.com/Unpackerr/unpackerr / sendWebhookWithLog

Method sendWebhookWithLog

pkg/unpackerr/webhook.go:153–174  ·  view source on GitHub ↗
(hook *WebhookConfig, payload *WebhookPayload)

Source from the content-addressed store, hash-verified

151}
152
153func (u *Unpackerr) sendWebhookWithLog(hook *WebhookConfig, payload *WebhookPayload) {
154 var body bytes.Buffer
155
156 if tmpl, err := hook.Template(); err != nil {
157 u.Errorf("Webhook Template (%s = %s): %v", payload.Path, payload.Event, err)
158 return
159 } else if err = tmpl.Execute(&body, payload); err != nil {
160 u.Errorf("Webhook Payload (%s = %s): %v", payload.Path, payload.Event, err)
161 return
162 }
163
164 bodyStr := body.String()
165
166 if reply, err := hook.Send(&body); err != nil {
167 u.Debugf("Webhook Payload: %s", bodyStr)
168 u.Errorf("Webhook (%s = %s): %s: %v", payload.Path, payload.Event, hook.Name, err)
169 u.Debugf("Webhook Response: %s", string(reply))
170 } else if !hook.Silent {
171 u.Debugf("Webhook Payload: %s", bodyStr)
172 u.Printf("[Webhook] Posted Payload (%s = %s): %s: OK", payload.Path, payload.Event, hook.Name)
173 }
174}
175
176// Send marshals an any into json and POSTs it to a URL.
177func (w *WebhookConfig) Send(body io.Reader) ([]byte, error) {

Callers 2

watchCmdAndWebhooksMethod · 0.95
sampleWebhookMethod · 0.95

Calls 6

TemplateMethod · 0.80
SendMethod · 0.80
ErrorfMethod · 0.65
StringMethod · 0.65
DebugfMethod · 0.65
PrintfMethod · 0.65

Tested by

no test coverage detected