All checks were successful
CI / Lint, typecheck, test (push) Successful in 3m9s
CI / Build container images (push) Has been skipped
CD / Build and push images (push) Successful in 3m47s
CD / Deploy to Test (push) Successful in 8s
CD / Smoke tests against Test (push) Successful in 1m10s
CD / Promote to Int (push) Successful in 9s
CI / Auth e2e pack (push) Successful in 5m25s
CI / Import/export fidelity gate (push) Successful in 45s
New apps/backup service (ADR 0015): nightly pg_dump -Fc plus one tar of the uploads/plugins volumes as a consistent restore set on a new backups volume, retention prune that never removes the newest complete set, atomic status.json for the readiness/admin consumers (#85/#86), and a failure mail sent directly via nodemailer (the api may be the broken part) with de/en texts in the shared mails catalog. BACKUP_RUN_ONCE=1 gives the on-demand path; deploy/backup/restore.sh automates the documented restore runbook. The pure secret-store helpers moved to @dorfteich/shared so the sidecar resolves the wizard-written SMTP relay exactly like the api. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EwZ4jR4KFAPvpjWevfUGX1
35 lines
1.6 KiB
JSON
35 lines
1.6 KiB
JSON
{
|
|
"common": {
|
|
"greeting": "Hallo {{displayName}},",
|
|
"signoff": "Dein Dorfteich",
|
|
"ignoreHint": "Falls du diese E-Mail nicht angefordert hast, kannst du sie einfach ignorieren."
|
|
},
|
|
"verifyEmail": {
|
|
"subject": "Bestätige deine E-Mail-Adresse",
|
|
"body": "willkommen im Dorfteich! Bitte bestätige deine E-Mail-Adresse, um dein Konto zu aktivieren:",
|
|
"action": "E-Mail-Adresse bestätigen",
|
|
"expiry": "Der Link ist 24 Stunden gültig."
|
|
},
|
|
"resetPassword": {
|
|
"subject": "Passwort zurücksetzen",
|
|
"body": "jemand (hoffentlich du) hat das Zurücksetzen des Passworts für dein Konto angefordert. Über diesen Link kannst du ein neues Passwort setzen:",
|
|
"action": "Neues Passwort setzen",
|
|
"expiry": "Der Link ist eine Stunde gültig. Dein aktuelles Passwort bleibt gültig, bis du ein neues gesetzt hast."
|
|
},
|
|
"smtpTest": {
|
|
"subject": "SMTP-Testnachricht",
|
|
"body": "diese Testnachricht bestätigt, dass dein Dorfteich E-Mails über den konfigurierten SMTP-Server versenden kann. Deine Instanz erreichst du hier:",
|
|
"action": "Dorfteich öffnen",
|
|
"expiry": "Du kannst diese E-Mail einfach löschen."
|
|
},
|
|
"backupFailed": {
|
|
"subject": "[{{instance}}] Backup fehlgeschlagen ({{backupId}})",
|
|
"intro": "Der nächtliche Backup-Lauf auf {{instance}} ist fehlgeschlagen.",
|
|
"backupId": "Backup-ID: {{backupId}}",
|
|
"error": "Fehler: {{error}}",
|
|
"lastSuccess": "Letztes erfolgreiches Backup: {{finishedAt}}",
|
|
"lastSuccessNever": "Letztes erfolgreiches Backup: noch keines",
|
|
"hint": "Prüfe die Sidecar-Logs (docker compose logs backup) und die status.json auf dem Backups-Volume."
|
|
}
|
|
}
|