Log webhook deliveries
The receiver logged nothing about requests — not a delivery, not a rejected HMAC, not a 404 for an unknown hook id. Verified the hard way: an unsigned POST was correctly refused and left no trace whatsoever in the journal. That makes the one failure that matters invisible. A webhook with the wrong secret or the wrong content type fails the HMAC check and is dropped, and the only symptom is that releases arrive a day late on the timer instead of immediately — which looks exactly like nothing being wrong. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
affbb703be
commit
5c1c9d1608
1 changed files with 7 additions and 1 deletions
|
|
@ -312,7 +312,13 @@ in
|
||||||
Type = "simple";
|
Type = "simple";
|
||||||
RuntimeDirectory = "fdroid-webhook";
|
RuntimeDirectory = "fdroid-webhook";
|
||||||
ExecStartPre = "+${makeHooks}";
|
ExecStartPre = "+${makeHooks}";
|
||||||
ExecStart = "${pkgs.webhook}/bin/webhook -hooks /run/fdroid-webhook/hooks.json -port ${toString cfg.webhookPort}";
|
# -verbose, because without it this logs nothing at all about
|
||||||
|
# requests: not a delivery, not a rejection, not a 404 for an unknown
|
||||||
|
# hook id. A webhook whose secret or content type is wrong fails the
|
||||||
|
# HMAC check and is dropped, and the only remaining symptom is that
|
||||||
|
# releases quietly arrive a day late via the timer instead of at once.
|
||||||
|
# Silence is the one thing this must not do.
|
||||||
|
ExecStart = "${pkgs.webhook}/bin/webhook -hooks /run/fdroid-webhook/hooks.json -port ${toString cfg.webhookPort} -verbose";
|
||||||
Restart = "on-failure";
|
Restart = "on-failure";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue