Definisce nomi componenti e packaging
This commit is contained in:
@@ -8,6 +8,21 @@ Il progetto dovra' essere sviluppato in Python, con interfaccia di configurazion
|
||||
|
||||
## Componenti principali
|
||||
|
||||
### Nomi applicativi
|
||||
|
||||
Nomi definitivi dei componenti:
|
||||
|
||||
- prodotto: `Bak&Rest`;
|
||||
- servizio Windows: `BakRestWatchdog`;
|
||||
- descrizione servizio: `Bak&Rest Watchdog Service`;
|
||||
- applicazione tray: `BakRestTray`;
|
||||
- applicazione di configurazione: `BakRestConfig`;
|
||||
- eseguibile servizio: `BakRestWatchdog.exe`;
|
||||
- eseguibile tray: `BakRestTray.exe`;
|
||||
- eseguibile configurazione: `BakRestConfig.exe`.
|
||||
|
||||
Gli eseguibili destinati all'utente finale non devono aprire finestre console.
|
||||
|
||||
### Servizio Windows watchdog
|
||||
|
||||
Il servizio Windows deve:
|
||||
@@ -356,6 +371,22 @@ Librerie candidate:
|
||||
- `subprocess` per eseguire `rsync`;
|
||||
- `logging` standard library per i log giornalieri.
|
||||
|
||||
Packaging candidato:
|
||||
|
||||
- `PyInstaller` per produrre eseguibili Windows;
|
||||
- build senza console per tray app e GUI di configurazione;
|
||||
- servizio Windows installabile come `BakRestWatchdog`;
|
||||
- eventuale installer successivo per configurare servizio, autostart tray e cartelle dati.
|
||||
|
||||
Gli eseguibili finali previsti sono:
|
||||
|
||||
```text
|
||||
dist/
|
||||
BakRestWatchdog.exe
|
||||
BakRestTray.exe
|
||||
BakRestConfig.exe
|
||||
```
|
||||
|
||||
## Decisioni aperte
|
||||
|
||||
- Scegliere formato definitivo della configurazione: YAML, TOML o JSON.
|
||||
@@ -364,6 +395,7 @@ Librerie candidate:
|
||||
- Definire quale distribuzione di `rsync` usare su Windows.
|
||||
- Definire come installare e aggiornare il servizio Windows.
|
||||
- Definire come gestire credenziali e segreti senza scriverli in chiaro nei log.
|
||||
- Definire se creare un installer unico o distribuire gli eseguibili con script di installazione.
|
||||
- Definire se prevedere backup versionato o solo mirror.
|
||||
- Definire politica per cancellazioni: propagare la cancellazione sul backup o conservarla.
|
||||
- Definire comportamento in caso di file non copiabili.
|
||||
|
||||
Reference in New Issue
Block a user