Skip to content

Commit 85841f1

Browse files
DangDang
authored andcommitted
Update Program.cs
1 parent c09abf9 commit 85841f1

File tree

1 file changed

+11
-92
lines changed

1 file changed

+11
-92
lines changed

VehicleShowroomManagement/src/WebAPI/Program.cs

Lines changed: 11 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -44,104 +44,23 @@
4444
var builder = WebApplication.CreateBuilder(args);
4545

4646
// Add environment variables to configuration
47+
// This automatically converts double-underscore (__) to colon (:) for hierarchical keys
4748
builder.Configuration.AddEnvironmentVariables();
4849

49-
// Debug: Log all environment variables that start with our prefixes
50-
Log.Information("Checking environment variables...");
51-
var envVars = Environment.GetEnvironmentVariables();
52-
foreach (DictionaryEntry envVar in envVars)
53-
{
54-
var key = envVar.Key.ToString();
55-
if (!string.IsNullOrWhiteSpace(key) && (key.StartsWith("MONGODB_") || key.StartsWith("JWT_") || key.StartsWith("EMAIL_") ||
56-
key.StartsWith("CLOUDINARY_") || key.StartsWith("ConnectionStrings__") ||
57-
key.StartsWith("Jwt__") || key.StartsWith("EmailSettings__") || key.StartsWith("CloudinarySettings__")))
58-
{
59-
Log.Information("Found environment variable: {Key}", key);
60-
}
61-
}
50+
// Debug: Log configuration values after environment variables are loaded
51+
Log.Information("Checking configuration after environment variable loading...");
6252

63-
// Map environment variables to configuration keys (handle both formats)
64-
var mongoConnectionString = Environment.GetEnvironmentVariable("MONGODB_CONNECTION_STRING")
65-
?? Environment.GetEnvironmentVariable("ConnectionStrings__MongoDB");
66-
if (!string.IsNullOrWhiteSpace(mongoConnectionString))
67-
{
68-
builder.Configuration["ConnectionStrings:MongoDB"] = mongoConnectionString;
69-
Log.Information("MongoDB connection string loaded from environment variable");
70-
}
53+
var mongoCheck = builder.Configuration.GetConnectionString("MongoDB");
54+
Log.Information("MongoDB connection string: {Status}", string.IsNullOrWhiteSpace(mongoCheck) ? "MISSING" : "FOUND");
7155

72-
var jwtKey = Environment.GetEnvironmentVariable("JWT_KEY")
73-
?? Environment.GetEnvironmentVariable("Jwt__Key");
74-
if (!string.IsNullOrWhiteSpace(jwtKey))
75-
{
76-
builder.Configuration["Jwt:Key"] = jwtKey;
77-
Log.Information("JWT Key loaded from environment variable");
78-
}
56+
var jwtKeyCheck = builder.Configuration["Jwt:Key"];
57+
Log.Information("JWT Key: {Status}", string.IsNullOrWhiteSpace(jwtKeyCheck) ? "MISSING" : $"FOUND ({jwtKeyCheck.Length} chars)");
7958

80-
var jwtIssuer = Environment.GetEnvironmentVariable("JWT_ISSUER")
81-
?? Environment.GetEnvironmentVariable("Jwt__Issuer");
82-
if (!string.IsNullOrWhiteSpace(jwtIssuer))
83-
{
84-
builder.Configuration["Jwt:Issuer"] = jwtIssuer;
85-
Log.Information("JWT Issuer loaded from environment variable");
86-
}
87-
88-
var jwtAudience = Environment.GetEnvironmentVariable("JWT_AUDIENCE")
89-
?? Environment.GetEnvironmentVariable("Jwt__Audience");
90-
if (!string.IsNullOrWhiteSpace(jwtAudience))
91-
{
92-
builder.Configuration["Jwt:Audience"] = jwtAudience;
93-
Log.Information("JWT Audience loaded from environment variable");
94-
}
59+
var jwtIssuerCheck = builder.Configuration["Jwt:Issuer"];
60+
Log.Information("JWT Issuer: {Status}", string.IsNullOrWhiteSpace(jwtIssuerCheck) ? "MISSING" : "FOUND");
9561

96-
// Map other environment variables (handle both formats)
97-
var emailHost = Environment.GetEnvironmentVariable("EMAIL_SMTP_HOST")
98-
?? Environment.GetEnvironmentVariable("EmailSettings__SmtpHost");
99-
if (!string.IsNullOrWhiteSpace(emailHost))
100-
{
101-
builder.Configuration["EmailSettings:SmtpHost"] = emailHost;
102-
}
103-
104-
var emailPort = Environment.GetEnvironmentVariable("EMAIL_SMTP_PORT")
105-
?? Environment.GetEnvironmentVariable("EmailSettings__SmtpPort");
106-
if (!string.IsNullOrWhiteSpace(emailPort))
107-
{
108-
builder.Configuration["EmailSettings:SmtpPort"] = emailPort;
109-
}
110-
111-
var emailUsername = Environment.GetEnvironmentVariable("EMAIL_SMTP_USERNAME")
112-
?? Environment.GetEnvironmentVariable("EmailSettings__SmtpUsername");
113-
if (!string.IsNullOrWhiteSpace(emailUsername))
114-
{
115-
builder.Configuration["EmailSettings:SmtpUsername"] = emailUsername;
116-
}
117-
118-
var emailPassword = Environment.GetEnvironmentVariable("EMAIL_SMTP_PASSWORD")
119-
?? Environment.GetEnvironmentVariable("EmailSettings__SmtpPassword");
120-
if (!string.IsNullOrWhiteSpace(emailPassword))
121-
{
122-
builder.Configuration["EmailSettings:SmtpPassword"] = emailPassword;
123-
}
124-
125-
var cloudinaryCloudName = Environment.GetEnvironmentVariable("CLOUDINARY_CLOUD_NAME")
126-
?? Environment.GetEnvironmentVariable("CloudinarySettings__CloudName");
127-
if (!string.IsNullOrWhiteSpace(cloudinaryCloudName))
128-
{
129-
builder.Configuration["CloudinarySettings:CloudName"] = cloudinaryCloudName;
130-
}
131-
132-
var cloudinaryApiKey = Environment.GetEnvironmentVariable("CLOUDINARY_API_KEY")
133-
?? Environment.GetEnvironmentVariable("CloudinarySettings__ApiKey");
134-
if (!string.IsNullOrWhiteSpace(cloudinaryApiKey))
135-
{
136-
builder.Configuration["CloudinarySettings:ApiKey"] = cloudinaryApiKey;
137-
}
138-
139-
var cloudinaryApiSecret = Environment.GetEnvironmentVariable("CLOUDINARY_API_SECRET")
140-
?? Environment.GetEnvironmentVariable("CloudinarySettings__ApiSecret");
141-
if (!string.IsNullOrWhiteSpace(cloudinaryApiSecret))
142-
{
143-
builder.Configuration["CloudinarySettings:ApiSecret"] = cloudinaryApiSecret;
144-
}
62+
var jwtAudienceCheck = builder.Configuration["Jwt:Audience"];
63+
Log.Information("JWT Audience: {Status}", string.IsNullOrWhiteSpace(jwtAudienceCheck) ? "MISSING" : "FOUND");
14564

14665
// Configure environment-specific settings
14766
if (Environment.GetEnvironmentVariable("DOTNET_RUNNING_IN_CONTAINER") == "true")

0 commit comments

Comments
 (0)