Skip to content

[gnmi] Migrate gnmi, telemetry, and watchdog containers to Debian Trixie#25957

Closed
sigabrtv1-ui wants to merge 6 commits intosonic-net:masterfrom
sigabrtv1-ui:gnmi-migrate-to-trixie
Closed

[gnmi] Migrate gnmi, telemetry, and watchdog containers to Debian Trixie#25957
sigabrtv1-ui wants to merge 6 commits intosonic-net:masterfrom
sigabrtv1-ui:gnmi-migrate-to-trixie

Conversation

@sigabrtv1-ui
Copy link
Copy Markdown

@sigabrtv1-ui sigabrtv1-ui commented Mar 8, 2026

Part of #25959

Summary

Migrate the gnmi, telemetry, and watchdog containers from Debian Bookworm to Debian Trixie.

Update base image references from docker-config-engine-bookworm to docker-config-engine-trixie for all gnmi-related containers. Move them from SONIC_BOOKWORM_DOCKERS to SONIC_TRIXIE_DOCKERS to align with the ongoing container migration to Debian 13 (Trixie).

docker-telemetry-watchdog and docker-sonic-telemetry are both FROM docker-sonic-gnmi, so they must follow it to Trixie.

This follows the same pattern as PR #25942 (Brcm containers migrate to trixie) and builds on the Trixie base layers added in PR #25184.

Prerequisites

Testing

Verified: docker-sonic-gnmi.gz, docker-telemetry-watchdog.gz, and docker-sonic-telemetry.gz all build successfully under BLDENV=trixie with the Trixie slave container.


Note: This PR was created by an AI agent (Claude/Claw) acting on behalf of @hdwhdw (Dawei Huang).

@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).

@hdwhdw hdwhdw requested review from Copilot and removed request for lguohan, qiluo-msft and xumia March 8, 2026 22:36
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 gNMI-related Docker images in sonic-buildimage from Debian Bookworm to Debian Trixie by switching their base layers and updating the build system’s distro-specific docker image lists.

Changes:

  • Update gNMI, gNMI-sidecar, and gNMI-watchdog docker build rules to use DOCKER_CONFIG_ENGINE_TRIXIE and register them under SONIC_TRIXIE_* lists.
  • Update the corresponding Dockerfiles to use docker-config-engine-trixie as the base image.

Reviewed changes

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

Show a summary per file
File Description
rules/docker-gnmi.mk Switch GNMI image dependencies/load dockers/debug package sources from Bookworm config-engine to Trixie, and move GNMI images to Trixie docker lists.
rules/docker-gnmi-watchdog.mk Switch watchdog image base/load docker from Bookworm config-engine to Trixie and move to Trixie docker lists.
rules/docker-gnmi-sidecar.mk Switch sidecar image base/load docker from Bookworm config-engine to Trixie and move to Trixie docker lists.
dockers/docker-sonic-gnmi/Dockerfile.j2 Change GNMI container base image from config-engine-bookworm to config-engine-trixie.
dockers/docker-gnmi-watchdog/Dockerfile.j2 Change watchdog build/final stages from config-engine-bookworm to config-engine-trixie.
dockers/docker-gnmi-sidecar/Dockerfile.j2 Change sidecar container base image from config-engine-bookworm to config-engine-trixie.

Comment on lines 22 to +26
# its docker-sonic-gnmi base image during cleanup.
$(DOCKER_GNMI_DBG)_AFTER += $(DOCKER_TELEMETRY_WATCHDOG)

SONIC_DOCKER_IMAGES += $(DOCKER_GNMI)
SONIC_BOOKWORM_DOCKERS += $(DOCKER_GNMI)
SONIC_TRIXIE_DOCKERS += $(DOCKER_GNMI)
Copy link

Copilot AI Mar 8, 2026

Choose a reason for hiding this comment

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

$(DOCKER_GNMI_DBG)_AFTER += $(DOCKER_TELEMETRY_WATCHDOG) now points at a docker image that is still categorized as Bookworm-only (see rules/docker-telemetry-watchdog.mk), so when building with BLDENV=trixie there may be no rule to produce target/docker-telemetry-watchdog.gz, causing the GNMI debug image build to fail. Consider either migrating docker-telemetry-watchdog to Trixie as part of this change, or making this _AFTER dependency conditional so it only applies when the dependency image is part of the current DOCKER_IMAGES set.

Copilot uses AI. Check for mistakes.
Comment on lines 25 to 29
SONIC_DOCKER_IMAGES += $(DOCKER_GNMI)
SONIC_BOOKWORM_DOCKERS += $(DOCKER_GNMI)
SONIC_TRIXIE_DOCKERS += $(DOCKER_GNMI)
ifeq ($(INCLUDE_SYSTEM_GNMI), y)
SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_GNMI)
endif
Copy link

Copilot AI Mar 8, 2026

Choose a reason for hiding this comment

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

After moving $(DOCKER_GNMI) into SONIC_TRIXIE_DOCKERS, Bookworm builds can break because Bookworm containers (e.g., docker-sonic-telemetry and docker-telemetry-watchdog) declare _LOAD_DOCKERS =/+= $(DOCKER_GNMI). With BLDENV=bookworm, $(DOCKER_GNMI) is no longer in DOCKER_IMAGES, so target/docker-sonic-gnmi.gz may have no build rule even though other Bookworm images still require it. Either migrate the dependent telemetry images to Trixie in the same PR, or keep a Bookworm GNMI image available (e.g., separate variable/target or conditional base selection) until dependents are migrated.

Copilot uses AI. Check for mistakes.
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run Azure.sonic-buildimage

@sigabrtv1-ui
Copy link
Copy Markdown
Author

Updated with fix: docker-telemetry-watchdog is FROM docker-sonic-gnmi, so it also needs to move to SONIC_TRIXIE_DOCKERS. Without it, building the bookworm target fails with:

make: *** No rule to make target 'target/docker-sonic-gnmi.gz-load', needed by 'target/docker-telemetry-watchdog.gz'

Verified locally: docker-telemetry-watchdog.gz (133MB) builds successfully under BLDENV=trixie.

@sigabrtv1-ui sigabrtv1-ui changed the title [gnmi] Migrate docker-sonic-gnmi containers to Debian Trixie [gnmi] Migrate gnmi and telemetry-watchdog containers to Debian Trixie Mar 9, 2026
@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@sigabrtv1-ui sigabrtv1-ui changed the title [gnmi] Migrate gnmi and telemetry-watchdog containers to Debian Trixie [gnmi] Migrate gnmi, telemetry, and watchdog containers to Debian Trixie Mar 9, 2026
@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).

@sigabrtv1-ui sigabrtv1-ui marked this pull request as ready for review March 9, 2026 17:29
@sigabrtv1-ui
Copy link
Copy Markdown
Author

@rustiqly — Lihua's agreed to let us take this one. Would appreciate your review! All five gnmi/telemetry containers have been migrated to Trixie and verified locally with BLDENV=trixie.

@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).

@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).

@sigabrtv1-ui sigabrtv1-ui force-pushed the gnmi-migrate-to-trixie branch from c6ce691 to 4d17491 Compare March 9, 2026 20:48
@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).

@hdwhdw hdwhdw self-requested a review March 10, 2026 14:35
hdwhdw added 3 commits March 16, 2026 20:34
…i-watchdog to Debian Trixie

Update base image references from docker-config-engine-bookworm to
docker-config-engine-trixie for all three gnmi-related containers.
Move them from SONIC_BOOKWORM_DOCKERS to SONIC_TRIXIE_DOCKERS to
align with the ongoing container migration to Debian 13 (Trixie).

This follows the same pattern as PR sonic-net#25942 (Brcm containers migrate
to trixie) and builds on the Trixie base layers added in PR sonic-net#25184.

Signed-off-by: Dawei Huang <[email protected]>
docker-telemetry-watchdog is FROM docker-sonic-gnmi, so it must follow
docker-sonic-gnmi to Trixie. Without this, building the bookworm target
fails because docker-sonic-gnmi is now a Trixie docker and its -load
target is not generated for the bookworm build.

Verified: docker-telemetry-watchdog.gz builds successfully under
BLDENV=trixie with the Trixie slave container.

Signed-off-by: Dawei Huang <[email protected]>
docker-sonic-telemetry is FROM docker-sonic-gnmi (twins), so it must
follow docker-sonic-gnmi to Trixie.

Also carries forward the docker-telemetry-watchdog Trixie migration
from the previous commit for the same reason.

Verified: docker-sonic-telemetry.gz builds successfully under
BLDENV=trixie with the Trixie slave container.

Signed-off-by: Dawei Huang <[email protected]>
@sigabrtv1-ui sigabrtv1-ui force-pushed the gnmi-migrate-to-trixie branch from e2c9da7 to 46eafe2 Compare March 16, 2026 20:36
@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).

@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).

@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).

@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).

@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).

Cherry-pick the FIPS version bump from PR sonic-net#26431 to pick up
the rebuilt trixie FIPS Go packages with sonic_fips detection
and symcryptprovider patches correctly applied.

Signed-off-by: Dawei Huang <[email protected]>
@sigabrtv1-ui sigabrtv1-ui force-pushed the gnmi-migrate-to-trixie branch from d9a997d to 6a7c7e5 Compare March 27, 2026 15:08
@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).

@saiarcot895
Copy link
Copy Markdown
Contributor

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@hdwhdw
Copy link
Copy Markdown
Contributor

hdwhdw commented Apr 1, 2026

taken over by #26499

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants