add PublishVersion task

This commit is contained in:
Kevin Marquette
2018-08-20 03:14:42 -07:00
parent 94471ccfc0
commit a9a73ae9b2
4 changed files with 21 additions and 7 deletions

View File

@@ -1,7 +1,7 @@
task FullTests { task FullTests {
$requiredPercent = $Script:CodeCoveragePercent
$params = @{ $params = @{
CodeCoverage = 'Output\*\*.psm1'
CodeCoverageOutputFile = 'Output\codecoverage.xml'
OutputFile = $testFile OutputFile = $testFile
OutputFormat = 'NUnitXml' OutputFormat = 'NUnitXml'
PassThru = $true PassThru = $true
@@ -10,13 +10,18 @@ task FullTests {
Tag = 'Build' Tag = 'Build'
} }
if($requiredPercent -gt 0.00)
{
$params['CodeCoverage'] = 'Output\*\*.psm1'
$params['CodeCoverageOutputFile'] = 'Output\codecoverage.xml'
}
$results = Invoke-Pester @params $results = Invoke-Pester @params
if ($results.FailedCount -gt 0) if ($results.FailedCount -gt 0)
{ {
Write-Error -Message "Failed [$($results.FailedCount)] Pester tests." Write-Error -Message "Failed [$($results.FailedCount)] Pester tests."
} }
$requiredPercent = $Script:CodeCoveragePercent
$codeCoverage = $results.codecoverage.NumberOfCommandsExecuted / $results.codecoverage.NumberOfCommandsAnalyzed $codeCoverage = $results.codecoverage.NumberOfCommandsExecuted / $results.codecoverage.NumberOfCommandsAnalyzed
if($codeCoverage -lt $requiredPercent) if($codeCoverage -lt $requiredPercent)
{ {

View File

@@ -0,0 +1,7 @@
task PublishVersion {
[version] $sourceVersion = (Get-Metadata -Path $manifestPath -PropertyName 'ModuleVersion')
"##vso[build.updatebuildnumber]$sourceVersion"
# Do the same for appveyor
# https://www.appveyor.com/docs/build-worker-api/#update-build-details
}

View File

@@ -30,7 +30,7 @@ task SetVersion {
$versionStamp = (git rev-parse origin/master) + (git rev-parse head) $versionStamp = (git rev-parse origin/master) + (git rev-parse head)
"Load current version" "Load current version"
[version] $sourceVersion = (Get-Metadata -Path $manifestPath -PropertyName 'ModuleVersion') [version] $sourceVersion = (Get-Metadata -Path $manifestPath -PropertyName 'ModuleVersion')
" Source version [$sourceVersion]" " Source version [$sourceVersion]"
$downloadFolder = Join-Path -Path $output downloads $downloadFolder = Join-Path -Path $output downloads

View File

@@ -2,11 +2,13 @@ $Script:ModuleName = Get-ChildItem .\*\*.psm1 | Select-object -ExpandProperty Ba
$Script:CodeCoveragePercent = 0.0 # 0 to 1 $Script:CodeCoveragePercent = 0.0 # 0 to 1
. $psscriptroot\BuildTasks\InvokeBuildInit.ps1 . $psscriptroot\BuildTasks\InvokeBuildInit.ps1
task Default Build, Test, UpdateSource, Helpify task Default Build, Helpify, Test, UpdateSource
task Build Copy, Compile, BuildModule, BuildManifest, SetVersion task Build Copy, Compile, BuildModule, BuildManifest, SetVersion
task Helpify GenerateMarkdown, GenerateHelp task Helpify GenerateMarkdown, GenerateHelp
task Test Build, ImportModule, FullTests task Test Build, ImportModule, Pester
task Publish Build, Test, Helpify, PublishModule task Publish Build, PublishVersion, Helpify, Test, PublishModule
task TFS Clean, Build, PublishVersion, Helpify, Test
task DevTest, ImportDevModule, Pester
Write-Host 'Import common tasks' Write-Host 'Import common tasks'
Get-ChildItem -Path $buildroot\BuildTasks\*.Task.ps1 | Get-ChildItem -Path $buildroot\BuildTasks\*.Task.ps1 |