Conforming all these db calls

This commit is contained in:
Janus C. H. Knudsen 2025-02-06 23:46:55 +01:00
parent 5ca874abe9
commit 05d6977a76
17 changed files with 337 additions and 414 deletions

View file

@ -2,32 +2,47 @@ using Autofac;
namespace SetupInfrastructure
{
/// <summary>
/// SETUP APPLICATION USER NAMED sathumper
///
/// This should be handled on the Postgresql db server with a superadmin or similar.
///
/// Execute SQL CreateRole.txt
///
/// After that is executed it is time for running this main program
/// Remember to use the newly created sathumper
/// "ConnectionStrings": {
/// "ptdb": "Host=192.168.1.57;Port=5432;Database=ptdb01;User Id=sathumper;Password=<secret>;"
/// </summary>
internal class Program
{
static async Task Main(string[] args)
{
var container = new Startup().ConfigureContainer();
/// <summary>
/// SETUP APPLICATION USER NAMED sathumper
///
/// This should be handled on the Postgresql db server with a superadmin or similar.
///
/// Execute SQL CreateRole.txt
///
/// After that is executed it is time for running this main program
/// Remember to use the newly created sathumper
/// "ConnectionStrings": {
/// "DefaultConnection": "Host=192.168.1.57;Port=5432;Database=ptdb01;User Id=sathumper;Password=<secret>;"
/// </summary>
internal class Program
{
static async Task Main(string[] args)
{
string userPass;
do
{
Console.WriteLine("Input username:password");
userPass = Console.ReadLine() ?? string.Empty;
} while (!userPass.Contains(":") || userPass.Split(":").Length != 2 ||
string.IsNullOrEmpty(userPass.Split(":")[0]) ||
string.IsNullOrEmpty(userPass.Split(":")[1]));
container.Resolve
}
}
var ctp = new Startup.ConnectionStringTemplateParameters(
user: userPass.Split(":")[0],
pwd: userPass.Split(":")[1]
);
var container = new Startup().ConfigureContainer(ctp);
// SetupIdentitySystem
// ConfigurationDatabaseSetup
// input configurations!!! TODO:Missing
}
}
}

View file

@ -5,35 +5,37 @@ using Core.Configurations.JsonConfigProvider;
namespace SetupInfrastructure
{
public class Startup
{
public virtual IConfigurationRoot Configuration()
{
var configuration = new ConfigurationBuilder()
.AddJsonFile("appconfiguration.dev.json")
.Build();
public class Startup
{
public virtual IConfigurationRoot Configuration()
{
var configuration = new ConfigurationBuilder()
.AddJsonFile("appconfiguration.dev.json")
.Build();
return configuration;
}
return configuration;
}
public IContainer ConfigureContainer()
{
var builder = new ContainerBuilder();
var configuration = Configuration();
public IContainer ConfigureContainer(ConnectionStringTemplateParameters ctp)
{
var builder = new ContainerBuilder();
var configuration = Configuration();
builder.RegisterModule(new Core.ModuleRegistry.DbPostgreSqlModule
{
ConnectionString = configuration.GetConnectionString("DefaultConnection")
});
builder.RegisterModule(new Core.ModuleRegistry.DbPostgreSqlModule
{
ConnectionString = configuration.GetConnectionString("DefaultConnection").Replace("{usr}", ctp.user).Replace("{pwd}", ctp.pwd)
});
builder.RegisterModule(new Core.ModuleRegistry.TelemetryModule
{
TelemetryConfig = configuration.GetSection("ApplicationInsights").ToObject<Core.ModuleRegistry.TelemetryConfig>()
});
builder.RegisterModule(new Core.ModuleRegistry.TelemetryModule
{
TelemetryConfig = configuration.GetSection("ApplicationInsights").ToObject<Core.ModuleRegistry.TelemetryConfig>()
});
return builder.Build();
}
}
return builder.Build();
}
public record ConnectionStringTemplateParameters(string user, string pwd);
}
}

View file

@ -1,7 +1,7 @@
{
"AllowedHosts": "*",
"ConnectionStrings": {
"DefaultConnection": "Host=192.168.1.57;Port=5432;Database=ptdb01;User Id=sathumper;Password=3911;"
"DefaultConnection": "Host=192.168.1.57;Port=5432;Database=ptdb01;User Id={usr};Password={pwd};"
},
"ApplicationInsights": {
"ConnectionString": "InstrumentationKey=6d2e76ee-5343-4691-a5e3-81add43cb584;IngestionEndpoint=https://northeurope-0.in.applicationinsights.azure.com/"