Skip to content

Commit

Permalink
Fix dispose not being invoked and aligned all command runners to use …
Browse files Browse the repository at this point in the history
…`using var`
  • Loading branch information
ramonsmits committed Jan 16, 2024
1 parent f2894e4 commit 22d52b4
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 13 deletions.
Expand Up @@ -7,7 +7,7 @@

class RunCommand : AbstractCommand
{
public override Task Execute(HostArguments args, Settings settings)
public override async Task Execute(HostArguments args, Settings settings)
{
var runAsWindowsService = args.RunAsWindowsService;
var busConfiguration = new EndpointConfiguration(settings.ServiceName);
Expand All @@ -16,22 +16,23 @@ public override Task Execute(HostArguments args, Settings settings)

var loggingSettings = new LoggingSettings(settings.ServiceName);

var host = new Bootstrapper(
var hostBuilder = new Bootstrapper(
(_, __) => Task.CompletedTask, //Do nothing. The transports in NSB 8 are designed to handle broker outages. Audit ingestion will be paused when broker is unavailable.
settings,
busConfiguration,
loggingSettings).HostBuilder;

if (runAsWindowsService)
{
host.UseWindowsService();
hostBuilder.UseWindowsService();
}
else
{
host.UseConsoleLifetime();
hostBuilder.UseConsoleLifetime();
}

return host.Build().RunAsync();
using var host = hostBuilder.Build();
await host.RunAsync();
}
}
}
Expand Up @@ -22,15 +22,18 @@ public static async Task Run(HostArguments args, Settings.Settings settings)
{
hostBuilder.UseWindowsService();

await hostBuilder.Build().RunAsync();
using var host = hostBuilder.Build();
await host.RunAsync();
}
else
{
hostBuilder.UseConsoleLifetime();

await Console.Out.WriteLineAsync("Running in Maintenance Mode - Press CTRL+C to exit");

await hostBuilder.Build().RunAsync();
using var host = hostBuilder.Build();

await host.RunAsync();

await Console.Out.WriteLineAsync("Disposing persister (this might take a while)...");
}
Expand Down
6 changes: 2 additions & 4 deletions src/ServiceControl.Monitoring/Hosting/Commands/RunCommand.cs
Expand Up @@ -25,10 +25,8 @@ public override async Task Execute(Settings settings)
hostBuilder.UseConsoleLifetime();
}

using (var host = hostBuilder.Build())
{
await host.RunAsync();
}
using var host = hostBuilder.Build();
await host.RunAsync();
}
}
}
Expand Up @@ -29,7 +29,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 @@ -23,7 +23,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 22d52b4

Please sign in to comment.