add admin panel

This commit is contained in:
2026-02-13 19:44:00 +01:00
parent fb9bb2fc82
commit c672fccce3
11 changed files with 2185 additions and 255 deletions

View File

@@ -5,7 +5,6 @@ package main
import (
"log"
"net/http"
"os"
"time"
"git.ma-al.com/goc_marek/zfs/internal/server"
@@ -31,23 +30,12 @@ func main() {
localBackend := server.NewLocalBackend(cfg.BaseDataset)
// Create metadata directory if needed (only if path contains a directory)
if idx := len(cfg.MetadataFile) - 1; idx > 0 {
dir := cfg.MetadataFile
foundSlash := false
for i := len(dir) - 1; i >= 0; i-- {
if dir[i] == '/' {
dir = dir[:i]
foundSlash = true
break
}
}
if foundSlash && dir != "" {
os.MkdirAll(dir, 0755)
}
// Initialize server with SQLite database
srv, err := server.New(cfg.DatabasePath, s3Backend, localBackend)
if err != nil {
log.Fatalf("Failed to initialize server: %v", err)
}
srv := server.New(cfg.ConfigFile, cfg.MetadataFile, s3Backend, localBackend)
defer srv.Close()
// Register HTTP routes
mux := http.NewServeMux()
@@ -63,8 +51,7 @@ func main() {
}
log.Printf("ZFS Snapshot Server starting on port %s", cfg.Port)
log.Printf("Config file: %s", cfg.ConfigFile)
log.Printf("Metadata file: %s", cfg.MetadataFile)
log.Printf("Database: %s", cfg.DatabasePath)
log.Printf("S3 enabled: %v", cfg.S3Enabled)
if err := httpServer.ListenAndServe(); err != nil {