From 475892dd4643967a48d87895e7ad756c713d0fdd Mon Sep 17 00:00:00 2001 From: Stanley Dimant Date: Sun, 20 Oct 2024 01:06:54 +0200 Subject: [PATCH] allow servers to read appsettings from different location --- .../.config/dotnet-tools.json | 13 +++++++++++++ .../MareSynchronosAuthService/Program.cs | 14 ++++++++++++++ .../MareSynchronosServer/Program.cs | 14 ++++++++++++++ .../MareSynchronosServices/Program.cs | 17 +++++++++++++++++ .../MareSynchronosStaticFilesServer/Program.cs | 14 ++++++++++++++ 5 files changed, 72 insertions(+) create mode 100644 MareSynchronosServer/MareSynchronosAuthService/.config/dotnet-tools.json diff --git a/MareSynchronosServer/MareSynchronosAuthService/.config/dotnet-tools.json b/MareSynchronosServer/MareSynchronosAuthService/.config/dotnet-tools.json new file mode 100644 index 0000000..76ca931 --- /dev/null +++ b/MareSynchronosServer/MareSynchronosAuthService/.config/dotnet-tools.json @@ -0,0 +1,13 @@ +{ + "version": 1, + "isRoot": true, + "tools": { + "dotnet-ef": { + "version": "8.0.10", + "commands": [ + "dotnet-ef" + ], + "rollForward": false + } + } +} \ No newline at end of file diff --git a/MareSynchronosServer/MareSynchronosAuthService/Program.cs b/MareSynchronosServer/MareSynchronosAuthService/Program.cs index 983f773..a9b9b2a 100644 --- a/MareSynchronosServer/MareSynchronosAuthService/Program.cs +++ b/MareSynchronosServer/MareSynchronosAuthService/Program.cs @@ -27,6 +27,20 @@ public class Program return Host.CreateDefaultBuilder(args) .UseSystemd() .UseConsoleLifetime() + .ConfigureAppConfiguration((ctx, config) => + { + var appSettingsPath = Environment.GetEnvironmentVariable("APPSETTINGS_PATH"); + if (!string.IsNullOrEmpty(appSettingsPath)) + { + config.AddJsonFile(appSettingsPath, optional: true, reloadOnChange: true); + } + else + { + config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); + } + + config.AddEnvironmentVariables(); + }) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseContentRoot(AppContext.BaseDirectory); diff --git a/MareSynchronosServer/MareSynchronosServer/Program.cs b/MareSynchronosServer/MareSynchronosServer/Program.cs index 86d3841..76915e0 100644 --- a/MareSynchronosServer/MareSynchronosServer/Program.cs +++ b/MareSynchronosServer/MareSynchronosServer/Program.cs @@ -68,6 +68,20 @@ public class Program return Host.CreateDefaultBuilder(args) .UseSystemd() .UseConsoleLifetime() + .ConfigureAppConfiguration((ctx, config) => + { + var appSettingsPath = Environment.GetEnvironmentVariable("APPSETTINGS_PATH"); + if (!string.IsNullOrEmpty(appSettingsPath)) + { + config.AddJsonFile(appSettingsPath, optional: true, reloadOnChange: true); + } + else + { + config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); + } + + config.AddEnvironmentVariables(); + }) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseContentRoot(AppContext.BaseDirectory); diff --git a/MareSynchronosServer/MareSynchronosServices/Program.cs b/MareSynchronosServer/MareSynchronosServices/Program.cs index aabdc3a..33c21ce 100644 --- a/MareSynchronosServer/MareSynchronosServices/Program.cs +++ b/MareSynchronosServer/MareSynchronosServices/Program.cs @@ -31,6 +31,20 @@ public class Program Host.CreateDefaultBuilder(args) .UseSystemd() .UseConsoleLifetime() + .ConfigureAppConfiguration((ctx, config) => + { + var appSettingsPath = Environment.GetEnvironmentVariable("APPSETTINGS_PATH"); + if (!string.IsNullOrEmpty(appSettingsPath)) + { + config.AddJsonFile(appSettingsPath, optional: true, reloadOnChange: true); + } + else + { + config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); + } + + config.AddEnvironmentVariables(); + }) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseContentRoot(AppContext.BaseDirectory); @@ -39,6 +53,9 @@ public class Program builder.AddConfiguration(ctx.Configuration.GetSection("Logging")); builder.AddFile(o => o.RootPath = AppContext.BaseDirectory); }); + webBuilder.ConfigureKestrel((opt) => + { + }); webBuilder.UseStartup(); }); } \ No newline at end of file diff --git a/MareSynchronosServer/MareSynchronosStaticFilesServer/Program.cs b/MareSynchronosServer/MareSynchronosStaticFilesServer/Program.cs index ce5d80c..510d600 100644 --- a/MareSynchronosServer/MareSynchronosStaticFilesServer/Program.cs +++ b/MareSynchronosServer/MareSynchronosStaticFilesServer/Program.cs @@ -35,6 +35,20 @@ public class Program return Host.CreateDefaultBuilder(args) .UseSystemd() .UseConsoleLifetime() + .ConfigureAppConfiguration((ctx, config) => + { + var appSettingsPath = Environment.GetEnvironmentVariable("APPSETTINGS_PATH"); + if (!string.IsNullOrEmpty(appSettingsPath)) + { + config.AddJsonFile(appSettingsPath, optional: true, reloadOnChange: true); + } + else + { + config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); + } + + config.AddEnvironmentVariables(); + }) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseContentRoot(AppContext.BaseDirectory);