private void CleanUpBackups()
{
//Get files in folder
var files = SftpManager.GetList(host, _backupFolder, Username, Password);
//Filename structure
var exp = new Regex(@"^build_\d\d\d\d_\d\d_\d\d_\d\d$");
//Loop through directory
foreach (var fileStruct in files)
{
//If a directory and matches filename structure
if (fileStruct.IsDirectory && exp.IsMatch(fileStruct.Name))
{
//Get year
var year = int.Parse(fileStruct.Name.Substring(6, 4));
//Get month
var month = int.Parse(fileStruct.Name.Substring(11, 2));
//Get day
var day = int.Parse(fileStruct.Name.Substring(14, 2));
//Get version
var version = int.Parse(fileStruct.Name.Substring(17, 2));
//Get date from file name
var date = new DateTime(year, month, day);
//If past expiration date
if (date < _deleteBeforeDate)
{
//Remove file from server
DeleteDirectory(_backupFolder + fileStruct.Name);
}
}
}
}