mirror of
https://github.com/Ombi-app/Ombi.git
synced 2025-07-16 02:02:55 -07:00
I think we have finished the main bulk of the auto updater #29
This commit is contained in:
parent
915459a141
commit
0601f04582
4 changed files with 47 additions and 13 deletions
|
@ -68,9 +68,7 @@ namespace PlexRequests.UI
|
|||
|
||||
protected override void ConfigureRequestContainer(TinyIoCContainer container, NancyContext context)
|
||||
{
|
||||
container.Register<IUserMapper, UserMapper>();
|
||||
container.Register<ICustomUserMapper, UserMapper>();
|
||||
container.Register<ISqliteConfiguration, DbConfiguration>(new DbConfiguration(new SqliteFactory()));
|
||||
|
||||
container.Register<ICacheProvider, MemoryCacheProvider>().AsSingleton();
|
||||
|
||||
// Settings
|
||||
|
@ -88,7 +86,6 @@ namespace PlexRequests.UI
|
|||
|
||||
// Repo's
|
||||
container.Register<IRepository<LogEntity>, GenericRepository<LogEntity>>();
|
||||
container.Register<IRepository<UsersModel>, UserRepository<UsersModel>>();
|
||||
container.Register<IRepository<ScheduledJobs>, GenericRepository<ScheduledJobs>>();
|
||||
container.Register<IRequestService, JsonRequestService>();
|
||||
container.Register<ISettingsRepository, SettingsJsonRepository>();
|
||||
|
@ -122,8 +119,15 @@ namespace PlexRequests.UI
|
|||
loc.SetContainer(container);
|
||||
}
|
||||
|
||||
|
||||
protected override void ApplicationStartup(TinyIoCContainer container, IPipelines pipelines)
|
||||
{
|
||||
container.Register<ISqliteConfiguration, DbConfiguration>(new DbConfiguration(new SqliteFactory()));
|
||||
container.Register<IRepository<UsersModel>, UserRepository<UsersModel>>();
|
||||
container.Register<IUserMapper, UserMapper>();
|
||||
container.Register<ICustomUserMapper, UserMapper>();
|
||||
|
||||
|
||||
CookieBasedSessions.Enable(pipelines, CryptographyConfiguration.Default);
|
||||
|
||||
StaticConfiguration.DisableErrorTraces = false;
|
||||
|
|
|
@ -80,6 +80,7 @@
|
|||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Web.Extensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="CommandLine, Version=2.0.275.0, Culture=neutral, PublicKeyToken=de6f01bd326f8c32">
|
||||
<HintPath>..\packages\CommandLineParser.2.0.275-beta\lib\net45\CommandLine.dll</HintPath>
|
||||
|
|
|
@ -39,6 +39,9 @@ using PlexRequests.Helpers;
|
|||
using PlexRequests.Store;
|
||||
using PlexRequests.Store.Repository;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Windows.Forms;
|
||||
|
||||
using CommandLine;
|
||||
|
||||
|
@ -62,7 +65,7 @@ namespace PlexRequests.UI
|
|||
e => -1);
|
||||
|
||||
var updated = result.MapResult(x => x.Updated, e => UpdateValue.None);
|
||||
//TODO
|
||||
CheckUpdate(updated);
|
||||
|
||||
PrintToConsole("Starting Up! Please wait, this can usually take a few seconds.", ConsoleColor.Yellow);
|
||||
|
||||
|
@ -163,11 +166,37 @@ namespace PlexRequests.UI
|
|||
{
|
||||
if (val == UpdateValue.Failed)
|
||||
{
|
||||
|
||||
PrintToConsole("Update Failed", ConsoleColor.Red);
|
||||
}
|
||||
if (val == UpdateValue.Updated)
|
||||
{
|
||||
// TODO Change the name of PlexRequests.Updater.exe_Updated and delete the old version
|
||||
PrintToConsole("Finishing Update", ConsoleColor.Yellow);
|
||||
var applicationPath = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath));
|
||||
var files = Directory.GetFiles(applicationPath, "PlexRequests.*", SearchOption.TopDirectoryOnly);
|
||||
var oldUpdater = files.FirstOrDefault(x => x == $"{applicationPath}\\PlexRequests.Updater.exe");
|
||||
var newUpdater = files.FirstOrDefault(x => x == $"{applicationPath}\\PlexRequests.Updater.exe_Updated");
|
||||
|
||||
if (oldUpdater == null || newUpdater == null)
|
||||
{
|
||||
PrintToConsole("Looks like there was nothing to update.", ConsoleColor.Yellow);
|
||||
return;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
File.Copy(oldUpdater, "PlexRequests.Updater.exe_Old", true);
|
||||
File.Delete(oldUpdater);
|
||||
File.Copy(newUpdater, "PlexRequests.Updater.exe", true);
|
||||
File.Delete(newUpdater);
|
||||
|
||||
File.Delete("PlexRequests.Updater.exe_Old"); // Cleanup
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Console.WriteLine(e.Message);
|
||||
}
|
||||
|
||||
PrintToConsole("Finished Update!", ConsoleColor.Yellow);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,10 +26,10 @@
|
|||
#endregion
|
||||
namespace PlexRequests.UI.Start
|
||||
{
|
||||
public enum UpdateValue
|
||||
public enum UpdateValue : int
|
||||
{
|
||||
None,
|
||||
Updated,
|
||||
Failed
|
||||
None = 0,
|
||||
Updated = 1,
|
||||
Failed = 2
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue