45 lines
2.1 KiB
C#
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);
|
|
});
|
|
}
|
|
}
|