http-api/src/Configuration/Configuration/Configuration.cs
cuqmbr afe626bd78
All checks were successful
/ build (push) Successful in 5m8s
/ tests (push) Successful in 33s
/ build-docker (push) Successful in 4m15s
add LiqPay integration for ticket purchase
hosted services deletes ticket groups with reserved status that were created more than 10 minutes ago

payment link expires in 10 minutes from the time it was created
2025-05-26 12:16:46 +03:00

49 lines
1.8 KiB
C#

using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using PersistenceConfigurationOptions =
cuqmbr.TravelGuide.Persistence.ConfigurationOptions;
using ApplicationConfigurationOptions =
cuqmbr.TravelGuide.Application.ConfigurationOptions;
using InfrastructureConfigurationOptions =
cuqmbr.TravelGuide.Infrastructure.ConfigurationOptions;
using IdentityConfigurationOptions =
cuqmbr.TravelGuide.Identity.ConfigurationOptions;
namespace cuqmbr.TravelGuide.Configuration.Configuration;
public static class Configuration
{
public static IServiceCollection ConfigureConfiguration(
this IServiceCollection services,
string[] args)
{
var environment =
Environment.GetEnvironmentVariable("TravelGuide_Environment");
var configuration = new ConfigurationBuilder()
.AddJsonFile($"./appsettings.{environment}.json", optional: true)
.AddJsonFile($"./appsettings.json", optional: true)
.AddEnvironmentVariables(prefix: "TravelGuide_")
.AddCommandLine(args)
.Build();
services.AddOptions<PersistenceConfigurationOptions>().Bind(
configuration.GetSection(
PersistenceConfigurationOptions.SectionName));
services.AddOptions<ApplicationConfigurationOptions>().Bind(
configuration.GetSection(
ApplicationConfigurationOptions.SectionName));
services.AddOptions<InfrastructureConfigurationOptions>().Bind(
configuration.GetSection(
InfrastructureConfigurationOptions.SectionName));
services.AddOptions<IdentityConfigurationOptions>().Bind(
configuration.GetSection(
IdentityConfigurationOptions.SectionName));
return services;
}
}