New to Kestra?
Use blueprints to kickstart your first workflows.
Webhook-triggered container size gate. Compare against an approved KV baseline, enforce percent and MB limits, and fail promotion on regression.
A central, provider-agnostic quality gate for container images. Any ci
system (GitHub Actions, GitLab CI, Jenkins, CircleCI, etc.) POST the pushed
image to a kestra webhook. The flow pull the artifact, measure it with
ImageLs, and compares the size to an approved baseline in KV. The
baseline is an explicit reference (reset_baseline=true), not the previous
execution. Regressions fail the execution; discord is notified once via the
errors block with the full report.
{"image": "ghcr.io/my-org/my-app:abc123"} from any CI.Pull, then ImageLs and Assert.reset_baseline=true saves json metadata (image, size_bytes, approved_at).assess compares current size against the baseline using both
max_increase_percent and max_increase_mb.Fail with a report; errors sends one discord alert.Approved baseline: 184 MB. Limits: +10%, +50 MB.
:abc123 at 190 MB (+3.3%, +6 MB) -> PASS:def456 at 240 MB (+30.4%, +56 MB) -> FAILpull_image=true.WEBHOOK_KEY: webhook trigger key.DISCORD_WEBHOOK_URL: failure notifications.baseline_key and repository per image repo.reset_baseline=true.{"image": "ghcr.io/my-org/my-app:abc123"} after push from any CI.