From 526a9de83e608ab2ed73a2a40c17d408a89d7188 Mon Sep 17 00:00:00 2001 From: Lawrence Lee Date: Thu, 4 Jun 2026 08:48:23 -0700 Subject: [PATCH 1/2] [azp] Download VPP artifact 'vpp-' (#4639) * Download VPP artifact 'vpp-' What I did In the pipeline definitions, parametrize the VPP artifact name. In azure-pipelines.yml set the artifact name based on the target Debian version. Why I did it VPP artifact names changed as a result of adding the Trixie build: sonic-net/sonic-platform-vpp#248 (cherry picked from commit 8a9362f9351b01ff5f5ebed5fdd966b186e3f3e5) Signed-off-by: Ying Xie --- .azure-pipelines/build-docker-sonic-vs-template.yml | 6 +++++- .azure-pipelines/build-template.yml | 6 +++++- azure-pipelines.yml | 9 +++++++++ 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/.azure-pipelines/build-docker-sonic-vs-template.yml b/.azure-pipelines/build-docker-sonic-vs-template.yml index 0fe9927a631..975729f06de 100644 --- a/.azure-pipelines/build-docker-sonic-vs-template.yml +++ b/.azure-pipelines/build-docker-sonic-vs-template.yml @@ -24,6 +24,10 @@ parameters: - name: debian_version type: string +- name: vpp_artifact_name + type: string + default: 'vpp-bookworm' + - name: artifact_name type: string @@ -163,7 +167,7 @@ jobs: source: specific project: build pipeline: sonic-net.sonic-platform-vpp - artifact: vpp + artifact: ${{ parameters.vpp_artifact_name }} runVersion: 'latestFromBranch' runBranch: 'refs/heads/master' allowPartiallySucceededBuilds: true diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index d0b0f0b6da3..c64eb2580a5 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -85,6 +85,10 @@ parameters: - name: debian_version type: string +- name: vpp_artifact_name + type: string + default: 'vpp-bookworm' + jobs: - job: displayName: ${{ parameters.arch }} @@ -212,7 +216,7 @@ jobs: source: specific project: build pipeline: sonic-net.sonic-platform-vpp - artifact: vpp + artifact: ${{ parameters.vpp_artifact_name }} runVersion: 'latestFromBranch' runBranch: 'refs/heads/master' allowPartiallySucceededBuilds: true diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 68f23428c6e..6275c62545a 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -54,6 +54,7 @@ stages: dash_artifact_name: sonic-dash-api artifact_name: sonic-swss-${{ parameters.debian_version }} debian_version: ${{ parameters.debian_version }} + vpp_artifact_name: vpp-${{ parameters.debian_version }} archive_pytests: true archive_gcov: true @@ -71,6 +72,7 @@ stages: dash_artifact_name: sonic-dash-api artifact_name: sonic-swss-asan-${{ parameters.debian_version }} debian_version: ${{ parameters.debian_version }} + vpp_artifact_name: vpp-${{ parameters.debian_version }} asan: true - stage: BuildArm @@ -89,6 +91,7 @@ stages: dash_artifact_name: sonic-dash-api.armhf artifact_name: sonic-swss-${{ parameters.debian_version }}.armhf debian_version: ${{ parameters.debian_version }} + vpp_artifact_name: vpp-${{ parameters.debian_version }} archive_gcov: false - template: .azure-pipelines/build-template.yml @@ -103,6 +106,7 @@ stages: dash_artifact_name: sonic-dash-api.arm64 artifact_name: sonic-swss-${{ parameters.debian_version }}.arm64 debian_version: ${{ parameters.debian_version }} + vpp_artifact_name: vpp-${{ parameters.debian_version }} archive_gcov: false - stage: BuildTrixie @@ -120,6 +124,7 @@ stages: dash_artifact_name: sonic-dash-api-trixie artifact_name: sonic-swss-trixie debian_version: trixie + vpp_artifact_name: vpp-trixie archive_gcov: false - template: .azure-pipelines/build-template.yml @@ -134,6 +139,7 @@ stages: dash_artifact_name: sonic-dash-api-trixie.armhf artifact_name: sonic-swss-trixie.armhf debian_version: trixie + vpp_artifact_name: vpp-trixie archive_gcov: false - template: .azure-pipelines/build-template.yml @@ -148,6 +154,7 @@ stages: dash_artifact_name: sonic-dash-api-trixie.arm64 artifact_name: sonic-swss-trixie.arm64 debian_version: trixie + vpp_artifact_name: vpp-trixie archive_gcov: false - stage: BuildDocker @@ -160,6 +167,7 @@ stages: sairedis_artifact_name: sonic-sairedis-${{ parameters.debian_version }} swss_artifact_name: sonic-swss-${{ parameters.debian_version }} debian_version: ${{ parameters.debian_version }} + vpp_artifact_name: vpp-${{ parameters.debian_version }} artifact_name: docker-sonic-vs - stage: BuildDockerAsan @@ -173,6 +181,7 @@ stages: swss_artifact_name: sonic-swss-asan-${{ parameters.debian_version }} artifact_name: docker-sonic-vs-asan debian_version: ${{ parameters.debian_version }} + vpp_artifact_name: vpp-${{ parameters.debian_version }} asan: true - stage: Test From 7e7017a62416d9121fec1b45b66eb71ddd24ae78 Mon Sep 17 00:00:00 2001 From: Lawrence Lee Date: Tue, 9 Jun 2026 19:39:02 -0700 Subject: [PATCH 2/2] Revert "[fpmsyncd]: add libnexthopgroup in Makefile.am to support rib/fib (#4394)" (#4657) This reverts #4394. What I did Remove build dependency on libnexthopgroup to unblock CI failures. This lib is not actively used in SWSS at the moment. Why I did it sonic-net/sonic-buildimage#27629 is part of the libyang1 to libyang3 migration and causes libnexthopgroup to not be built as part of the common-libs pipeline. Previously when the migration was in progress, both libyang1 and 3 were being built. All packages which were dependent on libyang3 (including libnexthopgroup transitively via FRR) were built as part of common-libs due to some serialization logic to prevent libyang1 and 3 from conflicting in sonic-buildimage at build time. Now that libyang1 is completely removed, this serialization logic doesn't exist anymore and libnexthopgroup is not built as part of common-libs, which causes the SWSS build to fail since libnexthopgroup is missing. (cherry picked from commit a87a1bcd16e7c374b555593910845023fb50402f) Signed-off-by: Ying Xie --- .azure-pipelines/build-docker-sonic-vs-template.yml | 12 ------------ .azure-pipelines/build-template.yml | 2 -- .azure-pipelines/docker-sonic-vs/Dockerfile | 5 ++--- fpmsyncd/Makefile.am | 2 +- 4 files changed, 3 insertions(+), 18 deletions(-) diff --git a/.azure-pipelines/build-docker-sonic-vs-template.yml b/.azure-pipelines/build-docker-sonic-vs-template.yml index 975729f06de..e76d4c56ee3 100644 --- a/.azure-pipelines/build-docker-sonic-vs-template.yml +++ b/.azure-pipelines/build-docker-sonic-vs-template.yml @@ -151,17 +151,6 @@ jobs: path: $(Build.ArtifactStagingDirectory)/download patterns: '**/target/debs/${{ parameters.debian_version }}/framework_*.deb' displayName: "Download sonic-buildimage sonic-framework package" - - task: DownloadPipelineArtifact@2 - inputs: - source: specific - project: ${{ parameters.buildimage_artifact_project }} - pipeline: Azure.sonic-buildimage.common_libs - artifact: common-lib - runVersion: 'latestFromBranch' - runBranch: 'refs/heads/${{ parameters.buildimage_artifact_branch }}' - path: $(Build.ArtifactStagingDirectory)/download - patterns: '**/target/debs/${{ parameters.debian_version }}/libnexthopgroup_*.deb' - displayName: "Download sonic-buildimage libnexthopgroup package" - task: DownloadPipelineArtifact@2 inputs: source: specific @@ -183,7 +172,6 @@ jobs: mkdir -p .azure-pipelines/docker-sonic-vs/debs find $(Build.ArtifactStagingDirectory)/download/sairedis -name '*.deb' -exec cp "{}" .azure-pipelines/docker-sonic-vs/debs \; - find $(Build.ArtifactStagingDirectory)/download -name 'libnexthopgroup_*.deb' -exec cp "{}" .azure-pipelines/docker-sonic-vs/debs \; cp -v $(Build.ArtifactStagingDirectory)/download/*.deb .azure-pipelines/docker-sonic-vs/debs if [ -f $(Build.ArtifactStagingDirectory)/download/coverage.info ]; then cp -v $(Build.ArtifactStagingDirectory)/download/coverage.info $(Build.ArtifactStagingDirectory)/ diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index c64eb2580a5..99faf0757a5 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -176,8 +176,6 @@ jobs: target/debs/${{ parameters.debian_version }}/libnl-nf-3-200_*.deb target/debs/${{ parameters.debian_version }}/libnl-nf-3-dev_*.deb target/debs/${{ parameters.debian_version }}/libyang3_*.deb - target/debs/${{ parameters.debian_version }}/libnexthopgroup_*.deb - target/debs/${{ parameters.debian_version }}/libnexthopgroup-dev_*.deb displayName: "Download common libs" - task: DownloadPipelineArtifact@2 inputs: diff --git a/.azure-pipelines/docker-sonic-vs/Dockerfile b/.azure-pipelines/docker-sonic-vs/Dockerfile index 43dd053a1e5..41733ffda13 100644 --- a/.azure-pipelines/docker-sonic-vs/Dockerfile +++ b/.azure-pipelines/docker-sonic-vs/Dockerfile @@ -13,7 +13,7 @@ COPY ["debs", "/debs"] # same, even though contents have changed) are checked between the previous and current layer. RUN dpkg --remove --force-all libswsscommon RUN apt --fix-broken install -y -RUN dpkg --purge python3-swsscommon sonic-db-cli libsaimetadata libsairedis libsaivs syncd-vs swss sonic-eventd libdashapi framework libnexthopgroup +RUN dpkg --purge python3-swsscommon sonic-db-cli libsaimetadata libsairedis libsaivs syncd-vs swss sonic-eventd libdashapi framework RUN apt-get update @@ -43,8 +43,7 @@ RUN apt install -y /debs/libdashapi_1.0.0_amd64.deb \ /debs/libsairedis_1.0.0_amd64.deb \ /debs/libsaivs_1.0.0_amd64.deb \ /debs/syncd-vs_1.0.0_amd64.deb \ - /debs/swss_1.0.0_amd64.deb \ - /debs/libnexthopgroup_1.0.0_amd64.deb + /debs/swss_1.0.0_amd64.deb RUN if [ "$need_dbg" = "y" ] ; then dpkg -i /debs/swss-dbg_1.0.0_amd64.deb ; fi diff --git a/fpmsyncd/Makefile.am b/fpmsyncd/Makefile.am index c55c1ea25fd..b61ebdfa930 100644 --- a/fpmsyncd/Makefile.am +++ b/fpmsyncd/Makefile.am @@ -13,7 +13,7 @@ fpmsyncd_SOURCES = fpmsyncd.cpp fpmlink.cpp routesync.cpp $(top_srcdir)/warmrest fpmsyncd_CFLAGS = $(DBGFLAGS) $(AM_CFLAGS) $(CFLAGS_COMMON) $(CFLAGS_ASAN) fpmsyncd_CPPFLAGS = $(DBGFLAGS) $(AM_CFLAGS) $(CFLAGS_COMMON) $(CFLAGS_ASAN) -fpmsyncd_LDADD = $(LDFLAGS_ASAN) -lnl-3 -lnl-route-3 -lswsscommon -lnexthopgroup +fpmsyncd_LDADD = $(LDFLAGS_ASAN) -lnl-3 -lnl-route-3 -lswsscommon if GCOV_ENABLED fpmsyncd_SOURCES += ../gcovpreload/gcovpreload.cpp