[gnmi] Migrate gnmi, telemetry, and watchdog containers to Debian Trixie#25957
[gnmi] Migrate gnmi, telemetry, and watchdog containers to Debian Trixie#25957sigabrtv1-ui wants to merge 6 commits intosonic-net:masterfrom
Conversation
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
There was a problem hiding this comment.
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_TRIXIEand register them underSONIC_TRIXIE_*lists. - Update the corresponding Dockerfiles to use
docker-config-engine-trixieas 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. |
| # 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) |
There was a problem hiding this comment.
$(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.
| 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 |
There was a problem hiding this comment.
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.
|
/azp run Azure.sonic-buildimage |
|
Updated with fix: Verified locally: |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
@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 |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
c6ce691 to
4d17491
Compare
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
…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]>
e2c9da7 to
46eafe2
Compare
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Signed-off-by: Dawei Huang <[email protected]>
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Signed-off-by: Dawei Huang <[email protected]>
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run Azure.sonic-buildimage |
|
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]>
d9a997d to
6a7c7e5
Compare
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
taken over by #26499 |
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-bookwormtodocker-config-engine-trixiefor all gnmi-related containers. Move them fromSONIC_BOOKWORM_DOCKERStoSONIC_TRIXIE_DOCKERSto align with the ongoing container migration to Debian 13 (Trixie).docker-telemetry-watchdoganddocker-sonic-telemetryare bothFROM 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
src/sonic-mgmt-commonmust be updated after that mergesTesting
Verified:
docker-sonic-gnmi.gz,docker-telemetry-watchdog.gz, anddocker-sonic-telemetry.gzall build successfully underBLDENV=trixiewith the Trixie slave container.