Skip to content

Commit

Permalink
Properly dispose created host instance (#3923)
Browse files Browse the repository at this point in the history
  • Loading branch information
ramonsmits committed Mar 1, 2024
1 parent f7c38c4 commit 0bc8564
Show file tree
Hide file tree
Showing 6 changed files with 10 additions and 7 deletions.
Expand Up @@ -28,7 +28,7 @@ public override async Task Execute(HostArguments args, Settings settings)
tokenSource.Cancel();
return Task.CompletedTask;
}, settings, endpointConfiguration, loggingSettings);
var app = hostBuilder.Build();
using var app = hostBuilder.Build();

app.UseServiceControlAudit();

Expand Down
Expand Up @@ -21,7 +21,8 @@ public override async Task Execute(HostArguments args, Settings settings)
//Do nothing. The transports in NSB 8 are designed to handle broker outages. Audit ingestion will be paused when broker is unavailable.
return Task.CompletedTask;
}, settings, endpointConfiguration, loggingSettings);
var app = hostBuilder.Build();

using var app = hostBuilder.Build();

app.UseServiceControlAudit();
await app.RunAsync();
Expand Down
Expand Up @@ -18,15 +18,17 @@ public static async Task Run(Settings.Settings settings)
var hostBuilder = Host.CreateApplicationBuilder();
hostBuilder.Services.AddPersistence(persistenceSettings, persistenceConfiguration);

using var host = hostBuilder.Build();

if (WindowsServiceHelpers.IsWindowsService())
{
await hostBuilder.Build().RunAsync();
await host.RunAsync();
}
else
{
await Console.Out.WriteLineAsync("Running in Maintenance Mode - Press CTRL+C to exit");

await hostBuilder.Build().RunAsync();
await host.RunAsync();

await Console.Out.WriteLineAsync("Disposing persister (this might take a while)...");
}
Expand Down
Expand Up @@ -13,7 +13,7 @@ public override async Task Execute(Settings settings)

var hostBuilder = WebApplication.CreateBuilder();
hostBuilder.AddServiceControlMonitoring((_, __) => Task.CompletedTask, settings, endpointConfiguration);
var app = hostBuilder.Build();
using var app = hostBuilder.Build();

app.UseServiceControlMonitoring();
await app.RunAsync();
Expand Down
Expand Up @@ -28,7 +28,7 @@ public override async Task Execute(HostArguments args, Settings settings)
// TODO: Ideally we would never want to actually bootstrap the web api. Figure out how
var hostBuilder = WebApplication.CreateBuilder();
hostBuilder.AddServiceControl(settings, endpointConfiguration, loggingSettings);
var app = hostBuilder.Build();
using var app = hostBuilder.Build();

app.UseServiceControl();
await app.StartServiceControl();
Expand Down
2 changes: 1 addition & 1 deletion src/ServiceControl/Hosting/Commands/RunCommand.cs
Expand Up @@ -22,7 +22,7 @@ public override async Task Execute(HostArguments args, Settings settings)

var hostBuilder = WebApplication.CreateBuilder();
hostBuilder.AddServiceControl(settings, endpointConfiguration, loggingSettings);
var app = hostBuilder.Build();
using var app = hostBuilder.Build();

app.UseServiceControl();
await app.StartServiceControl();
Expand Down

0 comments on commit 0bc8564

Please sign in to comment.