From 39d28b24fcaa91abdb47c031f082f6e20bc684ac Mon Sep 17 00:00:00 2001 From: Otto Date: Mon, 16 Feb 2026 12:45:39 +0000 Subject: [PATCH] ci(backend): Upgrade RabbitMQ from 3.12 (EOL) to 4.1.4 (#12118) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary Upgrades RabbitMQ from the end-of-life `rabbitmq:3.12-management` to `rabbitmq:4.1.4`, aligning CI, local dev, and e2e testing with production. ## Changes ### CI Workflow (`.github/workflows/platform-backend-ci.yml`) - **Image:** `rabbitmq:3.12-management` → `rabbitmq:4.1.4` - **Port:** Removed 15672 (management UI) — not used - **Health check:** Added to prevent flaky tests from race conditions during startup ### Docker Compose (`docker-compose.platform.yml`, `docker-compose.test.yaml`) - **Image:** `rabbitmq:management` → `rabbitmq:4.1.4` - **Port:** Removed 15672 (management UI) — not used ## Why - RabbitMQ 3.12 is EOL - We don't use the management interface, so `-management` variant is unnecessary - CI and local dev/e2e should match production (4.1.4) ## Testing CI validates that backend tests pass against RabbitMQ 4.1.4 on Python 3.11, 3.12, and 3.13. --- Closes SECRT-1703 --- .github/workflows/platform-backend-ci.yml | 9 +++++++-- autogpt_platform/backend/docker-compose.test.yaml | 3 +-- autogpt_platform/docker-compose.platform.yml | 3 +-- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.github/workflows/platform-backend-ci.yml b/.github/workflows/platform-backend-ci.yml index 1f0c6da3dd..22d1e91ead 100644 --- a/.github/workflows/platform-backend-ci.yml +++ b/.github/workflows/platform-backend-ci.yml @@ -41,13 +41,18 @@ jobs: ports: - 6379:6379 rabbitmq: - image: rabbitmq:3.12-management + image: rabbitmq:4.1.4 ports: - 5672:5672 - - 15672:15672 env: RABBITMQ_DEFAULT_USER: ${{ env.RABBITMQ_DEFAULT_USER }} RABBITMQ_DEFAULT_PASS: ${{ env.RABBITMQ_DEFAULT_PASS }} + options: >- + --health-cmd "rabbitmq-diagnostics -q ping" + --health-interval 30s + --health-timeout 10s + --health-retries 5 + --health-start-period 10s clamav: image: clamav/clamav-debian:latest ports: diff --git a/autogpt_platform/backend/docker-compose.test.yaml b/autogpt_platform/backend/docker-compose.test.yaml index 259d52c497..5944bf37ee 100644 --- a/autogpt_platform/backend/docker-compose.test.yaml +++ b/autogpt_platform/backend/docker-compose.test.yaml @@ -53,7 +53,7 @@ services: rabbitmq: <<: *agpt-services - image: rabbitmq:management + image: rabbitmq:4.1.4 container_name: rabbitmq healthcheck: test: rabbitmq-diagnostics -q ping @@ -66,7 +66,6 @@ services: - RABBITMQ_DEFAULT_PASS=k0VMxyIJF9S35f3x2uaw5IWAl6Y536O7 ports: - "5672:5672" - - "15672:15672" clamav: image: clamav/clamav-debian:latest ports: diff --git a/autogpt_platform/docker-compose.platform.yml b/autogpt_platform/docker-compose.platform.yml index bab92d4693..837a2d3547 100644 --- a/autogpt_platform/docker-compose.platform.yml +++ b/autogpt_platform/docker-compose.platform.yml @@ -75,7 +75,7 @@ services: timeout: 5s retries: 5 rabbitmq: - image: rabbitmq:management + image: rabbitmq:4.1.4 container_name: rabbitmq healthcheck: test: rabbitmq-diagnostics -q ping @@ -88,7 +88,6 @@ services: <<: *backend-env ports: - "5672:5672" - - "15672:15672" rest_server: build: