From 8cb9abfd3ee101acf3f28c282fa4036a4ebba91f Mon Sep 17 00:00:00 2001 From: jvyden Date: Sat, 14 May 2022 17:02:10 -0400 Subject: [PATCH] Split project listen urls --- ProjectLighthouse.API/Program.cs | 2 +- ProjectLighthouse.API/Startup/ApiStartup.cs | 4 ++-- ProjectLighthouse/Program.cs | 2 +- ProjectLighthouse/Startup/DebugWarmupLifetime.cs | 10 +++++++++- ProjectLighthouse/StartupTasks.cs | 5 +++++ .../Types/Settings/ServerConfiguration.cs | 8 +++++++- 6 files changed, 25 insertions(+), 6 deletions(-) diff --git a/ProjectLighthouse.API/Program.cs b/ProjectLighthouse.API/Program.cs index 7c8a65f0..f1ec4650 100644 --- a/ProjectLighthouse.API/Program.cs +++ b/ProjectLighthouse.API/Program.cs @@ -22,7 +22,7 @@ public static class Program webBuilder => { webBuilder.UseStartup(); - webBuilder.UseUrls(ServerConfiguration.Instance.ListenUrl); + webBuilder.UseUrls(ServerConfiguration.Instance.ApiListenUrl); } ) .ConfigureLogging diff --git a/ProjectLighthouse.API/Startup/ApiStartup.cs b/ProjectLighthouse.API/Startup/ApiStartup.cs index 3d0312eb..0d3fe746 100644 --- a/ProjectLighthouse.API/Startup/ApiStartup.cs +++ b/ProjectLighthouse.API/Startup/ApiStartup.cs @@ -5,7 +5,7 @@ using Microsoft.OpenApi.Models; namespace LBPUnion.ProjectLighthouse.API.Startup; -public class ApiStartup +public sealed class ApiStartup { public ApiStartup(IConfiguration configuration) { @@ -52,7 +52,7 @@ public class ApiStartup ); } - public virtual void Configure(IApplicationBuilder app, IWebHostEnvironment env) + public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { #if DEBUG app.UseDeveloperExceptionPage(); diff --git a/ProjectLighthouse/Program.cs b/ProjectLighthouse/Program.cs index b02fa954..c32955ea 100644 --- a/ProjectLighthouse/Program.cs +++ b/ProjectLighthouse/Program.cs @@ -28,7 +28,7 @@ public static class Program { webBuilder.UseStartup(); webBuilder.UseWebRoot("StaticFiles"); - webBuilder.UseUrls(ServerConfiguration.Instance.ListenUrl); + webBuilder.UseUrls(ServerConfiguration.Instance.GameApiListenUrl); } ) .ConfigureLogging diff --git a/ProjectLighthouse/Startup/DebugWarmupLifetime.cs b/ProjectLighthouse/Startup/DebugWarmupLifetime.cs index 7e8fb2cd..d0148e38 100644 --- a/ProjectLighthouse/Startup/DebugWarmupLifetime.cs +++ b/ProjectLighthouse/Startup/DebugWarmupLifetime.cs @@ -4,6 +4,7 @@ using System.Threading; using System.Threading.Tasks; using LBPUnion.ProjectLighthouse.Helpers.Extensions; using LBPUnion.ProjectLighthouse.Logging; +using LBPUnion.ProjectLighthouse.Types; using LBPUnion.ProjectLighthouse.Types.Settings; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting.Internal; @@ -19,6 +20,7 @@ public class DebugWarmupLifetime : IHostLifetime private CancellationTokenRegistration applicationStartedRegistration; private readonly ConsoleLifetime consoleLifetime; + public static ServerType ServerType; public DebugWarmupLifetime ( @@ -37,7 +39,13 @@ public class DebugWarmupLifetime : IHostLifetime { using HttpClient client = new(); - string url = ServerConfiguration.Instance.ListenUrl; + string url = ServerType switch + { + ServerType.GameApi => ServerConfiguration.Instance.GameApiListenUrl, + ServerType.Website => ServerConfiguration.Instance.WebsiteListenUrl, + ServerType.Api => ServerConfiguration.Instance.ApiListenUrl, + }; + url = url.Replace("0.0.0.0", "127.0.0.1"); Logger.LogDebug("Warming up Hot Reload...", LogArea.Startup); diff --git a/ProjectLighthouse/StartupTasks.cs b/ProjectLighthouse/StartupTasks.cs index 980021e9..221a33f6 100644 --- a/ProjectLighthouse/StartupTasks.cs +++ b/ProjectLighthouse/StartupTasks.cs @@ -3,6 +3,7 @@ using System.Diagnostics; using LBPUnion.ProjectLighthouse.Helpers; using LBPUnion.ProjectLighthouse.Logging; using LBPUnion.ProjectLighthouse.Logging.Loggers; +using LBPUnion.ProjectLighthouse.Startup; using LBPUnion.ProjectLighthouse.Types; using LBPUnion.ProjectLighthouse.Types.Settings; using Microsoft.EntityFrameworkCore; @@ -17,6 +18,10 @@ public static class StartupTasks Stopwatch stopwatch = new(); stopwatch.Start(); + #if DEBUG + DebugWarmupLifetime.ServerType = serverType; + #endif + // Setup logging Logger.AddLogger(new ConsoleLogger()); Logger.AddLogger(new LighthouseFileLogger()); diff --git a/ProjectLighthouse/Types/Settings/ServerConfiguration.cs b/ProjectLighthouse/Types/Settings/ServerConfiguration.cs index 39518f1e..48d57d49 100644 --- a/ProjectLighthouse/Types/Settings/ServerConfiguration.cs +++ b/ProjectLighthouse/Types/Settings/ServerConfiguration.cs @@ -22,7 +22,7 @@ public class ServerConfiguration // You can use an ObsoleteAttribute instead. Make sure you set it to error, though. // // Thanks for listening~ - public const int CurrentConfigVersion = 1; + public const int CurrentConfigVersion = 2; #region Meta @@ -162,7 +162,13 @@ public class ServerConfiguration #endregion + [Obsolete("Obsolete. Use the Website/GameApi/Api listen URLS instead.")] public string ListenUrl { get; set; } = "http://localhost:10060"; + + public string WebsiteListenUrl { get; set; } = "http://localhost:10060"; + public string GameApiListenUrl { get; set; } = "http://localhost:10061"; + public string ApiListenUrl { get; set; } = "http://localhost:10062"; + public string DbConnectionString { get; set; } = "server=127.0.0.1;uid=root;pwd=lighthouse;database=lighthouse"; public string ExternalUrl { get; set; } = "http://localhost:10060"; public bool ConfigReloading { get; set; }