From d401aea643d0e69dbb4a2c7db1796cd6f82d0a31 Mon Sep 17 00:00:00 2001 From: Rory& Date: Fri, 19 Jun 2026 05:58:49 +0200 Subject: [PATCH] Minor CDN-CS work --- extra/admin-api/Models/Spacebar.Models.Api/TypingResponse.cs | 0 extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs | 3 +-- extra/admin-api/Spacebar.Cdn/Extensions/ImageController.cs | 2 +- extra/admin-api/Spacebar.Cdn/Properties/launchSettings.json | 2 +- .../Spacebar.Cdn/Services/DiscordImageResizeService.cs | 3 ++- extra/admin-api/Spacebar.Cdn/Spacebar.Cdn.csproj | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) create mode 100644 extra/admin-api/Models/Spacebar.Models.Api/TypingResponse.cs diff --git a/extra/admin-api/Models/Spacebar.Models.Api/TypingResponse.cs b/extra/admin-api/Models/Spacebar.Models.Api/TypingResponse.cs new file mode 100644 index 000000000..e69de29bb diff --git a/extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs b/extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs index 3777f8407..120cbf751 100644 --- a/extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs +++ b/extra/admin-api/Spacebar.Cdn/Controllers/UserController.cs @@ -24,13 +24,12 @@ public class UserController(LruFileCache lfc, IFileSource fs, CdnWorkerService c } else entry = await lfc.GetOrAdd(cacheKey, async () => { - var original = await fs.GetFile(Request.Path); var res = await cws.GetRawClient("q8").GetAsync("/scale" + Request.Path + Request.QueryString); var outStream = await res.Content.ReadAsStreamAsync(); return new LruFileCache.Entry { Data = outStream.ReadToEnd().ToArray(), - MimeType = res.Content.Headers.ContentType?.ToString() ?? original.MimeType + MimeType = res.Content.Headers.ContentType?.ToString() ?? (await fs.GetFile(Request.Path)).MimeType }; }); diff --git a/extra/admin-api/Spacebar.Cdn/Extensions/ImageController.cs b/extra/admin-api/Spacebar.Cdn/Extensions/ImageController.cs index 9a70fd0d1..1b0ec7c5e 100644 --- a/extra/admin-api/Spacebar.Cdn/Extensions/ImageController.cs +++ b/extra/admin-api/Spacebar.Cdn/Extensions/ImageController.cs @@ -8,7 +8,7 @@ namespace Spacebar.Cdn.Extensions; [ApiController] public class ImageController(LruFileCache lfc, IFileSource fs, CdnWorkerService cws) : ControllerBase { - public async Task GetImage(string path) { + protected async Task GetImage(string path) { DiscordImageResizeParams resizeParams = Request.GetResizeParams(); var cacheKey = path + resizeParams.ToSerializedName(); if (!Request.Query.Any() || resizeParams.Passthrough) { diff --git a/extra/admin-api/Spacebar.Cdn/Properties/launchSettings.json b/extra/admin-api/Spacebar.Cdn/Properties/launchSettings.json index 4e377f578..5472b7515 100644 --- a/extra/admin-api/Spacebar.Cdn/Properties/launchSettings.json +++ b/extra/admin-api/Spacebar.Cdn/Properties/launchSettings.json @@ -19,7 +19,7 @@ "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Local", // "LD_LIBRARY_PATH": "/home/Rory/git/spacebar/server-master/extra/admin-api/Spacebar.Cdn/result-lib/lib/", - "STORAGE_PATH": "./files" + "STORAGE_PATH": "/mnt/data/dedicated/spacebar-storage" } } } diff --git a/extra/admin-api/Spacebar.Cdn/Services/DiscordImageResizeService.cs b/extra/admin-api/Spacebar.Cdn/Services/DiscordImageResizeService.cs index d3b10b087..2d887f121 100644 --- a/extra/admin-api/Spacebar.Cdn/Services/DiscordImageResizeService.cs +++ b/extra/admin-api/Spacebar.Cdn/Services/DiscordImageResizeService.cs @@ -11,9 +11,10 @@ public class DiscordImageResizeParams { public bool SpacebarAllowUpscale { get; set; } = false; public bool SpacebarOptimiseGif { get; set; } = true; + public string Format { get; set; } = "webp"; public string ToSerializedName() { - return $"{(Animated ? "a_" : "")}{Size}px_{Quality.ToString()}_u.{SpacebarAllowUpscale}_o.{SpacebarOptimiseGif}"; + return $"{(Animated ? "a_" : "")}{Size}px_{Quality.ToString()}_u.{SpacebarAllowUpscale}_o.{SpacebarOptimiseGif}.{Format}"; } } diff --git a/extra/admin-api/Spacebar.Cdn/Spacebar.Cdn.csproj b/extra/admin-api/Spacebar.Cdn/Spacebar.Cdn.csproj index 760c8e7a1..3f8e1a2fb 100644 --- a/extra/admin-api/Spacebar.Cdn/Spacebar.Cdn.csproj +++ b/extra/admin-api/Spacebar.Cdn/Spacebar.Cdn.csproj @@ -7,7 +7,7 @@ - +