From 46e845cfadb8042834dcd4489e37a14fa1310d23 Mon Sep 17 00:00:00 2001 From: Dominik Schmidt Date: Tue, 20 Oct 2026 19:20:25 +0200 Subject: [PATCH] ci: give the pipeline's imagor the same limits as the suite CI runs imagor as a service instead of through testcontainers, so the frame limit never reached it and the animation case answered differently there than locally. --- .woodpecker.star | 6 ++++++ services/thumbnails/internal/imagortest/suite.go | 3 +++ 2 files changed, 9 insertions(+) diff --git a/.woodpecker.star b/.woodpecker.star index a7616ea613..2ed4d48fa2 100644 --- a/.woodpecker.star +++ b/.woodpecker.star @@ -3450,8 +3450,14 @@ def imagorServices(): "IMAGOR_UNSAFE": True, "UPLOAD_LOADER_ENABLE": True, "HTTP_LOADER_DISABLE": True, + # the limits of the thumbnails service, so both sides refuse the same + # requests; keep in step with imagortest.Args, which configures imagor + # the same way when the suite starts it through testcontainers "VIPS_MAX_WIDTH": 7680, "VIPS_MAX_HEIGHT": 7680, + "VIPS_MAX_ANIMATION_FRAMES": 100, + "UPLOAD_LOADER_MAX_ALLOWED_SIZE": 50000000, + "IMAGOR_PROCESS_CONCURRENCY": -1, } return [ diff --git a/services/thumbnails/internal/imagortest/suite.go b/services/thumbnails/internal/imagortest/suite.go index 699442fe6a..5c64bdb639 100644 --- a/services/thumbnails/internal/imagortest/suite.go +++ b/services/thumbnails/internal/imagortest/suite.go @@ -55,6 +55,9 @@ func Variants() []Variant { } // push based processing only: unsigned URLs, uploads in, nothing loaded by URL. +// CI runs imagor as a pipeline service instead, so .woodpecker.star carries the +// same values; both have to say the same thing or a parity case answers +// differently depending on who started the container. // Every limit this service has is handed over, so both sides refuse the same // requests; imagor's own defaults are looser (a 9999 edge, 32 MB uploads, // animations and concurrency unbounded) and would hide a difference as a pass.