do the thing for realz this time

This commit is contained in:
IsWaffle 2024-03-28 16:30:12 -04:00
parent 8d62adb25e
commit f478552a33
10 changed files with 28 additions and 19 deletions

View File

@ -5,8 +5,8 @@
<TargetFramework>net8.0</TargetFramework> <TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings> <ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable> <Nullable>enable</Nullable>
<AssemblyVersion>1.5.7</AssemblyVersion> <AssemblyVersion>1.5.8</AssemblyVersion>
<FileVersion>1.5.7</FileVersion> <FileVersion>1.5.8</FileVersion>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>

View File

@ -1,5 +0,0 @@
namespace EftPatchHelper.Interfaces;
public interface ICompressPatcherTask : ITaskable
{
}

View File

@ -0,0 +1,5 @@
namespace EftPatchHelper.Interfaces;
public interface ICompressPatcherTasks : ITaskable
{
}

View File

@ -30,7 +30,7 @@ namespace EftPatchHelper.Model
_folderId = folderId; _folderId = folderId;
UploadFileInfo = file; UploadFileInfo = file;
ServiceName = "GoFile"; ServiceName = "GoFile";
DisplayName = $"{ServiceName} Upload: {UploadFileInfo.Name}"; DisplayName = $"{ServiceName} Upload";
HubEntryText = $"Download from {ServiceName}"; HubEntryText = $"Download from {ServiceName}";
AddHubEntry = true; AddHubEntry = true;
} }

View File

@ -27,7 +27,7 @@ namespace EftPatchHelper.Model
_email = email; _email = email;
_password = password; _password = password;
ServiceName = "Mega"; ServiceName = "Mega";
DisplayName = $"{ServiceName} Upload: {UploadFileInfo.Name}"; DisplayName = $"{ServiceName} Upload";
HubEntryText = $"Download from {ServiceName}"; HubEntryText = $"Download from {ServiceName}";
AddHubEntry = true; AddHubEntry = true;
} }

View File

@ -30,7 +30,7 @@ public class SftpUpload : IFileUpload
}; };
ServiceName = _sftpInfo.Hostname; ServiceName = _sftpInfo.Hostname;
DisplayName = $"{ServiceName} Upload: {UploadFileInfo.Name}"; DisplayName = $"{ServiceName} Upload";
HubEntryText = $"Download from {ServiceName}"; HubEntryText = $"Download from {ServiceName}";
AddHubEntry = false; AddHubEntry = false;
} }

View File

@ -20,6 +20,7 @@ namespace EftPatchHelper
ITaskable _fileProcessingTasks; ITaskable _fileProcessingTasks;
ITaskable _patchGenTasks; ITaskable _patchGenTasks;
ITaskable _patchTestingTasks; ITaskable _patchTestingTasks;
private ITaskable _compressPatcherTasks;
ITaskable _createReleaseTasks; ITaskable _createReleaseTasks;
ITaskable _uploadTasks; ITaskable _uploadTasks;
@ -45,6 +46,7 @@ namespace EftPatchHelper
IFileProcessingTasks fileProcessingTasks, IFileProcessingTasks fileProcessingTasks,
IPatchGenTasks patchGenTasks, IPatchGenTasks patchGenTasks,
IPatchTestingTasks patchTestingTasks, IPatchTestingTasks patchTestingTasks,
ICompressPatcherTasks compressPatcherTasks,
IUploadTasks uploadTasks, IUploadTasks uploadTasks,
IReleaseCreator createReleaseTasks IReleaseCreator createReleaseTasks
) )
@ -55,6 +57,7 @@ namespace EftPatchHelper
_fileProcessingTasks = fileProcessingTasks; _fileProcessingTasks = fileProcessingTasks;
_patchGenTasks = patchGenTasks; _patchGenTasks = patchGenTasks;
_patchTestingTasks = patchTestingTasks; _patchTestingTasks = patchTestingTasks;
_compressPatcherTasks = compressPatcherTasks;
_createReleaseTasks = createReleaseTasks; _createReleaseTasks = createReleaseTasks;
_uploadTasks = uploadTasks; _uploadTasks = uploadTasks;
} }
@ -67,6 +70,7 @@ namespace EftPatchHelper
_fileProcessingTasks.Run(); _fileProcessingTasks.Run();
_patchGenTasks.Run(); _patchGenTasks.Run();
_patchTestingTasks.Run(); _patchTestingTasks.Run();
_compressPatcherTasks.Run();
_uploadTasks.Run(); _uploadTasks.Run();
_createReleaseTasks.Run(); _createReleaseTasks.Run();
} }
@ -84,6 +88,9 @@ namespace EftPatchHelper
return settings; return settings;
}); });
services.AddSingleton<FileHelper>();
services.AddSingleton<ZipHelper>();
services.AddScoped<EftClientSelector>(); services.AddScoped<EftClientSelector>();
services.AddTransient<ISettingsTask, StartupSettingsTask>(); services.AddTransient<ISettingsTask, StartupSettingsTask>();
@ -92,7 +99,7 @@ namespace EftPatchHelper
services.AddTransient<IFileProcessingTasks, FileProcessingTasks>(); services.AddTransient<IFileProcessingTasks, FileProcessingTasks>();
services.AddTransient<IPatchGenTasks, PatchGenTasks>(); services.AddTransient<IPatchGenTasks, PatchGenTasks>();
services.AddTransient<IPatchTestingTasks, PatchTestingTasks>(); services.AddTransient<IPatchTestingTasks, PatchTestingTasks>();
services.AddTransient<ICompressPatcherTask, CompressPatcherTask>(); services.AddTransient<ICompressPatcherTasks, CompressPatcherTasks>();
services.AddTransient<IReleaseCreator, CreateReleaseTasks>(); services.AddTransient<IReleaseCreator, CreateReleaseTasks>();
services.AddTransient<IUploadTasks, UploadTasks>(); services.AddTransient<IUploadTasks, UploadTasks>();
services.AddTransient<Program>(); services.AddTransient<Program>();

View File

@ -6,13 +6,13 @@ using Spectre.Console;
namespace EftPatchHelper.Tasks; namespace EftPatchHelper.Tasks;
public class CompressPatcherTask : ICompressPatcherTask public class CompressPatcherTasks : ICompressPatcherTasks
{ {
private Options _options; private Options _options;
private FileHelper _fileHelper; private FileHelper _fileHelper;
private ZipHelper _zipHelper; private ZipHelper _zipHelper;
public CompressPatcherTask(Options options, FileHelper fileHelper, ZipHelper zipHelper) public CompressPatcherTasks(Options options, FileHelper fileHelper, ZipHelper zipHelper)
{ {
_options = options; _options = options;
_fileHelper = fileHelper; _fileHelper = fileHelper;
@ -21,7 +21,7 @@ public class CompressPatcherTask : ICompressPatcherTask
public bool CompressPatcher() public bool CompressPatcher()
{ {
AnsiConsole.Progress() return AnsiConsole.Progress()
.Columns(new ProgressColumn[] .Columns(new ProgressColumn[]
{ {
new TaskDescriptionColumn(), new TaskDescriptionColumn(),
@ -32,6 +32,7 @@ public class CompressPatcherTask : ICompressPatcherTask
}) })
.Start(ctx => .Start(ctx =>
{ {
var compressionTask = ctx.AddTask("Compressing Patcher"); var compressionTask = ctx.AddTask("Compressing Patcher");
compressionTask.MaxValue = 100; compressionTask.MaxValue = 100;
@ -42,19 +43,17 @@ public class CompressPatcherTask : ICompressPatcherTask
var patchFolder = new DirectoryInfo(_options.OutputPatchPath); var patchFolder = new DirectoryInfo(_options.OutputPatchPath);
var patchArchiveFile = new FileInfo(_options.OutputPatchPath + ".7z");
if (!patchFolder.Exists) if (!patchFolder.Exists)
{ {
return false; return false;
} }
var patchArchiveFile = new FileInfo(_options.OutputPatchPath + ".7z");
var progress = new Progress<double>(p => { compressionTask.Increment(p - compressionTask.Percentage);}); var progress = new Progress<double>(p => { compressionTask.Increment(p - compressionTask.Percentage);});
return _zipHelper.Compress(patchFolder, patchArchiveFile, progress); return _zipHelper.Compress(patchFolder, patchArchiveFile, progress);
}); });
return false;
} }
public void Run() public void Run()

View File

@ -48,6 +48,7 @@ namespace EftPatchHelper.Tasks
$"OutputFolderName::{patcherOutputName}", $"OutputFolderName::{patcherOutputName}",
$"SourceFolderPath::{_options.SourceClient.PrepPath}", $"SourceFolderPath::{_options.SourceClient.PrepPath}",
$"TargetFolderPath::{_options.TargetClient.PrepPath}", $"TargetFolderPath::{_options.TargetClient.PrepPath}",
$"AutoZip::false",
$"AutoClose::{_settings.AutoClose}" $"AutoClose::{_settings.AutoClose}"
} }
}); });

View File

@ -45,7 +45,7 @@ namespace EftPatchHelper.Tasks
{ {
var gofile = new GoFileUpload(patcherFile, _settings.GoFileApiKey, _settings.GoFileFolderId); var gofile = new GoFileUpload(patcherFile, _settings.GoFileApiKey, _settings.GoFileFolderId);
_fileUploads.Add(gofile); _fileUploads.Add(gofile);
AnsiConsole.WriteLine("Added MEGA"); AnsiConsole.WriteLine("Added GoFile");
} }
if (_settings.SftpUploads.Count > 0 && _options.UploadToSftpSites) if (_settings.SftpUploads.Count > 0 && _options.UploadToSftpSites)
@ -135,6 +135,8 @@ namespace EftPatchHelper.Tasks
return false; return false;
} }
AnsiConsole.MarkupLine($"[blue]Starting {_fileUploads[0].UploadFileInfo.Name} uploads ...[/]");
var succeeded = await AnsiConsole.Progress().Columns( var succeeded = await AnsiConsole.Progress().Columns(
new TaskDescriptionColumn() { Alignment = Justify.Left}, new TaskDescriptionColumn() { Alignment = Justify.Left},
new ProgressBarColumn(), new ProgressBarColumn(),