Add verified snapshots and harden archive identity
This commit is contained in:
parent
c6de214ac8
commit
68b9cee880
9 changed files with 1372 additions and 52 deletions
16
main.go
16
main.go
|
|
@ -25,16 +25,32 @@ func main() {
|
|||
checkAccount := flag.String("check-account", "", "Konto-Logins pruefen und INBOX zaehlen, ohne zu kopieren")
|
||||
reindex := flag.String("reindex", "", "Archiv-mbox-Index fuer Konto/Archiv oder 'all' neu aufbauen")
|
||||
dedupTarget := flag.String("dedup-target", "", "Ziel-Postfach nach Message-ID-Dubletten scannen (Dry-Run ohne --apply)")
|
||||
snapshot := flag.String("snapshot", "", "konsistenten DB- und mbox-Praefix-Snapshot in ein neues Zielverzeichnis schreiben")
|
||||
verifySnapshot := flag.String("verify-snapshot", "", "Snapshot isoliert pruefen und dessen DB-Kopie vollstaendig reindexieren")
|
||||
apply := flag.Bool("apply", false, "Scharfe Ausfuehrung fuer riskante Wartungsbefehle wie --dedup-target")
|
||||
initDB := flag.Bool("init-db", false, "SQLite-DB neu anlegen, falls db_path noch nicht existiert")
|
||||
flag.Parse()
|
||||
if *snapshot != "" && (*verifySnapshot != "" || *runOnce != "" || *seedAccount != "" || *checkAccount != "" || *reindex != "" || *dedupTarget != "" || *watch) {
|
||||
log.Fatal("-snapshot kann nicht mit einem anderen Betriebsmodus kombiniert werden")
|
||||
}
|
||||
if *verifySnapshot != "" && (*runOnce != "" || *seedAccount != "" || *checkAccount != "" || *reindex != "" || *dedupTarget != "" || *watch) {
|
||||
log.Fatal("-verify-snapshot kann nicht mit einem anderen Betriebsmodus kombiniert werden")
|
||||
}
|
||||
|
||||
if err := backend.LoadConfig("config.json"); err != nil {
|
||||
log.Fatalf("config: %v", err)
|
||||
}
|
||||
if *verifySnapshot != "" {
|
||||
must(backend.VerifySnapshot(*verifySnapshot))
|
||||
return
|
||||
}
|
||||
if err := backend.ConnectDB(*initDB); err != nil {
|
||||
log.Fatalf("database: %v", err)
|
||||
}
|
||||
if *snapshot != "" {
|
||||
must(backend.CreateSnapshot(*snapshot))
|
||||
return
|
||||
}
|
||||
if err := backend.InitAuth(); err != nil {
|
||||
log.Fatalf("auth: %v", err)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue