This commit is contained in:
2023-02-24 11:12:23 +02:00
parent 8bcaf3f254
commit 9ba4ca43e2
3 changed files with 34 additions and 56 deletions

View File

@@ -248,8 +248,24 @@ public class Program
{ {
case "CurrentVersion": case "CurrentVersion":
var newVersion = s[1]; var newVersion = s[1];
if (!newVersion.Equals(await Config.Variables.GetValueAsync("Version"))) var currentVersion = await Config.Variables.GetValueAsync("Version");
if (!newVersion.Equals(currentVersion))
{ {
if(OperatingSystem.WINDOWS == Functions.GetOperatingSystem())
{
Console.Clear();
Logger.WriteLine("A new update was found !");
Logger.WriteLine("Run the launcher to update");
Logger.WriteLine("Current version: " + currentVersion);
Logger.WriteLine("Latest version: " + s[1]);
File.WriteAllText("version.txt", currentVersion);
await Task.Delay(3000);
break;
}
var nVer = new VersionString(newVersion.Substring(2)); var nVer = new VersionString(newVersion.Substring(2));
var cVer = new VersionString((await Config.Variables.GetValueAsync("Version")).Substring(2)); var cVer = new VersionString((await Config.Variables.GetValueAsync("Version")).Substring(2));
if (cVer > nVer) if (cVer > nVer)
@@ -268,6 +284,8 @@ public class Program
Logger.WriteLine("New version : " + newVersion); Logger.WriteLine("New version : " + newVersion);
Console.ForegroundColor = ConsoleColor.White; Console.ForegroundColor = ConsoleColor.White;
File.WriteAllText("version.txt", newVersion);
Logger.WriteLine("Changelog :"); Logger.WriteLine("Changelog :");
List<string> changeLog = await ServerCom.ReadTextFromURL( List<string> changeLog = await ServerCom.ReadTextFromURL(
@@ -277,15 +295,6 @@ public class Program
Logger.WriteLine("Do you want to update the bot ? (y/n)"); Logger.WriteLine("Do you want to update the bot ? (y/n)");
if (Console.ReadKey().Key == ConsoleKey.Y) if (Console.ReadKey().Key == ConsoleKey.Y)
{ {
if (Functions.GetOperatingSystem() == OperatingSystem.WINDOWS)
{
var url =
$"https://github.com/Wizzy69/SethDiscordBot/releases/download/v{newVersion}/net6.0.zip";
Process.Start($"{Functions.dataFolder}Applications/Updater.exe",
$"{newVersion} {url} {Process.GetCurrentProcess().ProcessName}");
}
else
{
var url = var url =
$"https://github.com/Wizzy69/SethDiscordBot/releases/download/v{newVersion}/net6.0_linux.zip"; $"https://github.com/Wizzy69/SethDiscordBot/releases/download/v{newVersion}/net6.0_linux.zip";
if (Logger.isConsole) if (Logger.isConsole)
@@ -317,36 +326,35 @@ public class Program
Logger.WriteLine("Please run the bot as root."); Logger.WriteLine("Please run the bot as root.");
} }
//Process.Start(Functions.dataFolder + "Applications/Updater", $"{url}");
}
} }
} }
break; break;
case "UpdaterVersion": case "LauncherVersion":
var updaternewversion = s[1]; var updaternewversion = s[1];
//File.WriteAllText(updaternewversion + ".txt", updaternewversion);
if (Functions.GetOperatingSystem() == OperatingSystem.LINUX) if (Functions.GetOperatingSystem() == OperatingSystem.LINUX)
break; break;
Directory.CreateDirectory(Functions.dataFolder + "Applications"); Directory.CreateDirectory(Functions.dataFolder + "Applications");
if (!await Config.Variables.ExistsAsync("UpdaterVersion")) if (!await Config.Variables.ExistsAsync("LauncherVersion"))
await Config.Variables.AddAsync("UpdaterVersion", "0.0.0.0", false); await Config.Variables.AddAsync("LauncherVersion", "0.0.0.0", false);
if (await Config.Variables.GetValueAsync("UpdaterVersion") != updaternewversion || if (await Config.Variables.GetValueAsync("LauncherVersion") != updaternewversion ||
!File.Exists(Functions.dataFolder+"Applications/Updater.exe")) !File.Exists("./Launcher.exe"))
{ {
Console.Clear(); Console.Clear();
Logger.WriteLine("Installing updater ...\nDo NOT close the bot during update !"); Logger.WriteLine("Installing a new Launcher ...\nDo NOT close the bot during update !");
var bar = new Utilities.ProgressBar(ProgressBarType.NO_END); var bar = new Utilities.ProgressBar(ProgressBarType.NO_END);
bar.Start(); bar.Start();
await ServerCom.DownloadFileNoProgressAsync( await ServerCom.DownloadFileNoProgressAsync(
"https://github.com/Wizzy69/installer/releases/download/release-1-discordbot/Updater.exe", "https://github.com/Wizzy69/installer/releases/download/release-1-discordbot/Launcher.exe",
$"{Functions.dataFolder}Applications/Updater.exe"); $"./Launcher.exe");
//await ArchiveManager.ExtractArchive("./Updater.zip", "./", null, //await ArchiveManager.ExtractArchive("./Updater.zip", "./", null,
// UnzipProgressType.PercentageFromTotalSize); // UnzipProgressType.PercentageFromTotalSize);
await Config.Variables.SetValueAsync("UpdaterVersion", updaternewversion); await Config.Variables.SetValueAsync("LauncherVersion", updaternewversion);
// File.Delete("Updater.zip"); // File.Delete("Updater.zip");
bar.Stop("Updater has been updated !"); bar.Stop("The launcher has been updated !");
Console.Clear(); Console.Clear();
} }

View File

@@ -1,6 +1,6 @@
using System; using System;
using System.IO; using System.IO;
using System.Numerics;
using Discord; using Discord;
namespace PluginManager namespace PluginManager
@@ -105,7 +105,7 @@ namespace PluginManager
if (!isInitialized) throw new Exception("Logger is not initialized"); if (!isInitialized) throw new Exception("Logger is not initialized");
var logsPath = logFolder + $"{DateTime.Today.ToShortDateString().Replace("/", "-").Replace("\\", "-")} Log.txt"; var logsPath = logFolder + $"{DateTime.Today.ToShortDateString().Replace("/", "-").Replace("\\", "-")} Log.txt";
Directory.CreateDirectory(logFolder); Directory.CreateDirectory(logFolder);
File.AppendAllTextAsync(logsPath, LogMessage + " \n").Wait(); File.AppendAllText(logsPath, $"[{DateTime.Today.ToShortTimeString()}] {LogMessage} \n");
} }
/// <summary> /// <summary>
@@ -118,7 +118,7 @@ namespace PluginManager
var errPath = errFolder + var errPath = errFolder +
$"{DateTime.Today.ToShortDateString().Replace("/", "-").Replace("\\", "-")} Error.txt"; $"{DateTime.Today.ToShortDateString().Replace("/", "-").Replace("\\", "-")} Error.txt";
Directory.CreateDirectory(errFolder); Directory.CreateDirectory(errFolder);
File.AppendAllText(errPath, ErrMessage + " \n"); File.AppendAllText(errPath, $"[{DateTime.Today.ToShortTimeString()}] {ErrMessage} \n");
} }
public static void WriteErrFile(this Exception ex) public static void WriteErrFile(this Exception ex)

View File

@@ -7,16 +7,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DiscordBot", "DiscordBot\Di
EndProject EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PluginManager", "PluginManager\PluginManager.csproj", "{EDD4D9B3-98DD-4367-A09F-D1C5ACB61132}" Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PluginManager", "PluginManager\PluginManager.csproj", "{EDD4D9B3-98DD-4367-A09F-D1C5ACB61132}"
EndProject EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MusicLibrary", "..\DiscordBotItems\Plugins\MusicLibrary\MusicLibrary.csproj", "{878DFE01-4596-4EBC-9651-0679598CE794}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SlashCommands", "..\DiscordBotItems\Plugins\SlashCommands\SlashCommands.csproj", "{C2D73BE8-997B-4A4A-8EA5-989BE33EE1DD}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LevelingSystem", "..\DiscordBotItems\Plugins\LevelingSystem\LevelingSystem.csproj", "{0138F343-BBB9-4D5F-B499-D9C2978BE9AA}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Roles", "..\DiscordBotItems\Roles\Roles.csproj", "{0900B4CB-B531-4A8D-98D8-E709A7C2E098}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DBEconomy", "..\DiscordBotItems\Plugins\DBEconomy\DBEconomy.csproj", "{0321365B-4ADC-4B1D-BD98-F573D36E83B2}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU Debug|Any CPU = Debug|Any CPU
@@ -31,26 +21,6 @@ Global
{EDD4D9B3-98DD-4367-A09F-D1C5ACB61132}.Debug|Any CPU.Build.0 = Debug|Any CPU {EDD4D9B3-98DD-4367-A09F-D1C5ACB61132}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EDD4D9B3-98DD-4367-A09F-D1C5ACB61132}.Release|Any CPU.ActiveCfg = Release|Any CPU {EDD4D9B3-98DD-4367-A09F-D1C5ACB61132}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EDD4D9B3-98DD-4367-A09F-D1C5ACB61132}.Release|Any CPU.Build.0 = Release|Any CPU {EDD4D9B3-98DD-4367-A09F-D1C5ACB61132}.Release|Any CPU.Build.0 = Release|Any CPU
{878DFE01-4596-4EBC-9651-0679598CE794}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{878DFE01-4596-4EBC-9651-0679598CE794}.Debug|Any CPU.Build.0 = Debug|Any CPU
{878DFE01-4596-4EBC-9651-0679598CE794}.Release|Any CPU.ActiveCfg = Release|Any CPU
{878DFE01-4596-4EBC-9651-0679598CE794}.Release|Any CPU.Build.0 = Release|Any CPU
{C2D73BE8-997B-4A4A-8EA5-989BE33EE1DD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C2D73BE8-997B-4A4A-8EA5-989BE33EE1DD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C2D73BE8-997B-4A4A-8EA5-989BE33EE1DD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C2D73BE8-997B-4A4A-8EA5-989BE33EE1DD}.Release|Any CPU.Build.0 = Release|Any CPU
{0138F343-BBB9-4D5F-B499-D9C2978BE9AA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0138F343-BBB9-4D5F-B499-D9C2978BE9AA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0138F343-BBB9-4D5F-B499-D9C2978BE9AA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0138F343-BBB9-4D5F-B499-D9C2978BE9AA}.Release|Any CPU.Build.0 = Release|Any CPU
{0900B4CB-B531-4A8D-98D8-E709A7C2E098}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0900B4CB-B531-4A8D-98D8-E709A7C2E098}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0900B4CB-B531-4A8D-98D8-E709A7C2E098}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0900B4CB-B531-4A8D-98D8-E709A7C2E098}.Release|Any CPU.Build.0 = Release|Any CPU
{0321365B-4ADC-4B1D-BD98-F573D36E83B2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0321365B-4ADC-4B1D-BD98-F573D36E83B2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0321365B-4ADC-4B1D-BD98-F573D36E83B2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0321365B-4ADC-4B1D-BD98-F573D36E83B2}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE