debugpy/azure-pipelines/templates/coverage.yml

35 lines
1.1 KiB
YAML

steps:
- template: "use_python.yml"
- script: "python -m pip install tox"
displayName: "Setup Python packages"
- task: SonarCloudPrepare@1
displayName: "Prepare analysis on SonarCloud"
inputs:
SonarCloud: "SonarCloud-debugpy"
organization: microsoft
scannerMode: CLI
extraProperties: |
sonar.python.coverage.reportPaths=$(Build.SourcesDirectory)/coverage/coverage.xml
sonar.projectKey=microsoft_debugpy
- script: "python -m tox --develop -e py311-cov -- --cov-report=html --cov-report=xml -vv"
displayName: "Coverage Run"
- task: SonarCloudAnalyze@1
displayName: "Run Code Analysis"
- task: SonarCloudPublish@1
displayName: "Publish Quality Gate Result"
inputs:
pollingTimeoutSec: "300"
- task: PublishCodeCoverageResults@1
displayName: "Publish Coverage Report"
inputs:
codeCoverageTool: Cobertura
summaryFileLocation: "$(Build.SourcesDirectory)/coverage/coverage.xml"
reportDirectory: "$(Build.SourcesDirectory)/coverage/html"
failIfCoverageEmpty: true
condition: always()