change: report unhandled tracebacks to a repository

As repeats of these traceback notifications were annoying some of
the devops staff, and it took coordination to share tracebacks with
developers, this commit removes that responsibility off of devops
by reporting tracebacks to Gitlab repositories in the form of issues.

- removed ServerErrorNotification
- removed notifications.postmaster configuration option
- added notifications.gitlab-instance option
- added notifications.error-project option
- added notifications.error-token option
- added aurweb.exceptions.handle_form_exceptions, a POST route decorator

Issues are filed confidentially. This change will need updates
in infrastructure's ansible configuration before this can be
applied to aur.archlinux.org.

Signed-off-by: Kevin Morris <kevr@0cost.org>
This commit is contained in:
Kevin Morris 2022-02-09 23:35:08 -08:00
parent e2eb3a7ded
commit 7485cc231e
No known key found for this signature in database
GPG key ID: F7E46DED420788F3
14 changed files with 254 additions and 85 deletions

View file

@ -67,9 +67,24 @@ smtp-user =
smtp-password =
sender = notify@aur.archlinux.org
reply-to = noreply@aur.archlinux.org
; Administration email which will receive notifications about
; Gitlab instance base URL. We use this instance to report
; server errors in the form of confidential issues (see error-project).
gitlab-instance = https://gitlab.archlinux.org
; Project URI which will received confidential issues about
; various server details like uncaught exceptions.
postmaster = admin@example.org
; Errors reported will be filed using the 'triage' label, and so
; the 'triage' label must exist in any project URI given.
;
; - must be a valid project URI on notifications.error-repository
; - must contain a 'triage' label
;
error-project = set-me
; Gitlab access token with API privileges to post
; notifications.error-project issues.
error-token = set-me
[fingerprints]
Ed25519 = SHA256:HQ03dn6EasJHNDlt51KpQpFkT3yBX83x7BoIkA1iv2k