Update/Reinstall-Skript für frische Release-Installationen (update.sh)
Ergänzt install.sh (das ein bestehendes Checkout voraussetzt) um einen Weg, eine bisher ad-hoc gepflegte Installation (z.B. per manuellem Datei-Upload während der Entwicklung) durch eine frische, aus einem Git-Tag geklonte Installation zu ersetzen: - Stoppt/deaktiviert tesm.service, tesm-check.service, tesm-check-restart.timer. - Verschiebt das bestehende /srv/tesm NICHT gelöscht, sondern nach /srv/tesm-backup-<Zeitstempel> -- bleibt als Rückfalloption und Datenquelle für einen späteren Export/Import vollständig erhalten. - Klont den angegebenen Release-Tag frisch und führt darin install.sh aus. - Weist sowohl vor dem Start als auch am Ende deutlich darauf hin, dass das Ergebnis eine FRISCHE Installation ohne die Daten der alten Instanz ist -- vorher exportieren (Einstellungen -> Im-/Export) oder danach alles neu einrichten. README um den entsprechenden Abschnitt ergänzt.
This commit is contained in:
@@ -1114,6 +1114,34 @@ konfiguriert nginx als Reverse-Proxy auf Port 80.
|
||||
| `TESM_SECRET_KEY` | Flask Secret Key (überschreibt Datei) | zufällig, in `secret.key` gespeichert|
|
||||
| `PORT`, `FLASK_DEBUG` | Flask-Serverport / Debug-Modus | `5000` / aus |
|
||||
|
||||
### Frische Neuinstallation aus einem Release (`update.sh`)
|
||||
|
||||
Für einen Host, dessen `/srv/tesm` bislang ad-hoc gepflegt wurde (z.B. per
|
||||
manuellem Datei-Upload statt über `install.sh`), oder um einen sauberen
|
||||
Stand aus einem getaggten Release herzustellen, gibt es zusätzlich zum
|
||||
`git pull` + `install.sh`-Update oben `update.sh`:
|
||||
|
||||
```bash
|
||||
sudo ./update.sh
|
||||
# oder mit einer anderen Version/Repo-URL:
|
||||
sudo TESM_RELEASE_TAG=v1.0.0 TESM_REPO_URL=https://gitea.../alientim/tesm.git ./update.sh
|
||||
```
|
||||
|
||||
Das Skript stoppt und deaktiviert zunächst die laufenden Dienste
|
||||
(`tesm.service`, `tesm-check.service`, `tesm-check-restart.timer`),
|
||||
verschiebt das bestehende `/srv/tesm` **ohne es zu löschen** nach
|
||||
`/srv/tesm-backup-<Zeitstempel>` (bleibt inkl. `sqlite.db` als Rückfall-
|
||||
option und Datenquelle erhalten), klont dann den angegebenen Git-Tag frisch
|
||||
und führt darin `install.sh` aus.
|
||||
|
||||
**Ergebnis ist eine komplett frische Installation** — neue, leere Datenbank,
|
||||
keine Geräte/Switche/Zugangsdaten/Benutzer/Einstellungen aus der alten
|
||||
Instanz. Vor dem Ausführen deshalb unbedingt unter **Einstellungen →
|
||||
Im-/Export** ein Backup der alten Instanz exportieren; danach entweder alles
|
||||
manuell neu einrichten oder dieses Backup in die neue Installation
|
||||
importieren (siehe [Import/Export](#importexport)). Das Skript weist sowohl
|
||||
vor dem Start als auch am Ende explizit darauf hin.
|
||||
|
||||
## Browser-SSH-Terminal (Switch-Verbindungstest)
|
||||
|
||||
„Verbindung testen“ im Switch-Modal öffnet eine WebSocket-Verbindung zu
|
||||
|
||||
Reference in New Issue
Block a user