summary refs log tree commit diff
path: root/extra/admin-api/Spacebar.Cdn/Program.cs
diff options
context:
space:
mode:
authorRory& <root@rory.gay>2026-04-12 02:21:09 +0200
committerRory& <root@rory.gay>2026-04-12 02:21:09 +0200
commita92d127ff60c04b700728ffe84c3185ca1f06d14 (patch)
tree0e505c44881ce3c4b26467ec315a7ccb2c4e8235 /extra/admin-api/Spacebar.Cdn/Program.cs
parentCdn cs worker cleanup (diff)
downloadserver-ts-a92d127ff60c04b700728ffe84c3185ca1f06d14.tar.xz
CDN-CS: it works!!!
Diffstat (limited to 'extra/admin-api/Spacebar.Cdn/Program.cs')
-rw-r--r--extra/admin-api/Spacebar.Cdn/Program.cs13
1 files changed, 10 insertions, 3 deletions
diff --git a/extra/admin-api/Spacebar.Cdn/Program.cs b/extra/admin-api/Spacebar.Cdn/Program.cs

index 911c7259..1cb87d07 100644 --- a/extra/admin-api/Spacebar.Cdn/Program.cs +++ b/extra/admin-api/Spacebar.Cdn/Program.cs
@@ -2,19 +2,25 @@ using ArcaneLibs; using ImageMagick; using Microsoft.EntityFrameworkCore; using Spacebar.AdminApi.TestClient.Services.Services; +using Spacebar.Cdn.Services; using Spacebar.Interop.Cdn.Abstractions; using Spacebar.Models.Db.Contexts; var builder = WebApplication.CreateBuilder(args); +var u = new Uri("http://unix:/var/x/y/z/x/z"); +Console.WriteLine(u.LocalPath); if (!string.IsNullOrWhiteSpace(Environment.GetEnvironmentVariable("APPSETTINGS_PATH"))) builder.Configuration.AddJsonFile(Environment.GetEnvironmentVariable("APPSETTINGS_PATH")!); // Add services to the container. // builder.Services.AddSingleton<IFileSource>(new ProxyFileSource("http://cdn.old.server.spacebar.chat")); -builder.Services.AddSingleton<IFileSource>(new FilesystemFileSource(Environment.GetEnvironmentVariable("STORAGE_PATH") ?? throw new InvalidOperationException("STORAGE_PATH not set!"))); -builder.Services.AddSingleton<LruFileCache>(new LruFileCache(1 * 1024 * 1024 * 1024)); -builder.Services.AddSingleton<DiscordImageResizeService>(); +builder.Services.AddSingleton<IFileSource>(new FilesystemFileSource(Environment.GetEnvironmentVariable("STORAGE_PATH") ?? + throw new InvalidOperationException("STORAGE_PATH not set!"))); +builder.Services.AddSingleton<LruFileCache>(sp => + new LruFileCache(sp.GetRequiredService<IConfiguration>().GetSection("Spacebar:Cdn:LruFileCache:Size").Value is { } val ? int.Parse(val) : 1 * 1024 * 1024 * 1024)); builder.Services.AddSingleton<PixelArtDetectionService>(); +builder.Services.AddSingleton<SpacebarCdnWorkerConfiguration>(); +builder.Services.AddSingleton<CdnWorkerService>(); builder.Services.AddDbContextPool<SpacebarDbContext>(options => { options @@ -27,6 +33,7 @@ builder.Services.AddControllers(); builder.Services.AddOpenApi(); var app = builder.Build(); +app.Services.GetRequiredService<CdnWorkerService>().Initialize(); // Configure the HTTP request pipeline. if (app.Environment.IsDevelopment()) app.MapOpenApi();