Skip to content

Commit 8171ceb

Browse files
authored
Fix Azure Pipelines code coverage (#237)
- Fix Azure Pipelines code coverage (issue #236).
1 parent ae40156 commit 8171ceb

File tree

2 files changed

+42
-28
lines changed

2 files changed

+42
-28
lines changed

CHANGELOG.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ For older change log history see the [historic changelog](HISTORIC_CHANGELOG.md)
1818
- Added a CONTRIBUTING.md.
1919
- Replaced module CommonResourceHelper with the PowerShell Gallery module
2020
DscResource.Common v0.2.0.
21+
- Adding back publishing code coverage to Codecov.io.
22+
- Add status badge for Codecov.io in README.md.
23+
- Fix Azure Pipelines code coverage ([issue #236](https://github.com/dsccommunity/xFailOverCluster/issues/236)).
2124

2225
### Changed
2326

@@ -63,8 +66,6 @@ For older change log history see the [historic changelog](HISTORIC_CHANGELOG.md)
6366
DscResource.Test cannot be imported.
6467
- Update the deploy stage so that it is skipped when merging
6568
branch master in forks.
66-
- Adding back publishing code coverage to Codecov.io.
67-
- Add stats badge for Codecov.io in README.md.
6869
- xClusterPreferredOwner
6970
- Fixed broken links to examples in README.md.
7071
- xClusterQuorum

azure-pipelines.yml

+39-26
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@ trigger:
1010
- "v*"
1111
exclude:
1212
- "*-*"
13+
variables:
14+
buildFolderName: output
15+
buildArtifactName: output
16+
testResultFolderName: testResults
17+
testArtifactName: testResults
1318

1419
stages:
1520
- stage: Build
@@ -37,8 +42,8 @@ stages:
3742
- task: PublishBuildArtifacts@1
3843
displayName: 'Publish Build Artifact'
3944
inputs:
40-
pathToPublish: 'output/'
41-
artifactName: 'output'
45+
pathToPublish: '$(buildFolderName)/'
46+
artifactName: $(buildArtifactName)
4247
publishLocation: 'Container'
4348

4449
- stage: Test
@@ -47,7 +52,7 @@ stages:
4752
- job: Test_HQRM
4853
displayName: 'HQRM'
4954
pool:
50-
vmImage: 'win1803'
55+
vmImage: 'windows-2019'
5156
timeoutInMinutes: 0
5257
steps:
5358
- task: DownloadBuildArtifacts@0
@@ -75,21 +80,15 @@ stages:
7580
- job: Test_Unit
7681
displayName: 'Unit'
7782
pool:
78-
vmImage: 'win1803'
83+
vmImage: 'windows-2019'
7984
timeoutInMinutes: 0
8085
steps:
81-
- powershell: |
82-
$repositoryOwner,$repositoryName = $env:BUILD_REPOSITORY_NAME -split '/'
83-
echo "##vso[task.setvariable variable=RepositoryOwner;isOutput=true]$repositoryOwner"
84-
echo "##vso[task.setvariable variable=RepositoryName;isOutput=true]$repositoryName"
85-
name: dscBuildVariable
86-
displayName: 'Set Environment Variables'
8786
- task: DownloadBuildArtifacts@0
8887
displayName: 'Download Build Artifact'
8988
inputs:
9089
buildType: 'current'
9190
downloadType: 'single'
92-
artifactName: 'output'
91+
artifactName: $(buildArtifactName)
9392
downloadPath: '$(Build.SourcesDirectory)'
9493
- task: PowerShell@2
9594
name: test
@@ -103,20 +102,13 @@ stages:
103102
condition: succeededOrFailed()
104103
inputs:
105104
testResultsFormat: 'NUnit'
106-
testResultsFiles: 'output/testResults/NUnit*.xml'
105+
testResultsFiles: '$(buildFolderName)/$(testResultFolderName)/NUnit*.xml'
107106
testRunTitle: 'Unit (Windows Server Core)'
108-
- task: PublishCodeCoverageResults@1
109-
displayName: 'Publish Code Coverage'
110-
condition: succeededOrFailed()
111-
inputs:
112-
codeCoverageTool: 'JaCoCo'
113-
summaryFileLocation: 'output/testResults/CodeCov*.xml'
114-
pathToSources: '$(Build.SourcesDirectory)/output/$(dscBuildVariable.RepositoryName)'
115107
- task: PublishBuildArtifacts@1
116108
displayName: 'Publish Test Artifact'
117109
inputs:
118-
pathToPublish: 'output/testResults/'
119-
artifactName: 'testResults'
110+
pathToPublish: '$(buildFolderName)/$(testResultFolderName)/'
111+
artifactName: $(testArtifactName)
120112
publishLocation: 'Container'
121113

122114
- job: Test_Integration
@@ -130,7 +122,7 @@ stages:
130122
inputs:
131123
buildType: 'current'
132124
downloadType: 'single'
133-
artifactName: 'output'
125+
artifactName: $(buildArtifactName)
134126
downloadPath: '$(Build.SourcesDirectory)'
135127
- task: PowerShell@2
136128
name: configureWinRM
@@ -151,7 +143,7 @@ stages:
151143
condition: succeededOrFailed()
152144
inputs:
153145
testResultsFormat: 'NUnit'
154-
testResultsFiles: 'output/testResults/NUnit*.xml'
146+
testResultsFiles: '$(buildFolderName)/$(testResultFolderName)/NUnit*.xml'
155147
testRunTitle: 'Integration (Windows Server Core)'
156148

157149
- job: Code_Coverage
@@ -161,16 +153,37 @@ stages:
161153
vmImage: 'ubuntu 16.04'
162154
timeoutInMinutes: 0
163155
steps:
156+
- pwsh: |
157+
$repositoryOwner,$repositoryName = $env:BUILD_REPOSITORY_NAME -split '/'
158+
echo "##vso[task.setvariable variable=RepositoryOwner;isOutput=true]$repositoryOwner"
159+
echo "##vso[task.setvariable variable=RepositoryName;isOutput=true]$repositoryName"
160+
name: dscBuildVariable
161+
displayName: 'Set Environment Variables'
164162
- task: DownloadBuildArtifacts@0
165163
displayName: 'Download Build Artifact'
166164
inputs:
167165
buildType: 'current'
168166
downloadType: 'single'
169-
artifactName: 'testResults'
170-
downloadPath: '$(Build.SourcesDirectory)/output'
167+
artifactName: $(buildArtifactName)
168+
downloadPath: '$(Build.SourcesDirectory)'
169+
- task: DownloadBuildArtifacts@0
170+
displayName: 'Download Test Artifact'
171+
inputs:
172+
buildType: 'current'
173+
downloadType: 'single'
174+
artifactName: $(testArtifactName)
175+
downloadPath: '$(Build.SourcesDirectory)/$(buildFolderName)'
176+
- task: PublishCodeCoverageResults@1
177+
displayName: 'Publish Azure Code Coverage'
178+
condition: succeededOrFailed()
179+
inputs:
180+
codeCoverageTool: 'JaCoCo'
181+
summaryFileLocation: '$(buildFolderName)/$(testResultFolderName)/JaCoCo_coverage.xml'
182+
pathToSources: '$(Build.SourcesDirectory)/$(buildFolderName)/$(dscBuildVariable.RepositoryName)'
171183
- script: |
172-
bash <(curl -s https://codecov.io/bash) -f "./output/testResults/JaCoCo_coverage.xml"
184+
bash <(curl -s https://codecov.io/bash) -f "./$(buildFolderName)/$(testResultFolderName)/JaCoCo_coverage.xml"
173185
displayName: 'Upload to Codecov.io'
186+
condition: succeededOrFailed()
174187
175188
- stage: Deploy
176189
dependsOn: Test

0 commit comments

Comments
 (0)