dual-forge-support #2

Merged
eric merged 3 commits from dual-forge-support into main 2026-06-09 19:30:20 -07:00
Owner
No description provided.
Add formatters for events previously skipped, with payload schemas
verified against Forgejo source (modules/structs/hook.go, action.go,
package.go):

- pull_request_review_request (review requested / removed)
- package (created/deleted; repository may be null for org-scoped
  packages, falls back to organization name)
- Forgejo Actions runs: action_run_failure/success/recover, plus a bare
  action_run fallback. ActionPayload has no top-level repository, so the
  formatter reads run.repository; severity derives from the action field.

Add WEBHOOK_AUTH_HEADER: optional fixed Authorization-header check
(timing-safe via hmac.compare_digest). Gitea/Forgejo can send this
instead of or alongside HMAC signing; when both are configured, both
must pass. Startup logging distinguishes "no auth at all" from "HMAC
disabled".

Docs (README, Claude.md, .env.example, docker-compose) updated; stale
"action_run unhandled" note replaced with workflow_run/workflow_job/
status. +17 tests -> 97 total.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Pin the Docker Hub namespace explicitly instead of deriving it from the
DOCKERHUB_USER secret, so the published image is unambiguous. Login still
uses DOCKERHUB_USER/DOCKERHUB_TOKEN; Forgejo registry tag unchanged.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Undo the hardcode; derive the namespace from the secret again.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
eric merged commit bf5f61742c into main 2026-06-09 19:30:20 -07:00
eric deleted branch dual-forge-support 2026-06-09 19:30:21 -07:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
eric/apprise-forge-notifications!2
No description provided.