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

Method runCmdhookWithLog

pkg/unpackerr/cmdhook.go:47–64  ·  view source on GitHub ↗
(hook *WebhookConfig, payload *WebhookPayload)

Source from the content-addressed store, hash-verified

45}
46
47func (u *Unpackerr) runCmdhookWithLog(hook *WebhookConfig, payload *WebhookPayload) {
48 out, err := u.runCmdhook(hook, payload)
49
50 hook.Lock() // we only lock for the integer increments.
51 defer hook.Unlock()
52 hook.posts++ //nolint:wsl
53
54 switch {
55 case err != nil:
56 u.Errorf("Command Hook (%s) %s: %v: %s", payload.Event, hook.Name, err, out.String())
57 hook.fails++ //nolint:wsl
58 case hook.Silent || out == nil:
59 u.Printf("[Cmdhook] Queue: %d/%d. Ran command %s", len(u.hookChan), cap(u.hookChan), hook.Name)
60 default:
61 u.Printf("[Cmdhook] Queue: %d/%d. Ran command %s: %s",
62 len(u.hookChan), cap(u.hookChan), hook.Name, strings.TrimSpace(out.String()))
63 }
64}
65
66func (u *Unpackerr) runCmdhook(hook *WebhookConfig, payload *WebhookPayload) (*bytes.Buffer, error) {
67 if hook.Command == "" {

Callers 1

watchCmdAndWebhooksMethod · 0.95

Calls 4

runCmdhookMethod · 0.95
ErrorfMethod · 0.65
StringMethod · 0.65
PrintfMethod · 0.65

Tested by

no test coverage detected