aboutsummaryrefslogtreecommitdiffstats
path: root/code/api/src/Program.cs
diff options
context:
space:
mode:
authorivar <i@oiee.no>2023-11-12 00:01:31 +0100
committerivar <i@oiee.no>2023-11-12 00:01:31 +0100
commita9f9650400ed9e7f40db5ec5fd08a861f4c30902 (patch)
tree7df4e6a086acc21a5b47b4fae8bf395f79061f29 /code/api/src/Program.cs
parent854dedead3a3ed987997a0132f527db73b65b0ac (diff)
downloadgreatoffice-a9f9650400ed9e7f40db5ec5fd08a861f4c30902.tar.xz
greatoffice-a9f9650400ed9e7f40db5ec5fd08a861f4c30902.zip
Change how config is operated
Diffstat (limited to 'code/api/src/Program.cs')
-rw-r--r--code/api/src/Program.cs22
1 files changed, 11 insertions, 11 deletions
diff --git a/code/api/src/Program.cs b/code/api/src/Program.cs
index 7277fd3..c0bfdf7 100644
--- a/code/api/src/Program.cs
+++ b/code/api/src/Program.cs
@@ -44,6 +44,7 @@ namespace IOL.GreatOffice.Api;
public static class Program
{
private static readonly string[] supportedCultures = ["en", "nb"];
+ public static AppConfiguration AppConfiguration { get; set; }
public static WebApplicationBuilder CreateAppBuilder(string[] args)
{
var builder = WebApplication.CreateBuilder(args);
@@ -55,11 +56,10 @@ public static class Program
builder.Services.AddScoped<UserService>();
builder.Services.AddScoped<TenantService>();
builder.Services.AddScoped<EmailValidationService>();
- builder.Services.AddSingleton<VaultService>();
- builder.Services.AddHttpClient<VaultService>();
builder.Services.AddHttpClient<MailService>();
- var vaultService = builder.Services.BuildServiceProvider().GetRequiredService<VaultService>();
- var configuration = vaultService.GetCurrentAppConfiguration();
+
+ AppConfiguration = new AppConfiguration(builder.Configuration);
+
var logger = new LoggerConfiguration()
.MinimumLevel.Information()
.MinimumLevel.Override("Microsoft", LogEventLevel.Information)
@@ -68,13 +68,13 @@ public static class Program
.MinimumLevel.Override("Microsoft.AspNetCore", LogEventLevel.Warning)
.WriteTo.Console();
- if (!builder.Environment.IsDevelopment() && configuration.SEQ_API_KEY.HasValue() && configuration.SEQ_API_URL.HasValue())
+ if (!builder.Environment.IsDevelopment() && AppConfiguration.SEQ_API_KEY.HasValue() && AppConfiguration.SEQ_API_URL.HasValue())
{
- logger.WriteTo.Seq(configuration.SEQ_API_URL, apiKey: configuration.SEQ_API_KEY);
+ logger.WriteTo.Seq(AppConfiguration.SEQ_API_URL, apiKey: AppConfiguration.SEQ_API_KEY);
}
Log.Logger = logger.CreateLogger();
- Log.Information("Starting web host, " + JsonSerializer.Serialize(configuration.GetPublicObject(), JsonSettings.WriteIndented));
+ Log.Information("Starting web host, " + JsonSerializer.Serialize(AppConfiguration.GetPublicObject(), JsonSettings.WriteIndented));
builder.Host.UseSerilog(Log.Logger);
@@ -107,18 +107,18 @@ public static class Program
builder.Services
.AddDataProtection()
- .ProtectKeysWithCertificate(configuration.CERT1())
+ .ProtectKeysWithCertificate(AppConfiguration.CERT1())
.PersistKeysToDbContext<MainAppDatabase>();
builder.Services.Configure(JsonSettings.SetDefaultAction);
-
builder.Services.AddQuartz(options =>
{
options.UsePersistentStore(o =>
{
- o.UsePostgres(builder.Configuration.GetQuartzDatabaseConnectionString(vaultService.GetCurrentAppConfiguration));
+ o.UsePostgres(AppConfiguration.GetQuartzDatabaseConnectionString());
o.UseSerializer<QuartzJsonSerializer>();
});
+
options.RegisterJobs();
});
@@ -146,7 +146,7 @@ public static class Program
builder.Services.AddDbContext<MainAppDatabase>(options =>
{
- options.UseNpgsql(builder.Configuration.GetAppDatabaseConnectionString(vaultService.GetCurrentAppConfiguration),
+ options.UseNpgsql(AppConfiguration.GetAppDatabaseConnectionString(),
npgsqlDbContextOptionsBuilder =>
{
npgsqlDbContextOptionsBuilder.UseQuerySplittingBehavior(QuerySplittingBehavior.SplitQuery);