backups & queries

This commit is contained in:
Julian Krauser 2025-02-10 11:08:57 +01:00
parent 320678cec0
commit f602ee47cf
15 changed files with 98 additions and 25 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 478 KiB

View file

@ -245,6 +245,30 @@ Folgende Werte können zu einem Container konfiguriert werden:
*Hinweis:* Eine Änderung der Datenbank übernimmt die Daten nur automatisch in die neue Datenbank, wenn `BACKUP_AUTO_RESTORE` aktiviert ist und ein Backup angelegt ist. Es werden dann die Daten des gefundenen Backups in die neue Datenbank eingefügt. *Hinweis:* Eine Änderung der Datenbank übernimmt die Daten nur automatisch in die neue Datenbank, wenn `BACKUP_AUTO_RESTORE` aktiviert ist und ein Backup angelegt ist. Es werden dann die Daten des gefundenen Backups in die neue Datenbank eingefügt.
== Update der Version
Um eine Version auf eine Neuere zu aktualisieren, muss meist nur der Docker-Tag oder das Repo ersetzt werden.
Wer Docker mit `latest` nutzt, kann das neue Image direkt mit `docker pull` neu beziehen und dann den Container neustarten.
\
\
Informationen zu neuen Versionen können innerhalb der App unter `Benutzer > Version` oder in den Release-Pages gefunden werden.
Die Releases beinhalten Informationen zu einem Update und was zu beachten ist. So enthalten die Release-Informationen beispielsweise Vorbereitungen vor einem Update.
\
\
Bei Verwendung mittels Git, müssen die Repos neu bezogen werden. Anschließend müssen die Dependencies neu installiert und die Anwendungen neu gebaut werden.
== Wechsel des Datenbanksystems
Eine Funktion, die mit den Backups eingeführt wurde, ist `AUTO RESTORE`. `AUTO RESTORE` ist standardmäßig aktiviert und ermöglicht die automatische Wiederherstellung des letzten Backups - sofern vorhanden - wenn die Datenbank beim Start des Servers leer ist.
Dies vereinfacht auch den Wechsel zwischen Datenbanken, da nur eine neue Verbindung zu einer anderen Datenbank aufgebaut werden muss und die Daten nach dem Neustart des Servers automatisch in die neue leere Datenbank übertragen werden.
== WebApp
FF Admin ist als WebApp verfügbar. Dadurch lässt sich die Anwendung auf einem Smartphone oder Desktop über den Browser installieren.
== Einrichtung == Einrichtung
Um die Anwendung nutzen zu können, kann ein erster Administrator-Account wie folgt erstellt werden: Um die Anwendung nutzen zu können, kann ein erster Administrator-Account wie folgt erstellt werden:
@ -254,21 +278,3 @@ Um die Anwendung nutzen zu können, kann ein erster Administrator-Account wie fo
2. *Rollen und Berechtigungen*: Unter `Benutzer > Rollen` können die Rollen und Berechtigungen für die Benutzer erstellt und angepasst werden. 2. *Rollen und Berechtigungen*: Unter `Benutzer > Rollen` können die Rollen und Berechtigungen für die Benutzer erstellt und angepasst werden.
3. *Nutzer einladen*: Unter `Benutzer > Benutzer` können weitere Nutzer eingeladen werden. Diese erhalten dann eine E-Mail mit einem Link, um ein TOTP zu erhalten. 3. *Nutzer einladen*: Unter `Benutzer > Benutzer` können weitere Nutzer eingeladen werden. Diese erhalten dann eine E-Mail mit einem Link, um ein TOTP zu erhalten.
== Update der Version
Um eine Version auf eine Neuere zu aktualisieren, muss meist nur der Docker-Tag oder das Repo ersetzt werden.
Wer Docker mit `latest` nutzt, kann das neue Image direkt mit `docker pull` neu beziehen und dann den Container neustarten.
\
\
Informationen zu neuen Versionen können innerhalb der App im Account des Eigentümers oder in den Release-Pages gefunden werden.
Die Releases beinhalten Informationen zu einem Update und was zu beachten ist. So enthalten die Release-Informationen beispielsweise Vorbereitungen vor einem Update.
\
\
Bei Verwendung mittels Git, müssen die Repos neu bezogen werden. Anschließend müssen die Dependencies neu installiert und die Anwendungen neu gebaut werden.
== WebApp
FF Admin ist als WebApp verfügbar. Dadurch lässt sich die Anwendung auf einem Smartphone oder Desktop über den Browser installieren.

View file

@ -10,12 +10,12 @@ FF Admin nutzt verschiedenste Module, um Daten zu organisieren, die Verwaltung z
#include "./4-modules/4-newsletter.typ" #include "./4-modules/4-newsletter.typ"
== Backups #include "./4-modules/5-backups.typ"
== Query Builder & Query Store <query> #include "./4-modules/6-query.typ"
== Templates & Template Builder <template> #include "./4-modules/7-template.typ"
== Benutzer & Rollenverwaltung #include "./4-modules/8-user-roles.typ"
== Webapi #include "./4-modules/9-webapi.typ"

View file

@ -1,6 +1,6 @@
#import "@preview/wrap-it:0.1.1": * #import "@preview/wrap-it:0.1.1": *
== Protokolle == Protokolle <protocol>
#figure( #figure(
image("../../images/protocol-overview.png", width: 100%), image("../../images/protocol-overview.png", width: 100%),

View file

@ -1,6 +1,6 @@
#import "@preview/wrap-it:0.1.1": * #import "@preview/wrap-it:0.1.1": *
== Newsletter == Newsletter <newsletter>
#figure( #figure(
image("../../images/newsletter-overview.png", width: 100%), image("../../images/newsletter-overview.png", width: 100%),

View file

@ -0,0 +1,38 @@
#import "@preview/wrap-it:0.1.1": *
== Backups
#figure(
image("../../images/backup-overview.png", width: 100%),
)
Backups sind automatisch gesicherte Datenstände des FF Admin, die jederzeit wiederhergestellt werden können. Diese Backups sind nicht an ein bestimmtes Datenbanksystem gebunden und können daher jederzeit auf eine andere Plattform übertragen werden.
Backups werden in einem festgelegten Intervall erstellt. Das kleinste Intervall beträgt täglich. Zusätzlich kann konfiguriert werden, wie viele Backups parallel zur Verfügung stehen sollen. Standardmäßig ist eine Anzahl von 7 eingestellt, d.h. die gespeicherten Backups reichen immer eine Woche in die Vergangenheit.
Eine Funktion, die mit den Backups eingeführt wurde, ist `AUTO RESTORE`. `AUTO RESTORE` ist standardmäßig aktiviert und ermöglicht die automatische Wiederherstellung des letzten Backups - sofern vorhanden - wenn die Datenbank beim Start des Servers leer ist. Dies vereinfacht auch den Wechsel zwischen Datenbanken, da nur eine neue Verbindung zu einer anderen Datenbank aufgebaut werden muss und die Daten nach dem Neustart des Servers automatisch in die neue leere Datenbank übertragen werden.
\
\
Weitere Konfigurationsmöglichkeiten befinden sich in der Entwicklung.
\
\
#wrap-content(
figure(
image("../../images/backup-restore.png", width: 6.5cm),
),
)[
Derzeit können Backups nur vollständig wiederhergestellt werden. Dabei werden alle vorhandenen Daten gelöscht und durch die Daten des Backups ersetzt. Dadurch wird automatisch ein früherer Zustand wiederhergestellt. Neuere Einträge gehen dabei verloren.
Ein teilweises Wiederherstellen oder nur Ersetzen von Einträgen unter Beibehaltung der neu hinzugekommenen Einträge ist derzeit nicht möglich, da dies derzeit noch zu Datenverlusten führen kann.
]
#wrap-content(
figure(
image("../../images/backup-upload.png", width: 6.5cm),
),
align: right
)[
Heruntergeladene Backups können jederzeit wieder hochgeladen und im Admin gespeichert werden. Im Gegensatz zu den automatisch erstellten Backups sind die Slots nicht begrenzt. Es können also beliebig viele Backups hochgeladen und gespeichert werden.
Es ist geplant, "Backups" mit Basisdaten zur Verfügung zu stellen. Diese können dann in FF Admin hochgeladen und verwendet werden. Dazu muss allerdings die Funktion der Teil-Wiederherstellung funktionieren, da sonst Daten gelöscht werden.
]

View file

@ -0,0 +1,18 @@
#import "@preview/wrap-it:0.1.1": *
#pagebreak()
== Query Builder & Query Store <query>
Queries sind Abfragen an die Mitgliederdaten, die von den Nutzern selbst definiert und in anderen Modulen verwendet werden können.
#figure(
image("../../images/query-visual-builder.png", width: 100%),
)
Queries können entweder visuell zusammengebaut oder mit SQL geschrieben werden.
Dabei muss beachtet werden, dass mit diesen Queries keine Daten verändert werden können.
\
\
Die Queries können auch gespeichert werden, damit diese dann zum Beispiel im Newsletter (@newsletter) verwendet werden können.

View file

@ -0,0 +1,5 @@
#import "@preview/wrap-it:0.1.1": *
#pagebreak()
== Templates & Template Builder <template>

View file

@ -0,0 +1,3 @@
#import "@preview/wrap-it:0.1.1": *
== Benutzer & Rollenverwaltung

View file

@ -0,0 +1,3 @@
#import "@preview/wrap-it:0.1.1": *
== Webapi

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.