From 99162d3e457998be61d197f5d99f0eea5f38e075 Mon Sep 17 00:00:00 2001 From: xumia Date: Thu, 2 Mar 2023 09:25:27 +0000 Subject: [PATCH 1/9] [Ci] Support to build sonic-swss-common --- .azure-pipelines/build-template.yml | 26 +++++++++++++------------- azure-pipelines.yml | 7 +++++++ 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index 3f34c96dbc1..cd56d4e8626 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -60,7 +60,11 @@ jobs: steps: - checkout: self clean: true + path: s submodules: true + - checkout: sonic-swss-common + clean: true + path: $(Agent.BuildDirector)/sonic-swss-common - script: | sudo apt-get update sudo apt-get install -y libhiredis0.14 libhiredis-dev @@ -72,20 +76,16 @@ jobs: sudo apt-get install -y libteam-dev \ libteam5 \ libteamdctl0 + sudo apt-get install -y libnl-3-dev libnl-genl-3-dev libnl-route-3-dev libnl-nf-3-dev displayName: "Install dependencies" - - task: DownloadPipelineArtifact@2 - inputs: - source: specific - project: build - pipeline: Azure.sonic-swss-common - artifact: ${{ parameters.swss_common_artifact_name }} - runVersion: 'latestFromBranch' - runBranch: 'refs/heads/$(BUILD_BRANCH)' - path: $(Build.ArtifactStagingDirectory)/download - patterns: | - libswsscommon_1.0.0_${{ parameters.arch }}.deb - libswsscommon-dev_1.0.0_${{ parameters.arch }}.deb - displayName: "Download sonic swss common deb packages" + - script: | + set -ex + git checkout $(BUILD_BRANCH) + ./autogen.sh + dpkg-buildpackage -us -uc -b -j$(nproc) + sudo dpkg -i **/libswsscommon_*.deb + workingDirectory: $(Agent.BuildDirector)/sonic-swss-common + displayName: "Build and isntall sonic-swss-common" - task: DownloadPipelineArtifact@2 inputs: source: specific diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 3cb2f7b12a6..80b552ccf21 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -27,6 +27,13 @@ schedules: - 201??? always: true +resources: + repositories: + - repository: sonic-swss-common + type: github + name: sonic-net/sonic-swss-common + endpoint: sonic-net + variables: - name: BUILD_BRANCH ${{ if eq(variables['Build.Reason'], 'PullRequest') }}: From 0ca97c7de31fb9f288720d2c9876d55e9daf691c Mon Sep 17 00:00:00 2001 From: xumia Date: Thu, 2 Mar 2023 09:32:41 +0000 Subject: [PATCH 2/9] Fix the varibale issue --- .azure-pipelines/build-template.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index cd56d4e8626..0037bacbbaf 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -64,7 +64,7 @@ jobs: submodules: true - checkout: sonic-swss-common clean: true - path: $(Agent.BuildDirector)/sonic-swss-common + path: $(Agent.BuildDirectory)/sonic-swss-common - script: | sudo apt-get update sudo apt-get install -y libhiredis0.14 libhiredis-dev @@ -84,7 +84,7 @@ jobs: ./autogen.sh dpkg-buildpackage -us -uc -b -j$(nproc) sudo dpkg -i **/libswsscommon_*.deb - workingDirectory: $(Agent.BuildDirector)/sonic-swss-common + workingDirectory: $(Agent.BuildDirectory)/sonic-swss-common displayName: "Build and isntall sonic-swss-common" - task: DownloadPipelineArtifact@2 inputs: From 40b7210a814d0864f62afb7ea44298c596a07020 Mon Sep 17 00:00:00 2001 From: xumia Date: Thu, 2 Mar 2023 09:41:52 +0000 Subject: [PATCH 3/9] Fix work directory issue --- .azure-pipelines/build-template.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index 0037bacbbaf..1e593a9bd04 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -60,11 +60,9 @@ jobs: steps: - checkout: self clean: true - path: s submodules: true - checkout: sonic-swss-common clean: true - path: $(Agent.BuildDirectory)/sonic-swss-common - script: | sudo apt-get update sudo apt-get install -y libhiredis0.14 libhiredis-dev @@ -84,7 +82,7 @@ jobs: ./autogen.sh dpkg-buildpackage -us -uc -b -j$(nproc) sudo dpkg -i **/libswsscommon_*.deb - workingDirectory: $(Agent.BuildDirectory)/sonic-swss-common + workingDirectory: $(Build.SourcesDirectory)/sonic-swss-common displayName: "Build and isntall sonic-swss-common" - task: DownloadPipelineArtifact@2 inputs: From 9d109e709103d7cfadd40ec0138dcf76317bce78 Mon Sep 17 00:00:00 2001 From: xumia Date: Thu, 2 Mar 2023 09:57:20 +0000 Subject: [PATCH 4/9] Fix swss package not found issue --- .azure-pipelines/build-template.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index 1e593a9bd04..8401ce8562a 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -81,7 +81,7 @@ jobs: git checkout $(BUILD_BRANCH) ./autogen.sh dpkg-buildpackage -us -uc -b -j$(nproc) - sudo dpkg -i **/libswsscommon_*.deb + sudo dpkg -i "**/libswsscommon*.deb" workingDirectory: $(Build.SourcesDirectory)/sonic-swss-common displayName: "Build and isntall sonic-swss-common" - task: DownloadPipelineArtifact@2 From 6b9ded64ee8548573741ec376dbc44e77670209e Mon Sep 17 00:00:00 2001 From: xumia Date: Thu, 2 Mar 2023 09:58:26 +0000 Subject: [PATCH 5/9] Fix swss package not found issue --- .azure-pipelines/build-template.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index 8401ce8562a..28f92382210 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -81,7 +81,7 @@ jobs: git checkout $(BUILD_BRANCH) ./autogen.sh dpkg-buildpackage -us -uc -b -j$(nproc) - sudo dpkg -i "**/libswsscommon*.deb" + sudo dpkg -i ../libswsscommon*.deb workingDirectory: $(Build.SourcesDirectory)/sonic-swss-common displayName: "Build and isntall sonic-swss-common" - task: DownloadPipelineArtifact@2 From cea078d458d8a4d740b7006706171a7a84b44d9e Mon Sep 17 00:00:00 2001 From: xumia Date: Thu, 2 Mar 2023 10:12:45 +0000 Subject: [PATCH 6/9] Fix default working directory issue --- .azure-pipelines/build-template.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index 28f92382210..6fa028e627d 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -82,7 +82,8 @@ jobs: ./autogen.sh dpkg-buildpackage -us -uc -b -j$(nproc) sudo dpkg -i ../libswsscommon*.deb - workingDirectory: $(Build.SourcesDirectory)/sonic-swss-common + sudo dpkg -i **/libswsscommon_*.deb + workingDirectory: $(System.DefaultWorkingDirectory)/sonic-swss-common displayName: "Build and isntall sonic-swss-common" - task: DownloadPipelineArtifact@2 inputs: @@ -138,7 +139,8 @@ jobs: export ENABLE_GCOV=y fi ./autogen.sh - dpkg-buildpackage -us -uc -b -j$(nproc) && cp ../*.deb . + dpkg-buildpackage -us -uc -b -j$(nproc) && cp ../*.deb $(System.DefaultWorkingDirectory)/ + workingDirectory: $(System.DefaultWorkingDirectory)/sonic-swss displayName: "Compile sonic swss" - publish: $(System.DefaultWorkingDirectory)/ artifact: ${{ parameters.artifact_name }} From 4655beb05e0398c3d942fe34df553e4535847b6e Mon Sep 17 00:00:00 2001 From: xumia Date: Thu, 2 Mar 2023 10:28:41 +0000 Subject: [PATCH 7/9] Fix the merge issue --- .azure-pipelines/build-template.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index 6fa028e627d..a49bd4d61ed 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -82,7 +82,6 @@ jobs: ./autogen.sh dpkg-buildpackage -us -uc -b -j$(nproc) sudo dpkg -i ../libswsscommon*.deb - sudo dpkg -i **/libswsscommon_*.deb workingDirectory: $(System.DefaultWorkingDirectory)/sonic-swss-common displayName: "Build and isntall sonic-swss-common" - task: DownloadPipelineArtifact@2 From 57cf5270db841d5808ebf149ae4ffc3ff9c45420 Mon Sep 17 00:00:00 2001 From: xumia Date: Thu, 2 Mar 2023 11:01:36 +0000 Subject: [PATCH 8/9] Fix copy the same folder issue --- .azure-pipelines/build-template.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index a49bd4d61ed..c479715dad1 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -138,7 +138,7 @@ jobs: export ENABLE_GCOV=y fi ./autogen.sh - dpkg-buildpackage -us -uc -b -j$(nproc) && cp ../*.deb $(System.DefaultWorkingDirectory)/ + dpkg-buildpackage -us -uc -b -j$(nproc) workingDirectory: $(System.DefaultWorkingDirectory)/sonic-swss displayName: "Compile sonic swss" - publish: $(System.DefaultWorkingDirectory)/ From 174036ce23d0c9fd07ef8fb32a2b41e3da66c5ea Mon Sep 17 00:00:00 2001 From: xumia Date: Thu, 2 Mar 2023 12:09:10 +0000 Subject: [PATCH 9/9] Fix uploading issue --- .azure-pipelines/build-template.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml index c479715dad1..4d2d003718e 100644 --- a/.azure-pipelines/build-template.yml +++ b/.azure-pipelines/build-template.yml @@ -139,9 +139,11 @@ jobs: fi ./autogen.sh dpkg-buildpackage -us -uc -b -j$(nproc) + mkdir artifacts + cp ../*.deb artifacts/ workingDirectory: $(System.DefaultWorkingDirectory)/sonic-swss displayName: "Compile sonic swss" - - publish: $(System.DefaultWorkingDirectory)/ + - publish: $(System.DefaultWorkingDirectory)/sonic-swss/artifacts/ artifact: ${{ parameters.artifact_name }} displayName: "Archive swss debian packages" - publish: $(Build.ArtifactStagingDirectory)/