Updated mooncore versions. Removed unused imports and legacy configuration loading
This commit is contained in:
@@ -24,7 +24,7 @@
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="MoonCore" Version="1.8.3" />
|
||||
<PackageReference Include="MoonCore" Version="1.8.4" />
|
||||
<PackageReference Include="MoonCore.Extended" Version="1.3.0" />
|
||||
<PackageReference Include="MoonCore.PluginFramework" Version="1.0.5" />
|
||||
<PackageReference Include="SharpZipLib" Version="1.4.2" />
|
||||
|
||||
@@ -6,23 +6,20 @@ using Microsoft.AspNetCore.Authentication.JwtBearer;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.IdentityModel.Tokens;
|
||||
using MoonCore.Configuration;
|
||||
using MoonCore.EnvConfiguration;
|
||||
using MoonCore.Extended.Abstractions;
|
||||
using MoonCore.Extended.Extensions;
|
||||
using MoonCore.Extended.Helpers;
|
||||
using MoonCore.Extended.JwtInvalidation;
|
||||
using MoonCore.Extensions;
|
||||
using MoonCore.Helpers;
|
||||
using MoonCore.PluginFramework.Extensions;
|
||||
using MoonCore.Plugins;
|
||||
using MoonCore.Services;
|
||||
using Moonlight.ApiServer.Configuration;
|
||||
using Moonlight.ApiServer.Database.Entities;
|
||||
using Moonlight.ApiServer.Helpers;
|
||||
using Moonlight.ApiServer.Interfaces.OAuth2;
|
||||
using Moonlight.ApiServer.Interfaces.Startup;
|
||||
using Moonlight.ApiServer.Models;
|
||||
using Moonlight.ApiServer.Services;
|
||||
using Moonlight.Client.Services;
|
||||
|
||||
namespace Moonlight.ApiServer;
|
||||
|
||||
@@ -42,8 +39,7 @@ public class Startup
|
||||
|
||||
// Configuration
|
||||
private AppConfiguration Configuration;
|
||||
private ConfigurationService ConfigurationService;
|
||||
private ConfigurationOptions ConfigurationOptions;
|
||||
private IConfigurationRoot ConfigurationRoot;
|
||||
|
||||
// WebApplication Stuff
|
||||
private WebApplication WebApplication;
|
||||
@@ -80,7 +76,6 @@ public class Startup
|
||||
await RegisterBase();
|
||||
await RegisterDatabase();
|
||||
await RegisterAuth();
|
||||
await RegisterCaching();
|
||||
await HookPluginBuild();
|
||||
await RegisterPluginAssets();
|
||||
|
||||
@@ -121,7 +116,6 @@ public class Startup
|
||||
private Task CreateStorage()
|
||||
{
|
||||
Directory.CreateDirectory("storage");
|
||||
Directory.CreateDirectory(PathBuilder.Dir("storage", "logs"));
|
||||
Directory.CreateDirectory(PathBuilder.Dir("storage", "plugins"));
|
||||
|
||||
return Task.CompletedTask;
|
||||
@@ -374,43 +368,32 @@ public class Startup
|
||||
|
||||
#region Configurations
|
||||
|
||||
private Task SetupAppConfiguration()
|
||||
private async Task SetupAppConfiguration()
|
||||
{
|
||||
ConfigurationService = new ConfigurationService();
|
||||
// Configure configuration (wow)
|
||||
var configurationBuilder = new ConfigurationBuilder();
|
||||
|
||||
// Setup options
|
||||
ConfigurationOptions = new ConfigurationOptions();
|
||||
// Ensure configuration file exists
|
||||
var jsonFilePath = PathBuilder.File(Directory.GetCurrentDirectory(), "storage", "app.json");
|
||||
|
||||
ConfigurationOptions.AddConfiguration<AppConfiguration>("app");
|
||||
ConfigurationOptions.Path = PathBuilder.Dir("storage");
|
||||
ConfigurationOptions.EnvironmentPrefix = "MOONLIGHT";
|
||||
if (!File.Exists(jsonFilePath))
|
||||
await File.WriteAllTextAsync(jsonFilePath, JsonSerializer.Serialize(new AppConfiguration()));
|
||||
|
||||
// Create minimal logger
|
||||
var loggerFactory = new LoggerFactory();
|
||||
|
||||
loggerFactory.AddMoonCore(configuration =>
|
||||
{
|
||||
configuration.Console.Enable = true;
|
||||
configuration.Console.EnableAnsiMode = true;
|
||||
configuration.FileLogging.Enable = false;
|
||||
});
|
||||
|
||||
var logger = loggerFactory.CreateLogger<ConfigurationService>();
|
||||
|
||||
// Retrieve configuration
|
||||
Configuration = ConfigurationService.GetConfiguration<AppConfiguration>(
|
||||
ConfigurationOptions,
|
||||
logger
|
||||
configurationBuilder.AddJsonFile(
|
||||
jsonFilePath
|
||||
);
|
||||
|
||||
return Task.CompletedTask;
|
||||
configurationBuilder.AddEnvironmentVariables(prefix: "MOONLIGHT_", separator: "_");
|
||||
|
||||
ConfigurationRoot = configurationBuilder.Build();
|
||||
|
||||
// Retrieve configuration
|
||||
Configuration = ConfigurationRoot.Get<AppConfiguration>()!;
|
||||
}
|
||||
|
||||
private Task RegisterAppConfiguration()
|
||||
{
|
||||
ConfigurationService.RegisterInDi(ConfigurationOptions, WebApplicationBuilder.Services);
|
||||
WebApplicationBuilder.Services.AddSingleton(ConfigurationService);
|
||||
|
||||
WebApplicationBuilder.Services.AddSingleton(Configuration);
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
@@ -497,13 +480,15 @@ public class Startup
|
||||
|
||||
#region Database
|
||||
|
||||
private async Task RegisterDatabase()
|
||||
private Task RegisterDatabase()
|
||||
{
|
||||
WebApplicationBuilder.Services.AddDatabaseMappings();
|
||||
WebApplicationBuilder.Services.AddServiceCollectionAccessor();
|
||||
|
||||
WebApplicationBuilder.Services.AddScoped(typeof(DatabaseRepository<>));
|
||||
WebApplicationBuilder.Services.AddScoped(typeof(CrudHelper<,>));
|
||||
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
private async Task PrepareDatabase()
|
||||
@@ -572,14 +557,4 @@ public class Startup
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Caching
|
||||
|
||||
private Task RegisterCaching()
|
||||
{
|
||||
WebApplicationBuilder.Services.AddMemoryCache();
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
@@ -24,7 +24,7 @@
|
||||
<PackageReference Include="Blazor-ApexCharts" Version="4.0.1" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="8.0.10"/>
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="8.0.10" PrivateAssets="all"/>
|
||||
<PackageReference Include="MoonCore" Version="1.8.3" />
|
||||
<PackageReference Include="MoonCore" Version="1.8.4" />
|
||||
<PackageReference Include="MoonCore.Blazor" Version="1.2.9" />
|
||||
<PackageReference Include="MoonCore.PluginFramework" Version="1.0.5"/>
|
||||
<PackageReference Include="MoonCore.Blazor.Tailwind" Version="1.3.2" />
|
||||
|
||||
@@ -9,8 +9,6 @@ using MoonCore.Blazor.Tailwind.Extensions;
|
||||
using MoonCore.Blazor.Tailwind.Auth;
|
||||
using MoonCore.Extensions;
|
||||
using MoonCore.Helpers;
|
||||
using MoonCore.Plugins;
|
||||
using Moonlight.Client.Implementations;
|
||||
using Moonlight.Client.Interfaces;
|
||||
using Moonlight.Client.Services;
|
||||
using Moonlight.Shared.Misc;
|
||||
|
||||
Reference in New Issue
Block a user