using RemoteExec.Server.Configuration; using RemoteExec.Server.Hubs; using RemoteExec.Server.Middleware; using RemoteExec.Server.Services; WebApplicationBuilder builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddControllers(); builder.Services.AddSignalR(); builder.Services.AddOpenApi(); builder.Services.AddHealthChecks(); builder.Services.Configure(builder.Configuration.GetSection("Authentication")); builder.Services.Configure(builder.Configuration.GetSection("Execution")); builder.Services.Configure(builder.Configuration.GetSection("Metrics")); builder.Services.AddHostedService(); WebApplication app = builder.Build(); app.UseMiddleware(); app.MapHub("/remote"); // Configure the HTTP request pipeline. if (app.Environment.IsDevelopment()) { _ = app.MapOpenApi(); } app.UseHttpsRedirection(); app.UseAuthorization(); app.MapControllers(); app.MapHealthChecks("/health"); await app.RunAsync();