Basic (and probably pretty inefficient) implementation of the ENV Vars in the Asp.Net App
This commit is contained in:
parent
5badaa819a
commit
6b6bb00296
|
@ -25,14 +25,7 @@ namespace ScrumTaskboard
|
|||
|
||||
// This method gets called by the runtime. Use this method to add services to the container.
|
||||
public void ConfigureServices(IServiceCollection services)
|
||||
{
|
||||
// Get all the env vars for the DB connection
|
||||
string dbHost = Environment.GetEnvironmentVariable("DATABASE_HOST");
|
||||
string dbPort = Environment.GetEnvironmentVariable("DATABASE_PORT");
|
||||
string dbName = Environment.GetEnvironmentVariable("DATABASE_NAME");
|
||||
string dbUser = Environment.GetEnvironmentVariable("DATABASE_USER");
|
||||
string dbPassword = Environment.GetEnvironmentVariable("DATABASE_PASSWORD");
|
||||
|
||||
{
|
||||
services.AddCors(o => o.AddPolicy("AllowAll", builder =>
|
||||
{
|
||||
builder.AllowAnyOrigin()
|
||||
|
@ -41,7 +34,7 @@ namespace ScrumTaskboard
|
|||
}));
|
||||
services.AddScoped(serviceProvider => new TaskContext(
|
||||
new DbContextOptionsBuilder<TaskContext>()
|
||||
.UseNpgsql($"Host={dbHost}; Port={dbPort}; Username={dbUser}; Database={dbName}; Password={dbPassword}")
|
||||
.UseNpgsql(GetConnectionString())
|
||||
.Options));
|
||||
services.AddControllers();
|
||||
}
|
||||
|
@ -72,5 +65,36 @@ namespace ScrumTaskboard
|
|||
endpoints.MapControllers();
|
||||
});
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates DB Connection String based on ENV vars and default vars.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public string GetConnectionString()
|
||||
{
|
||||
string dbHost;
|
||||
string dbPort;
|
||||
string dbName;
|
||||
string dbUser;
|
||||
string dbPassword;
|
||||
|
||||
try {
|
||||
dbHost = Environment.GetEnvironmentVariable("DATABASE_HOST");
|
||||
dbPort = Environment.GetEnvironmentVariable("DATABASE_PORT");
|
||||
dbName = Environment.GetEnvironmentVariable("DATABASE_NAME");
|
||||
dbUser = Environment.GetEnvironmentVariable("DATABASE_USER");
|
||||
dbPassword = Environment.GetEnvironmentVariable("DATABASE_PASSWORD");
|
||||
}
|
||||
catch {
|
||||
dbHost = "nig.gl";
|
||||
dbPort = "8543";
|
||||
dbName = "taskboard";
|
||||
dbUser = "scrum";
|
||||
dbPassword = "c6gXud7YvBWp2sgxSgy4wRN";
|
||||
}
|
||||
|
||||
|
||||
return $"Host={dbHost}; Port={dbPort}; Username={dbUser}; Database={dbName}; Password={dbPassword}";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue