Добавлена задержка перед обновлением
This commit is contained in:
@@ -12,11 +12,14 @@ public sealed class Options
|
||||
/// <summary>Имя исполняемого файла приложения для перезапуска (e.g., MyBot.exe).</summary>
|
||||
public required string AppExe { get; init; }
|
||||
|
||||
/// <summary>Необязательно: подождите миллисекунды перед перезапуском (льготный период).</summary>
|
||||
/// <summary>Необязательно: подождите миллисекунды перед перезапуском.</summary>
|
||||
public int RestartDelayMs { get; init; } = 500;
|
||||
|
||||
/// <summary>Необязательно: подождите миллисекунды перед запуском обновления.</summary>
|
||||
public int UpdateDelayMs { get; init; } = 500;
|
||||
|
||||
public static string Usage =>
|
||||
"Usage: Updater.exe --zip <path.zip> --installPath <dir> --appExe <file.exe> [--restartDelayMs <int>]";
|
||||
"Usage: Updater.exe --zip <path.zip> --installPath <dir> --appExe <file.exe> [--restartDelayMs <int>] [--updateDelayMs <int>]";
|
||||
|
||||
/// <summary>Папрсинг CLI аргументов в Options.</summary>
|
||||
public static Options Parse(string[] args)
|
||||
@@ -42,7 +45,8 @@ public sealed class Options
|
||||
ZipPath = Path.GetFullPath(zip),
|
||||
InstallPath = Path.GetFullPath(install),
|
||||
AppExe = exe,
|
||||
RestartDelayMs = dict.TryGetValue("restartDelayMs", out var d) && int.TryParse(d, out var n) ? n : 500
|
||||
RestartDelayMs = dict.TryGetValue("restartDelayMs", out var d) && int.TryParse(d, out var n) ? n : 500,
|
||||
UpdateDelayMs = dict.TryGetValue("updateDelayMs", out var d2) && int.TryParse(d2, out var n2) ? n2 : 500
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -19,6 +19,9 @@ internal sealed class Program
|
||||
return ExitCodes.InvalidArgs;
|
||||
}
|
||||
|
||||
|
||||
Thread.Sleep(options.UpdateDelayMs);
|
||||
|
||||
var extractor = new ZipExtractor(logger);
|
||||
var installer = new SafeFileInstaller(logger);
|
||||
var procMgr = new ProcessManager(logger);
|
||||
|
||||
Reference in New Issue
Block a user