Skip to content

Upgrade mux docker container from bookworm to trixie#26543

Open
yxieca wants to merge 2 commits intosonic-net:masterfrom
yxieca:feat/mux-trixie-upgrade
Open

Upgrade mux docker container from bookworm to trixie#26543
yxieca wants to merge 2 commits intosonic-net:masterfrom
yxieca:feat/mux-trixie-upgrade

Conversation

@yxieca
Copy link
Copy Markdown
Contributor

@yxieca yxieca commented Apr 3, 2026

Note: This PR was created with the assistance of an AI agent (OpenClaw/Claude).

Why I did it

Migrate the mux (linkmgrd) docker container from Debian bookworm to trixie, aligning it with other containers already on trixie.

The linkmgrd unit test SIGILL issue caused by GCC 14 catching a missing-return UB has been fixed in sonic-net/sonic-linkmgrd#330 (approved, CI passing).

Work item tracking
  • Microsoft ADO: N/A

How I did it

  • Update dockers/docker-mux/Dockerfile.j2 base image from docker-config-engine-bookworm to docker-config-engine-trixie
  • Update rules/docker-mux.mk references from BOOKWORM to TRIXIE (DBG_DEPENDS, DBG_IMAGE_PACKAGES, LOAD_DOCKERS, SONIC_*_DOCKERS)

How to verify it

  • Build sonic-vs image with INCLUDE_MUX=y
  • Verify mux container runs on trixie base: docker exec mux cat /etc/debian_version should show trixie
  • Linkmgrd unit tests pass with GCC 14 (after sonic-linkmgrd#330 fix)

Which release branch to backport (provide reason below if selected)

  • 202305
  • 202311
  • 202405
  • 202411
  • 202505
  • 202511

Tested branch (Please provide the tested image version)

  • master — built and deployed sonic-vs image on KVM testbed, mux container confirmed running on trixie base

Copilot AI review requested due to automatic review settings April 3, 2026 13:54
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrates the mux (linkmgrd) Docker container from Debian bookworm to trixie to align it with other trixie-based containers.

Changes:

  • Switch dockers/docker-mux/Dockerfile.j2 base image to docker-config-engine-trixie.
  • Update rules/docker-mux.mk to use trixie config-engine debug deps/image packages and to classify mux under SONIC_TRIXIE_*_DOCKERS rather than SONIC_BOOKWORM_*_DOCKERS.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
rules/docker-mux.mk Points mux’s debug deps/image packages/load-dockers at the trixie config-engine image and reclassifies mux as a trixie docker.
dockers/docker-mux/Dockerfile.j2 Changes the mux container base image from config-engine bookworm to config-engine trixie.

@@ -29,8 +29,8 @@ SONIC_DOCKER_DBG_IMAGES += $(DOCKER_MUX_DBG)
SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_MUX_DBG)
endif

Copy link

Copilot AI Apr 3, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Moving docker-mux from SONIC_BOOKWORM_DOCKERS to SONIC_TRIXIE_DOCKERS makes target/docker-mux.gz no longer buildable when BLDENV=bookworm (since slave.mk selects DOCKER_IMAGES := $(SONIC_BOOKWORM_DOCKERS) for bookworm builds). If someone sets INCLUDE_MUX=y in a bookworm build environment, the build will likely fail with “No rule to make target target/docker-mux.gz”. If bookworm builds are still supported, consider keeping mux in the bookworm docker lists (temporarily) or updating the build selection logic to allow building trixie docker images when BLDENV=bookworm.

Suggested change
SONIC_BOOKWORM_DOCKERS += $(DOCKER_MUX)
SONIC_BOOKWORM_DBG_DOCKERS += $(DOCKER_MUX_DBG)

Copilot uses AI. Check for mistakes.
Migrate the mux (linkmgrd) docker container from Debian bookworm to
trixie, aligning it with other containers already on trixie.

Changes:
- Update Dockerfile.j2 base image from bookworm to trixie
- Update docker-mux.mk references from BOOKWORM to TRIXIE

Depends on: sonic-net/sonic-linkmgrd#330
(fixes SIGILL in unit tests caused by GCC 14 catching missing return UB)

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
@yxieca yxieca force-pushed the feat/mux-trixie-upgrade branch from 63e31e8 to 8952aaf Compare April 3, 2026 22:01
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

Submodule updates are handled by automated bots. Remove the manual
submodule pin advance that was incorrectly included.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
Copilot AI review requested due to automatic review settings April 3, 2026 22:04
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants