File: build-test.yml

package info (click to toggle)
python-azure 20201208%2Bgit-6
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 1,437,920 kB
  • sloc: python: 4,287,452; javascript: 269; makefile: 198; sh: 187; xml: 106
file content (68 lines) | stat: -rw-r--r-- 1,985 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
parameters:
  AdditionalTestArgs: ''
  TestMarkArgument: ''
  EnvVars: {}
  ServiceDirectory: ''
  PythonVersion: ''
  OSVmImage: ''
  BeforeTestSteps: []
  AfterTestSteps: []
  CoverageArg: ''
  BuildTargetingString: 'azure-*'
  ToxTestEnv: ""
  RunCoverage: ne(variables['CoverageArg'], '--disablecov')
  ToxEnvParallel: ''
  InjectedPackages: ''
  DevFeedName: 'public/azure-sdk-for-python'

steps:
  - pwsh: |
      gci -r $(Build.ArtifactStagingDirectory)

  - template: /eng/pipelines/templates/steps/use-python-version.yml
    parameters:
      versionSpec: '${{ parameters.PythonVersion }}'

  - template: /eng/common/pipelines/templates/steps/verify-agent-os.yml

  - script: |
      python -m pip install pip==20.1
      pip install -r eng/ci_tools.txt
      pip --version
      pip freeze
    displayName: 'Prep Environment'

  - ${{if eq(variables['System.TeamProject'], 'internal') }}:
    - template: ../steps/auth-dev-feed.yml
      parameters: 
        DevFeedName: ${{ parameters.DevFeedName }}

  - ${{ parameters.BeforeTestSteps }}

  - task: PythonScript@0
    displayName: 'Run Tests'
    inputs:
      scriptPath: 'scripts/devops_tasks/setup_execute_tests.py'
      arguments: >-
        "${{ parameters.BuildTargetingString }}"
        ${{ parameters.AdditionalTestArgs }}
        ${{ parameters.CoverageArg }}
        --mark_arg="${{ parameters.TestMarkArgument }}"
        --service="${{ parameters.ServiceDirectory }}"
        --toxenv="${{ parameters.ToxTestEnv }}"
        --injected-packages="${{ parameters.InjectedPackages }}"
        ${{ parameters.ToxEnvParallel }}
    env: ${{ parameters.EnvVars }}

  - ${{ parameters.AfterTestSteps }}

  - task: PublishTestResults@2
    condition: always()
    inputs:
      testResultsFiles: '**/*test*.xml'
      testRunTitle: '$(OSName) Python ${{ parameters.PythonVersion }}'
      failTaskOnFailedTests: true

  - template: publish-coverage.yml
    parameters:
      RunCoverage: ${{ parameters.RunCoverage }}