Switched to dedicated sync service
This commit is contained in:
27
OneDrive/OneDriveClient.cs
Normal file
27
OneDrive/OneDriveClient.cs
Normal file
@@ -0,0 +1,27 @@
|
||||
using OneDriveBackupService.Models;
|
||||
|
||||
namespace OneDriveBackupService.OneDrive;
|
||||
|
||||
public sealed class OneDriveClient(ConfigData config) {
|
||||
public void UploadFile(string filePath) {
|
||||
Directory.CreateDirectory(config.BackupUploadRoot);
|
||||
var destFileName = Path.Combine(config.BackupUploadRoot, Path.GetFileName(filePath));
|
||||
File.Move(filePath, destFileName);
|
||||
}
|
||||
|
||||
public int DeleteOldFiles() {
|
||||
var directory = new DirectoryInfo(config.BackupUploadRoot);
|
||||
|
||||
var filesToDelete = directory.EnumerateFiles()
|
||||
.Where(f => f.Name.StartsWith("backup_") && f.Name.EndsWith(".tar.gz"))
|
||||
.OrderByDescending(f => f.CreationTimeUtc)
|
||||
.Skip(config.KeepLast)
|
||||
.ToArray();
|
||||
|
||||
foreach (var file in filesToDelete) {
|
||||
file.Delete();
|
||||
}
|
||||
|
||||
return filesToDelete.Length;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user