forked from reaqtive/reaqtor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathazure-pipelines-build-jobs.yml
73 lines (64 loc) · 2.95 KB
/
azure-pipelines-build-jobs.yml
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
69
70
71
72
73
jobs:
- ${{ each pool in parameters.pools }}:
- ${{ each project in parameters.projects }}:
- ${{ each configuration in parameters.configurations }}:
- job:
displayName: ${{ format('{0} {1} {2}', pool.name, project, configuration) }}
timeoutInMinutes: 120
pool: ${{ pool.pool }}
steps:
- task: UseDotNet@2
displayName: Use .NET Core 5.x SDK
inputs:
version: 5.x
performMultiLevelLookup: true
- task: UseDotNet@2
inputs:
version: '3.1.x'
packageType: runtime
displayName: Install .NET Core 3.1 runtime
- task: UseDotNet@2
inputs:
version: '2.1.x'
packageType: runtime
displayName: Install .NET Core 2.1 runtime
- task: DotNetCoreCLI@2
inputs:
command: custom
custom: tool
arguments: install -g nbgv
displayName: Install NBGV tool
- script: nbgv cloud -a
displayName: Set Version
- task: DotNetCoreCLI@2
inputs:
command: custom
custom: tool
arguments: install -g dotnet-reportgenerator-globaltool
displayName: Install ReportGenerator tool
- task: DotNetCoreCLI@2
inputs:
command: test
workingDirectory: ${{ project }}
arguments: -c ${{ configuration }} /bl:$(Build.ArtifactStagingDirectory)/Logs/${{ pool.name }}.${{ project }}.${{ configuration }}.Test.binlog --settings $(Build.SourcesDirectory)/coverlet.runsettings --collect:"XPlat Code Coverage" --blame --blame-hang-timeout 5m --filter "TestCategory!~NonDeterministic_Strong"
testRunTitle: ${{ project }} ${{ configuration }}
displayName: Run Unit Tests
- script: reportgenerator -reports:$(Agent.TempDirectory)/**/coverage.cobertura.xml -sourcedirs:$(Build.SourcesDirectory) -targetdir:$(Build.ArtifactStagingDirectory)/coverage/${{ pool.name }}.${{ project }}.${{ configuration }} -reporttypes:"Cobertura"
displayName: Consolidate Coverage Runs
condition: succeededOrFailed()
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: $(Build.ArtifactStagingDirectory)/coverage
artifactName: RawCoverage
parallel: true
parallelCount: 8
displayName: Publish Raw Coverage Output
condition: succeededOrFailed()
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: $(Build.ArtifactStagingDirectory)/Logs
artifactName: Logs
parallel: true
parallelCount: 8
displayName: Publish Build Logs
condition: always()