-
Notifications
You must be signed in to change notification settings - Fork 692
Gcov for swss daemon #1737
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
prsunny
merged 166 commits into
sonic-net:master
from
pettershao-ragilenetworks:gcov_for_swss_daemon
Nov 5, 2021
Merged
Gcov for swss daemon #1737
Changes from all commits
Commits
Show all changes
166 commits
Select commit
Hold shift + click to select a range
f9c08ea
[gcov] swss support gcov
pettershao-ragilenetworks 0e117c3
Update gcov_support.sh
pettershao-ragilenetworks 112e7d4
Update test_zzgcov.py
pettershao-ragilenetworks 4d81e30
fix conflict
pettershao-ragilenetworks 254411b
Merge branch 'gcov_for_swss_daemon' of https://github.com/pettershao-…
pettershao-ragilenetworks 92dd3d9
speed up for build
pettershao-ragilenetworks ddf04a6
rm cpp lgtm checking for speed up
pettershao-ragilenetworks f81aa65
Update lgtm.yml
pettershao-ragilenetworks 9a6555e
code change trigger build
pettershao-ragilenetworks 43d291d
Update test-docker-sonic-vs-template.yml
pettershao-ragilenetworks 0893a34
Update test-docker-sonic-vs-template.yml
pettershao-ragilenetworks 87d45c2
Update test-docker-sonic-vs-template.yml
pettershao-ragilenetworks 6763c2a
Update gcov_support.sh
pettershao-ragilenetworks b8734d7
fix container conflicts for lcov
pettershao-ragilenetworks 9e151da
Update gcov_support.sh
pettershao-ragilenetworks c34e006
update gcov_support.sh
pettershao-ragilenetworks 0c9707d
update gcov_support.sh
pettershao-ragilenetworks 340441f
Update gcov_support.sh
pettershao-ragilenetworks 5783f27
Update gcov_support.sh
pettershao-ragilenetworks 24dff6b
fix vs tests error
pettershao-ragilenetworks 5d10659
fix can't find gcda issue
pettershao-ragilenetworks 84fec35
Update test-docker-sonic-vs-template.yml
pettershao-ragilenetworks 770e49f
mv sleep into script
pettershao-ragilenetworks de30000
update work dir
pettershao-ragilenetworks 2905898
fix conflict
pettershao-ragilenetworks 6f9a927
fix conflict
pettershao-ragilenetworks c09aa2e
update info dir
pettershao-ragilenetworks 4d066c5
update gcov_support.sh
pettershao-ragilenetworks a95e118
add gcov_preload.so
pettershao-ragilenetworks 3ee3d39
Update gcov_support.sh
pettershao-ragilenetworks c32521d
update gcc version
pettershao-ragilenetworks da8c474
update test-docker-sonic-vs-template.yml
pettershao-ragilenetworks 526a359
add gcov.yml
pettershao-ragilenetworks 82081b5
update gcov.yml paramaters
pettershao-ragilenetworks f70b8df
add gcov.yml
pettershao-ragilenetworks c3bab57
trigger build
pettershao-ragilenetworks 8d4aa90
fix conflict
pettershao-ragilenetworks 57fc240
temp change sai branch to other
pettershao-ragilenetworks faecfc0
temp change sai to 829
pettershao-ragilenetworks 217116a
temp to wget sairedis debs
pettershao-ragilenetworks 01519f9
fix conflict
pettershao-ragilenetworks 2814fb3
change wget to curl
pettershao-ragilenetworks 10855c3
fix curl fail
pettershao-ragilenetworks 11a5df9
fix dpkg error
pettershao-ragilenetworks 8cce398
fix docker vs build error
pettershao-ragilenetworks 670a1da
Merge https://github.com/Azure/sonic-swss into gcov_for_swss_daemon
pettershao-ragilenetworks 088401f
forbid test failed
pettershao-ragilenetworks dec56af
fix gcov temp output folder
pettershao-ragilenetworks c1cc68f
adjust gcov folder name
pettershao-ragilenetworks d647a3c
unzip gcov artifact
pettershao-ragilenetworks 66c456b
update yml
pettershao-ragilenetworks d9b4251
update yml
pettershao-ragilenetworks 4b57f87
implement gcov report generation in new container specified by gcov.yml
pettershao-ragilenetworks 69968b5
update gcov.yml
pettershao-ragilenetworks 0a08eb7
update gcov.yml
pettershao-ragilenetworks f2e8065
update gcov.yml
pettershao-ragilenetworks 2bf7008
update gcov.yml
pettershao-ragilenetworks 7398f03
update gcov.yml
pettershao-ragilenetworks 7d8ff8f
update gcov.yml
pettershao-ragilenetworks ee5ed49
update tests/gcov_support.sh
pettershao-ragilenetworks a4bff79
check gcov fail
pettershao-ragilenetworks dfc610e
fix conflict
pettershao-ragilenetworks e66f7a6
fix conflict
pettershao-ragilenetworks 1157911
Merge https://github.com/Azure/sonic-swss into gcov_for_swss_daemon
pettershao-ragilenetworks 76c0225
keep one test case for speed up
pettershao-ragilenetworks 5809e34
temp add ssp.txt file
pettershao-ragilenetworks 78da84b
update gcov.yml
pettershao-ragilenetworks 46489b2
update gcov.yml
pettershao-ragilenetworks 07b1ecf
update gcov_support.sh
pettershao-ragilenetworks 3666083
fix conflict
pettershao-ragilenetworks 7bc6614
update gcov.yml
pettershao-ragilenetworks ca58c3e
update gcov.yml
pettershao-ragilenetworks 2f71faf
update gcov_support.sh
pettershao-ragilenetworks 5256239
Merge https://github.com/Azure/sonic-swss into gcov_for_swss_daemon
pettershao-ragilenetworks e4d14c9
update gcov_support.sh
pettershao-ragilenetworks e84bdea
preload libgcov_preload.so
pettershao-ragilenetworks e86d027
install libgcov_preload.so
pettershao-ragilenetworks 11972f0
cp lib to /usr/lib
pettershao-ragilenetworks d8f7598
mkdir usr/lib
pettershao-ragilenetworks 2741801
prepare publish environment
pettershao-ragilenetworks 7b85423
update publish name
pettershao-ragilenetworks f2b7518
update gcov.yml
pettershao-ragilenetworks b272321
update publish-gcov.yml
pettershao-ragilenetworks 2faf8c2
update gcov_info folder
pettershao-ragilenetworks 7fce788
check if gcov_info folder downloaded
pettershao-ragilenetworks 0dd818b
check folder
pettershao-ragilenetworks 5e0a3cf
check gcov_info artifacts
pettershao-ragilenetworks 1afddb7
update AllMergeReport folder
pettershao-ragilenetworks ad81f2d
add source code
pettershao-ragilenetworks a529559
update scripts
pettershao-ragilenetworks 90dbed2
change to ./s folder
pettershao-ragilenetworks 07343cb
push ./s/ first to tar -zcvf
pettershao-ragilenetworks a43cc97
fix spell error
pettershao-ragilenetworks 67a2ba0
change source code to a common dir for different container
pettershao-ragilenetworks 289d962
tar source to subfolder gcov
pettershao-ragilenetworks a4f1815
fix conflict
pettershao-ragilenetworks d3547cd
convert to xml
pettershao-ragilenetworks 01c246d
cp lcov_cobertura to local folder
pettershao-ragilenetworks 548fdd5
update gcov_support.sh
pettershao-ragilenetworks 61903dd
publish internal container
pettershao-ragilenetworks c7c4209
lcov extract
pettershao-ragilenetworks 9677675
install dotnet in debian
pettershao-ragilenetworks d94dc22
adjust code path for publish
pettershao-ragilenetworks bc4e415
update code path
pettershao-ragilenetworks 4e28e19
update code patch
pettershao-ragilenetworks 0c6224d
sed coverage.xml for source code
pettershao-ragilenetworks cb9a082
test all
pettershao-ragilenetworks 29c643d
check low coverage rate
pettershao-ragilenetworks 7e26737
check low rate
pettershao-ragilenetworks 549a0df
check low rate
pettershao-ragilenetworks a851188
optimize for big size
pettershao-ragilenetworks 2096b14
test all
pettershao-ragilenetworks 8b38232
fix timeout
pettershao-ragilenetworks 6b13bb1
check low rate
pettershao-ragilenetworks b162721
check low rate
pettershao-ragilenetworks efc9512
publish container info
pettershao-ragilenetworks c3c1786
fix error
pettershao-ragilenetworks fffde5b
test all
pettershao-ragilenetworks 2ab0297
add MACRO and preload code
pettershao-ragilenetworks ad84dd8
fix conflict
pettershao-ragilenetworks 2296c82
fix conflict
pettershao-ragilenetworks 751b457
Merge branch 'master' into gcov_for_swss_daemon
pettershao-ragilenetworks c86d16e
fix error
pettershao-ragilenetworks a2bd4a7
fix error
pettershao-ragilenetworks a60c02a
fix error
pettershao-ragilenetworks 225caf1
fix error
pettershao-ragilenetworks 165066a
add Makefile
pettershao-ragilenetworks 4bd191d
fix error
pettershao-ragilenetworks 3bf64a0
fix error
pettershao-ragilenetworks 2baf49b
fix error
pettershao-ragilenetworks 75532f1
fix fileExists
pettershao-ragilenetworks b300392
install preload.so
pettershao-ragilenetworks 9aebbdd
install libgcopreload.so
pettershao-ragilenetworks 3238444
Update Makefile
pettershao-ragilenetworks c9eb9bd
Create lcov_cobertura.py
pettershao-ragilenetworks c321351
revert bach sai download
pettershao-ragilenetworks ef11208
update Makefile
pettershao-ragilenetworks 32bf0ac
test all
pettershao-ragilenetworks 886eecf
Compiling process optimization
pettershao-ragilenetworks 964afc0
Update azure-pipelines.yml
pettershao-ragilenetworks 0dc108e
gcovpreload.c -> gcovpreload.cpp
pettershao-ragilenetworks cd14c5e
revert bach test cases
pettershao-ragilenetworks 01ff966
revert bach test cases version1
pettershao-ragilenetworks ac48807
fix path
pettershao-ragilenetworks bc1b23c
fix LGTM alerts
pettershao-ragilenetworks a89bc59
syncd DVS test modification to check speed
pettershao-ragilenetworks d42d23a
reload vs container
pettershao-ragilenetworks 0d1af2d
fix test error
pettershao-ragilenetworks 1ceb8e8
Merge branch 'master' into gcov_for_swss_daemon
pettershao-ragilenetworks 73f92dc
Update conftest.py
pettershao-ragilenetworks 9b2dd7f
Merge branch 'master' into gcov_for_swss_daemon
pettershao-ragilenetworks ed3956f
Update conftest.py
pettershao-ragilenetworks 6ca2c2e
Update test-docker-sonic-vs-template.yml
pettershao-ragilenetworks c68fc15
try to remove unused gcno for speed up
pettershao-ragilenetworks cf05e3a
Merge branch 'master' into gcov_for_swss_daemon
pettershao-ragilenetworks ce60f63
remove duplicate files
pettershao-ragilenetworks 23a2abd
fix file can't find
pettershao-ragilenetworks 8427585
sync conftest.py
pettershao-ragilenetworks 8a396b7
Update conftest.py
pettershao-ragilenetworks a4d9459
Update conftest.py
pettershao-ragilenetworks 2993055
Update conftest.py
pettershao-ragilenetworks 7a3978d
Merge branch 'master' into gcov_for_swss_daemon
pettershao-ragilenetworks f801a4a
Update conftest.py
pettershao-ragilenetworks cb541dc
trigger build
pettershao-ragilenetworks 5002831
Merge remote-tracking branch 'upstream1/master' into gcov_for_swss_da…
prsunny 276840a
Fix gearsyncd
prsunny File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,114 @@ | ||
| parameters: | ||
| - name: arch | ||
| type: string | ||
| values: | ||
| - amd64 | ||
| default: amd64 | ||
|
|
||
| - name: pool | ||
| type: string | ||
| values: | ||
| - sonicbld | ||
| - default | ||
| default: default | ||
|
|
||
| - name: timeout | ||
| type: number | ||
| default: 180 | ||
|
|
||
| - name: sonic_slave | ||
| type: string | ||
|
|
||
| - name: sairedis_artifact_name | ||
| type: string | ||
|
|
||
| - name: swss_common_artifact_name | ||
| type: string | ||
|
|
||
| - name: swss_artifact_name | ||
| type: string | ||
|
|
||
| - name: artifact_name | ||
| type: string | ||
|
|
||
| - name: archive_gcov | ||
| type: boolean | ||
| default: false | ||
|
|
||
| jobs: | ||
| - job: | ||
| displayName: ${{ parameters.arch }} | ||
| timeoutInMinutes: ${{ parameters.timeout }} | ||
|
|
||
| pool: | ||
| ${{ if ne(parameters.pool, 'default') }}: | ||
| name: ${{ parameters.pool }} | ||
| ${{ if eq(parameters.pool, 'default') }}: | ||
| vmImage: 'ubuntu-20.04' | ||
|
|
||
| container: | ||
| image: sonicdev-microsoft.azurecr.io:443/${{ parameters.sonic_slave }}:latest | ||
|
|
||
|
|
||
| steps: | ||
| - script: | | ||
| sudo apt-get install -y lcov | ||
| displayName: "Install dependencies" | ||
| condition: eq('${{ parameters.archive_gcov }}', true) | ||
| - task: DownloadPipelineArtifact@2 | ||
| inputs: | ||
| artifact: ${{ parameters.artifact_name }} | ||
| displayName: "Download gcov artifact" | ||
| condition: eq('${{ parameters.archive_gcov }}', true) | ||
| - script: | | ||
| set -x | ||
| ls -lh | ||
| sudo tar -zxvf sonic-gcov.tar.gz | ||
| sudo cp -rf sonic-gcov $(Build.ArtifactStagingDirectory) | ||
| sudo rm sonic-gcov.tar.gz | ||
| ls -lh | ||
| workingDirectory: $(Pipeline.Workspace) | ||
| displayName: "store sonic-gcov" | ||
| condition: eq('${{ parameters.archive_gcov }}', true) | ||
| - checkout: self | ||
| submodules: true | ||
| condition: eq('${{ parameters.archive_gcov }}', true) | ||
| - script: | | ||
| set -x | ||
| wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb | ||
| sudo dpkg -i packages-microsoft-prod.deb | ||
| sudo apt-get update | ||
| sudo apt-get install -y dotnet-sdk-5.0 | ||
| pushd ./s/ | ||
| sudo tar -zcvf swss.tar.gz ./* | ||
| ls -lh ./* | ||
| cp ./gcovpreload/lcov_cobertura.py $(Build.ArtifactStagingDirectory)/ | ||
| cp ./tests/gcov_support.sh $(Build.ArtifactStagingDirectory)/sonic-gcov | ||
| sudo cp -rf swss.tar.gz $(Build.ArtifactStagingDirectory)/sonic-gcov | ||
| popd | ||
| sudo cp -rf $(Build.ArtifactStagingDirectory)/sonic-gcov ./ | ||
| pushd sonic-gcov | ||
| ls -lh ./* | ||
| sudo chmod +x ./gcov_support.sh | ||
| sudo ./gcov_support.sh generate | ||
| sudo ./gcov_support.sh merge_container_info $(Build.ArtifactStagingDirectory) | ||
| sudo cp -rf gcov_output $(Build.ArtifactStagingDirectory) | ||
| ls -lh $(Build.ArtifactStagingDirectory) | ||
| popd | ||
| workingDirectory: $(Pipeline.Workspace) | ||
| displayName: "generate gcov reports" | ||
| condition: eq('${{ parameters.archive_gcov }}', true) | ||
|
|
||
| - publish: $(Build.ArtifactStagingDirectory)/gcov_output | ||
| artifact: gcov_info | ||
| displayName: "Archive gcov info" | ||
| condition: eq('${{ parameters.archive_gcov }}', true) | ||
|
|
||
| - task: PublishCodeCoverageResults@1 | ||
| inputs: | ||
| codeCoverageTool: Cobertura | ||
| summaryFileLocation: '$(Build.ArtifactStagingDirectory)/gcov_output/AllMergeReport/coverage.xml' | ||
| reportDirectory: '$(Build.ArtifactStagingDirectory)/gcov_output/AllMergeReport/' | ||
| displayName: 'Publish c c++ test coverage' | ||
| condition: eq('${{ parameters.archive_gcov }}', true) | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like the task PublishCodeCoverageResults supports to publish multiple coverage files in single task, @pettershao-ragilenetworks, have you tried to merged the coverage files by the task itself? I am not sure it works or not.
See https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/test/publish-code-coverage-results?view=azure-devops
See summaryFileLocation and additionalCodeCoverageFiles, both of the arguments support file pattern.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we only publish total.info(which later be convert into coverage.xml)one time.
the reason why we merge the info in gcov_support.sh is that pipeline could't recognize the info files and will merge fail.