From a39ed25519266ee069c562b401d53218f1ddfe29 Mon Sep 17 00:00:00 2001 From: Yuqing Zhao Date: Tue, 26 May 2026 14:42:32 +0800 Subject: [PATCH] azure-pipelines: Add libnexthopgroup to CI pipeline for swss compilation sonic-swss PR #4394 added -lnexthopgroup to fpmsyncd link dependencies, but only updated swss's own CI pipeline. This causes sairedis CI to fail when compiling swss because libnexthopgroup is missing from the build environment. Add libnexthopgroup deb download and installation to: - build-swss-template.yml (swss compilation environment) - build-docker-sonic-vs-template.yml (VS image build) - docker-sonic-vs/Dockerfile (VS image runtime) Signed-off-by: Yuqing Zhao --- .azure-pipelines/build-docker-sonic-vs-template.yml | 12 ++++++++++++ .azure-pipelines/build-swss-template.yml | 2 ++ .azure-pipelines/docker-sonic-vs/Dockerfile | 3 ++- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/.azure-pipelines/build-docker-sonic-vs-template.yml b/.azure-pipelines/build-docker-sonic-vs-template.yml index 195ad7feff..7ecdfc4c9d 100644 --- a/.azure-pipelines/build-docker-sonic-vs-template.yml +++ b/.azure-pipelines/build-docker-sonic-vs-template.yml @@ -59,6 +59,17 @@ jobs: artifact: ${{ parameters.swss_artifact_name }} path: $(Build.ArtifactStagingDirectory)/download displayName: "Download sonic swss artifact" + - task: DownloadPipelineArtifact@2 + inputs: + source: specific + project: build + pipeline: Azure.sonic-buildimage.common_libs + artifact: common-lib + runVersion: 'latestFromBranch' + runBranch: 'refs/heads/$(BUILD_BRANCH)' + path: $(Build.ArtifactStagingDirectory)/download + patterns: '**/target/debs/*/libnexthopgroup_*.deb' + displayName: "Download sonic-buildimage libnexthopgroup package" - task: DownloadPipelineArtifact@2 inputs: source: specific @@ -106,6 +117,7 @@ jobs: mkdir -p .azure-pipelines/docker-sonic-vs/debs cp -v $(Build.ArtifactStagingDirectory)/download/*.deb .azure-pipelines/docker-sonic-vs/debs + find $(Build.ArtifactStagingDirectory)/download -name 'libnexthopgroup_*.deb' -exec cp "{}" .azure-pipelines/docker-sonic-vs/debs \; pushd .azure-pipelines diff --git a/.azure-pipelines/build-swss-template.yml b/.azure-pipelines/build-swss-template.yml index 57998cb2bc..c9332c12b2 100644 --- a/.azure-pipelines/build-swss-template.yml +++ b/.azure-pipelines/build-swss-template.yml @@ -73,6 +73,8 @@ jobs: target/debs/${{ parameters.debian_version }}/libnl-route*.deb target/debs/${{ parameters.debian_version }}/libnl-nf*.deb target/debs/${{ parameters.debian_version }}/libyang_*.deb + target/debs/${{ parameters.debian_version }}/libnexthopgroup_*.deb + target/debs/${{ parameters.debian_version }}/libnexthopgroup-dev_*.deb target/debs/${{ parameters.debian_version }}/libprotobuf*.deb target/debs/${{ parameters.debian_version }}/libprotoc*.deb target/debs/${{ parameters.debian_version }}/protobuf-compiler*.deb diff --git a/.azure-pipelines/docker-sonic-vs/Dockerfile b/.azure-pipelines/docker-sonic-vs/Dockerfile index 6d6b795ae9..a30f6578bc 100644 --- a/.azure-pipelines/docker-sonic-vs/Dockerfile +++ b/.azure-pipelines/docker-sonic-vs/Dockerfile @@ -11,7 +11,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 +RUN dpkg --purge python3-swsscommon sonic-db-cli libsaimetadata libsairedis libsaivs syncd-vs swss sonic-eventd libdashapi libnexthopgroup RUN apt-get update @@ -44,6 +44,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/libnexthopgroup_1.0.0_amd64.deb \ /debs/swss_1.0.0_amd64.deb RUN if [ "$need_dbg" = "y" ] ; then dpkg -i /debs/libsairedis-dbgsym_1.0.0_amd64.deb ; fi