Skip to content

Commit e93819c

Browse files
authored
Merge branch 'master' into v6erspan
2 parents 05a5c98 + 3c230d2 commit e93819c

467 files changed

Lines changed: 85456 additions & 12687 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.artifactignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
11
**/*
22
!*.deb
3+
!coverage.info
4+
!coverage.xml
5+
!build.info

.azure-pipelines/build-docker-sonic-vs-template.yml

Lines changed: 100 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,55 @@ parameters:
1414
- name: swss_artifact_name
1515
type: string
1616

17-
- name: sairedis_artifact_name
17+
- name: swss_common_artifact_name
1818
type: string
1919

20-
- name: swss_common_artifact_name
20+
- name: swss_common_branch
2121
type: string
22+
default: '$(BUILD_BRANCH)'
2223

2324
- name: artifact_name
2425
type: string
2526

27+
- name: buildimage_artifact_name
28+
type: string
29+
default: 'sonic-buildimage.vs'
30+
31+
- name: buildimage_artifact_project
32+
type: string
33+
default: 'build'
34+
35+
- name: buildimage_artifact_pipeline
36+
type: string
37+
default: 'Azure.sonic-buildimage.official.vs'
38+
39+
- name: buildimage_artifact_branch
40+
type: string
41+
default: '$(BUILD_BRANCH)'
42+
43+
- name: sairedis_artifact_name
44+
type: string
45+
46+
- name: sairedis_artifact_project
47+
type: string
48+
default: 'build'
49+
50+
- name: sairedis_artifact_pipeline
51+
type: string
52+
default: 'Azure.sonic-sairedis'
53+
54+
- name: sairedis_artifact_branch
55+
type: string
56+
default: '$(BUILD_BRANCH)'
57+
58+
- name: sairedis_artifact_pattern
59+
type: string
60+
default: '**'
61+
62+
- name: asan
63+
type: boolean
64+
default: false
65+
2666
jobs:
2767
- job:
2868
displayName: ${{ parameters.arch }}
@@ -36,50 +76,92 @@ jobs:
3676
inputs:
3777
source: specific
3878
project: build
39-
pipeline: 9
79+
pipeline: Azure.sonic-swss-common
4080
artifact: ${{ parameters.swss_common_artifact_name }}
4181
runVersion: 'latestFromBranch'
42-
runBranch: 'refs/heads/master'
82+
runBranch: 'refs/heads/${{ parameters.swss_common_branch }}'
83+
path: $(Build.ArtifactStagingDirectory)/download
4384
displayName: "Download sonic swss common deb packages"
4485
- task: DownloadPipelineArtifact@2
4586
inputs:
4687
source: specific
47-
project: build
48-
pipeline: 12
88+
project: ${{ parameters.sairedis_artifact_project }}
89+
pipeline: ${{ parameters.sairedis_artifact_pipeline }}
4990
artifact: ${{ parameters.sairedis_artifact_name }}
5091
runVersion: 'latestFromBranch'
51-
runBranch: 'refs/heads/master'
92+
runBranch: 'refs/heads/${{ parameters.sairedis_artifact_branch }}'
93+
allowPartiallySucceededBuilds: true
94+
path: $(Build.ArtifactStagingDirectory)/download/sairedis
95+
patterns: |
96+
${{ parameters.sairedis_artifact_pattern }}/libsaivs_*.deb
97+
${{ parameters.sairedis_artifact_pattern }}/libsaivs-dev_*.deb
98+
${{ parameters.sairedis_artifact_pattern }}/libsairedis_*.deb
99+
${{ parameters.sairedis_artifact_pattern }}/libsairedis-dev_*.deb
100+
${{ parameters.sairedis_artifact_pattern }}/libsaimetadata_*.deb
101+
${{ parameters.sairedis_artifact_pattern }}/libsaimetadata-dev_*.deb
102+
${{ parameters.sairedis_artifact_pattern }}/syncd-vs_*.deb
52103
displayName: "Download sonic sairedis deb packages"
104+
- task: DownloadPipelineArtifact@2
105+
inputs:
106+
source: specific
107+
project: build
108+
pipeline: sonic-net.sonic-dash-api
109+
${{ if eq(parameters.arch, 'amd64') }}:
110+
artifact: sonic-dash-api
111+
${{ else }}:
112+
artifact: sonic-dash-api.${{ parameters.arch }}
113+
runVersion: 'latestFromBranch'
114+
runBranch: 'refs/heads/$(BUILD_BRANCH)'
115+
path: $(Build.ArtifactStagingDirectory)/download
116+
patterns: |
117+
libdashapi*.deb
118+
displayName: "Download dash api"
53119
- task: DownloadPipelineArtifact@2
54120
inputs:
55121
artifact: ${{ parameters.swss_artifact_name }}
56-
displayName: "Download sonic swss artifact"
122+
path: $(Build.ArtifactStagingDirectory)/download
123+
displayName: "Download pre-stage built ${{ parameters.swss_artifact_name }}"
57124
- task: DownloadPipelineArtifact@2
58125
inputs:
59126
source: specific
60-
project: build
61-
pipeline: 1
62-
artifact: sonic-buildimage.vs
127+
project: ${{ parameters.buildimage_artifact_project }}
128+
pipeline: ${{ parameters.buildimage_artifact_pipeline }}
129+
artifact: ${{ parameters.buildimage_artifact_name }}
63130
runVersion: 'latestFromBranch'
64-
runBranch: 'refs/heads/master'
65-
displayName: "Download sonic buildimage"
131+
runBranch: 'refs/heads/${{ parameters.buildimage_artifact_branch }}'
132+
path: $(Build.ArtifactStagingDirectory)/download
133+
patterns: '**/target/${{ parameters.artifact_name }}.gz'
134+
displayName: "Download sonic-buildimage ${{ parameters.artifact_name }}"
66135
- script: |
136+
set -ex
67137
echo $(Build.DefinitionName).$(Build.BuildNumber)
68138
69-
docker load < ../target/docker-sonic-vs.gz
139+
docker load < $(Build.ArtifactStagingDirectory)/download/target/${{ parameters.artifact_name }}.gz
70140
71141
mkdir -p .azure-pipelines/docker-sonic-vs/debs
72142
73-
cp -v ../*.deb .azure-pipelines/docker-sonic-vs/debs
143+
find $(Build.ArtifactStagingDirectory)/download/sairedis -name '*.deb' -exec cp "{}" .azure-pipelines/docker-sonic-vs/debs \;
144+
cp -v $(Build.ArtifactStagingDirectory)/download/*.deb .azure-pipelines/docker-sonic-vs/debs
145+
if [ -f $(Build.ArtifactStagingDirectory)/download/coverage.info ]; then
146+
cp -v $(Build.ArtifactStagingDirectory)/download/coverage.info $(Build.ArtifactStagingDirectory)/
147+
cp -v $(Build.ArtifactStagingDirectory)/download/coverage.xml $(Build.ArtifactStagingDirectory)/
148+
fi
74149
75150
pushd .azure-pipelines
76151
77-
docker build --no-cache -t docker-sonic-vs:$(Build.DefinitionName).$(Build.BuildNumber) docker-sonic-vs
152+
build_dir=$(grep BUILD_DIR $(Build.ArtifactStagingDirectory)/download/build.info | cut -d= -f2)
153+
build_args="--build-arg build_dir=$build_dir"
154+
if [ '${{ parameters.asan }}' == True ]; then
155+
build_args="$build_args --build-arg need_dbg=y"
156+
fi
78157
79-
popd
158+
docker build $build_args --no-cache -t docker-sonic-vs:$(Build.DefinitionName).$(Build.BuildNumber).asan-${{ parameters.asan }} docker-sonic-vs
80159
81-
docker save docker-sonic-vs:$(Build.DefinitionName).$(Build.BuildNumber) | gzip -c > $(Build.ArtifactStagingDirectory)/docker-sonic-vs.gz
160+
popd
82161
162+
docker save docker-sonic-vs:$(Build.DefinitionName).$(Build.BuildNumber).asan-${{ parameters.asan }} | gzip -c > $(Build.ArtifactStagingDirectory)/docker-sonic-vs.gz
163+
rm -rf $(Build.ArtifactStagingDirectory)/download
164+
displayName: "Build ${{ parameters.artifact_name }}"
83165
- publish: $(Build.ArtifactStagingDirectory)/
84166
artifact: ${{ parameters.artifact_name }}
85167
displayName: "Archive sonic docker vs image"

0 commit comments

Comments
 (0)