Files
monorepo/LCU.API.Collections.CollectionsApi/LCU.API.Collections.CollectionsApi/Program.cs
T
2026-03-17 11:20:00 -05:00

45 lines
2.1 KiB
C#

using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
using Serilog;
using LCU.Library.Internal.Logging;
using LCU.Library.Internal.Logging.Models;
using LCU.API.Collections.CollectionsApi.Configuration;
namespace LCU.API.Collections.CollectionsApi
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.UseSerilog()
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
})
.ConfigureServices((context, services) =>
{
var baseApiConfig = new CollectionsApiConfiguration();
context.Configuration.GetSection("primary").Bind(baseApiConfig);
var loggerConfiguration = new LoggingConfiguration(baseApiConfig.AppName,
baseApiConfig.SeqApiKey,
baseApiConfig.SeqUrl);
var lcuLogging = new LcuLogging(loggerConfiguration);
lcuLogging.UseLcuLogging();
})
.ConfigureAppConfiguration((context, builder) =>
{
builder.AddJsonFile("/app/config/environment-appsettings/appsettings.json", optional: true, reloadOnChange: true);
builder.AddJsonFile("/app/config/workload-appsettings/appsettings.json", optional: true, reloadOnChange: true);
builder.AddJsonFile("/vault/secrets/collections-api-seq-api-key.json", optional: true, reloadOnChange: true);
builder.AddJsonFile("/vault/secrets/collections-api-temenos-user.json", optional: true, reloadOnChange: true);
builder.AddJsonFile("/vault/secrets/collections-api-temenos-password.json", optional: true, reloadOnChange: true);
});
}
}