diff --git a/backend/main.go b/backend/main.go index fcd701c..e10f01b 100644 --- a/backend/main.go +++ b/backend/main.go @@ -39,7 +39,7 @@ func main() { // Setup data directory dataDir, err := setupDataDir() if err != nil { - slog.Error("Cannot set data directory: %s; %w", os.Getenv("DATA_DIR"), err) + slog.Error("Cannot set data directory", "dir", os.Getenv("DATA_DIR"), "error", err) os.Exit(1) } diff --git a/backend/setup_data_dir.go b/backend/setup_data_dir.go index f947a24..40b8048 100644 --- a/backend/setup_data_dir.go +++ b/backend/setup_data_dir.go @@ -14,6 +14,10 @@ func setupDataDir() (string, error) { dataDir = filepath.Join(".", os.Getenv("DATA_DIR")) } + if !filepath.IsLocal(dataDir) { + return "", fmt.Errorf("directory '%s' is not valid or not local", dataDir) + } + if _, err := os.Stat(dataDir); os.IsNotExist(err) { err := os.Mkdir(dataDir, 0o755) if err != nil {