Add URL grabbing middleware and fix aspire startup#

This commit is contained in:
Fergal Moran
2024-04-03 15:19:45 +01:00
parent cef2dd26c4
commit 3ce24ea22a
4 changed files with 31 additions and 27 deletions

View File

@@ -46,24 +46,24 @@ builder.AddServiceDefaults();
// Add services to the container. // Add services to the container.
builder.Services.AddProblemDetails(); builder.Services.AddProblemDetails();
if (builder.Environment.IsDevelopment()) { // if (builder.Environment.IsDevelopment()) {
builder.WebHost.ConfigureKestrel(serverOptions => { // builder.WebHost.ConfigureKestrel(serverOptions => {
var pemFile = builder.Configuration["Startup:PemFile"]; // var pemFile = builder.Configuration["Startup:PemFile"];
var keyFile = builder.Configuration["Startup:KeyFile"]; // var keyFile = builder.Configuration["Startup:KeyFile"];
var port = int.Parse(builder.Configuration["Startup:Port"] ?? "5001"); // var port = int.Parse(builder.Configuration["Startup:Port"] ?? "5001");
if (string.IsNullOrEmpty(pemFile) || string.IsNullOrEmpty(keyFile)) { // if (string.IsNullOrEmpty(pemFile) || string.IsNullOrEmpty(keyFile)) {
throw new InvalidOperationException("Unable to find SSL certificate files."); // throw new InvalidOperationException("Unable to find SSL certificate files.");
} // }
//
serverOptions.Listen(IPAddress.Any, port, listenOptions => { // serverOptions.Listen(IPAddress.Any, port, listenOptions => {
var certPem = File.ReadAllText(pemFile); // var certPem = File.ReadAllText(pemFile);
var keyPem = File.ReadAllText(keyFile); // var keyPem = File.ReadAllText(keyFile);
var x509 = X509Certificate2.CreateFromPem(certPem, keyPem); // var x509 = X509Certificate2.CreateFromPem(certPem, keyPem);
//
listenOptions.UseHttps(x509); // listenOptions.UseHttps(x509);
}); // });
}); // });
} // }
builder.Services.AddDbContext<AppDbContext>(options => { builder.Services.AddDbContext<AppDbContext>(options => {
var connectionString = builder.Configuration.GetConnectionString("DefaultConnection"); var connectionString = builder.Configuration.GetConnectionString("DefaultConnection");

View File

@@ -12,7 +12,7 @@ public static class ServiceCollectionExtensions {
options.SwaggerDoc("v1", new OpenApiInfo { options.SwaggerDoc("v1", new OpenApiInfo {
Version = "v1", Version = "v1",
Title = assembly.GetName().Name, Title = assembly.GetName().Name,
Description = "An ASP.NET Core Web API for managing ToDo items", Description = "TV Noms dotcom API",
TermsOfService = new Uri("https://example.com/terms"), TermsOfService = new Uri("https://example.com/terms"),
Contact = new OpenApiContact { Contact = new OpenApiContact {
Name = "Example Contact", Name = "Example Contact",

View File

@@ -8,10 +8,17 @@
"Microsoft.AspNetCore": "Warning" "Microsoft.AspNetCore": "Warning"
} }
}, },
"Startup": { "Kestrel": {
"Port": 5001, "Endpoints": {
"PemFile": "/etc/letsencrypt/live/dev.fergl.ie/fullchain.pem", "HttpsFromPem": {
"KeyFile": "/etc/letsencrypt/live/dev.fergl.ie/privkey.pem" "Certificate": {
"Path": "/etc/letsencrypt/live/dev.fergl.ie//cert.pem",
"KeyPath": "/etc/letsencrypt/live/dev.fergl.ie/privkey.pem"
},
"Protocols": "Http1AndHttp2AndHttp3",
"Url": "https://tvnoms.dev.fergl.ie:5001"
}
}
}, },
"GoogleAuthOptions": { "GoogleAuthOptions": {
}, },

View File

@@ -2,10 +2,7 @@ var builder = DistributedApplication.CreateBuilder(args);
var apiService = builder var apiService = builder
.AddProject<Projects.TvNoms_ApiService>("apiservice") .AddProject<Projects.TvNoms_ApiService>("apiservice")
.WithEnvironment("DOTNET_ROOT_X64", "/home/fergalm/.dotnet")
.WithEnvironment("ASPNETCORE_URLS", "https://tvnoms.dev.fergl.ie:5001"); .WithEnvironment("ASPNETCORE_URLS", "https://tvnoms.dev.fergl.ie:5001");
builder
.AddProject<Projects.TvNoms_Web>("webfrontend")
.WithReference(apiService);
builder.Build().Run(); builder.Build().Run();