mirror of
https://github.com/SoPat712/allstarr.git
synced 2026-10-08 14:05:02 -04:00
fix(startup): gate SquidWTF checks to SquidWTF service
This commit is contained in:
1 file changed
+18
-13
+18
-13
@@ -20,11 +20,6 @@ using System.IO;
|
|||||||
var builder = WebApplication.CreateBuilder(args);
|
var builder = WebApplication.CreateBuilder(args);
|
||||||
RuntimeEnvConfiguration.AddDotEnvOverrides(builder.Configuration, builder.Environment, Console.Out);
|
RuntimeEnvConfiguration.AddDotEnvOverrides(builder.Configuration, builder.Environment, Console.Out);
|
||||||
|
|
||||||
// Discover SquidWTF API and streaming endpoints from uptime feeds.
|
|
||||||
var squidWtfEndpointCatalog = await SquidWtfEndpointDiscovery.DiscoverAsync();
|
|
||||||
var squidWtfApiUrls = squidWtfEndpointCatalog.ApiUrls;
|
|
||||||
var squidWtfStreamingUrls = squidWtfEndpointCatalog.StreamingUrls;
|
|
||||||
|
|
||||||
// Configure forwarded headers for reverse proxy support (nginx, etc.)
|
// Configure forwarded headers for reverse proxy support (nginx, etc.)
|
||||||
// Trust should be explicit: set ForwardedHeaders__KnownProxies and/or
|
// Trust should be explicit: set ForwardedHeaders__KnownProxies and/or
|
||||||
// ForwardedHeaders__KnownNetworks (comma-separated) in deployment config.
|
// ForwardedHeaders__KnownNetworks (comma-separated) in deployment config.
|
||||||
@@ -534,6 +529,13 @@ else
|
|||||||
enableExternalPlaylists = builder.Configuration.GetValue<bool>("Subsonic:EnableExternalPlaylists", true);
|
enableExternalPlaylists = builder.Configuration.GetValue<bool>("Subsonic:EnableExternalPlaylists", true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Discover SquidWTF endpoints only when SquidWTF is selected as primary music service.
|
||||||
|
var squidWtfEndpointCatalog = musicService == MusicService.SquidWTF
|
||||||
|
? await SquidWtfEndpointDiscovery.DiscoverAsync()
|
||||||
|
: new SquidWtfEndpointCatalog(new List<string>(), new List<string>());
|
||||||
|
var squidWtfApiUrls = squidWtfEndpointCatalog.ApiUrls;
|
||||||
|
var squidWtfStreamingUrls = squidWtfEndpointCatalog.StreamingUrls;
|
||||||
|
|
||||||
// Business services - shared across backends
|
// Business services - shared across backends
|
||||||
builder.Services.AddSingleton(squidWtfEndpointCatalog);
|
builder.Services.AddSingleton(squidWtfEndpointCatalog);
|
||||||
builder.Services.AddSingleton<RedisCacheService>();
|
builder.Services.AddSingleton<RedisCacheService>();
|
||||||
@@ -641,14 +643,17 @@ builder.Services.AddSingleton<EndpointBenchmarkService>();
|
|||||||
|
|
||||||
builder.Services.AddSingleton<IStartupValidator, DeezerStartupValidator>();
|
builder.Services.AddSingleton<IStartupValidator, DeezerStartupValidator>();
|
||||||
builder.Services.AddSingleton<IStartupValidator, QobuzStartupValidator>();
|
builder.Services.AddSingleton<IStartupValidator, QobuzStartupValidator>();
|
||||||
builder.Services.AddSingleton<IStartupValidator>(sp =>
|
if (musicService == MusicService.SquidWTF)
|
||||||
new SquidWTFStartupValidator(
|
{
|
||||||
sp.GetRequiredService<Microsoft.Extensions.Options.IOptions<SquidWTFSettings>>(),
|
builder.Services.AddSingleton<IStartupValidator>(sp =>
|
||||||
sp.GetRequiredService<IHttpClientFactory>().CreateClient("SquidWTF"),
|
new SquidWTFStartupValidator(
|
||||||
squidWtfApiUrls,
|
sp.GetRequiredService<Microsoft.Extensions.Options.IOptions<SquidWTFSettings>>(),
|
||||||
squidWtfStreamingUrls,
|
sp.GetRequiredService<IHttpClientFactory>().CreateClient("SquidWTF"),
|
||||||
sp.GetRequiredService<EndpointBenchmarkService>(),
|
squidWtfApiUrls,
|
||||||
sp.GetRequiredService<ILogger<SquidWTFStartupValidator>>()));
|
squidWtfStreamingUrls,
|
||||||
|
sp.GetRequiredService<EndpointBenchmarkService>(),
|
||||||
|
sp.GetRequiredService<ILogger<SquidWTFStartupValidator>>()));
|
||||||
|
}
|
||||||
builder.Services.AddSingleton<IStartupValidator, LyricsStartupValidator>();
|
builder.Services.AddSingleton<IStartupValidator, LyricsStartupValidator>();
|
||||||
|
|
||||||
// Register orchestrator as hosted service
|
// Register orchestrator as hosted service
|
||||||
|
|||||||
Reference in new issue
Block a user