fix: add missing WebDAV path migration and remove duplicate migration.go

This commit is contained in:
2026-08-28 22:19:44 +02:00
parent 4e7f577978
commit f13ebbd9a2
+35
View File
@@ -366,6 +366,41 @@ func migrateOldPaths(st *store.Store, dataDir string, logger *slog.Logger) {
} }
} }
// Migrate WebDAV files from old flat structure (dataDir/files/<username>/)
// to new nested structure (dataDir/<username>/files/)
filesRoot := filepath.Join(dataDir, "files")
if _, err := os.Stat(filesRoot); err == nil {
if entries, er := os.ReadDir(filesRoot); er == nil {
for _, entry := range entries {
if !entry.IsDir() {
continue
}
username := entry.Name()
oldWebdavPath := filepath.Join(filesRoot, username)
newUserDir := filepath.Join(dataDir, username)
newWebdavPath := filepath.Join(newUserDir, "files")
if _, e := os.Stat(oldWebdavPath); e != nil {
continue
}
if _, e := os.Stat(newWebdavPath); !os.IsNotExist(e) {
continue
}
logger.Info("Migrating webdav files", "user", username, "from", oldWebdavPath, "to", newWebdavPath)
if mkErr := os.MkdirAll(filepath.Dir(newWebdavPath), 0755); mkErr != nil {
logger.Warn("Failed to create directory for webdav migration", "path", newWebdavPath, "error", mkErr)
continue
}
if mvErr := moveDirContent(oldWebdavPath, newWebdavPath); mvErr != nil {
logger.Warn("Failed to migrate webdav files", "user", username, "error", mvErr)
} else {
logger.Info("webdav files migration complete", "user", username)
}
}
}
}
logger.Info("Legacy structure check complete") logger.Info("Legacy structure check complete")
} }