-
Notifications
You must be signed in to change notification settings - Fork 1
/
.appveyor.yml
67 lines (46 loc) · 2.01 KB
/
.appveyor.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
image: WMF 5
version: 0.1.{build}
# Skip on updates to the readme.
# We can force this by adding [skip ci] or [ci skip] anywhere in commit message
skip_commits:
message: /update(?:|d|s) readme\..*/
environment:
PSGalleryApiKey:
secure: Xpt1sogACnm41S2/1LmhjIl1zn/s1u1dcwNdhLcUh8RA8eOSGaMGB8Ce8B5svBzg
CODECOV_TOKEN:
secure: FTZwENCnOORLZL4p1ijHk5KhOmbsfSgj/sxG4NVtv8SDH8A8qVBHlnCbluhZTTIm
install:
# Bootstrap PSDepend and Install Dependencies
- ps: |
Install-PackageProvider -Name NuGet -MinimumVersion '2.8.5.201' -Force -Verbose
Install-Module -Name PSDepend -Force -Verbose; Import-Module -Name PSDepend -Verbose
Invoke-PSDepend '.\REQUIREMENTS.psd1' -Force -Verbose
build_script:
- ps: Invoke-psake '.\.scripts\build.ps1' -Properties @{'SkipBootStrap' = $true}
test_script:
# Run tests, upload test results and generate coverage report
- ps: |
Import-Module ${env:Temp}\CodeCovIo.psm1
$Invoke_Pester = @{
OutputFormat = 'NUnitXml'
OutputFile = '.\.temp\TestsResults.xml'
PassThru = $true
CodeCoverage = '.\OneDrive\OneDrive.schema.psm1'
CodeCoverageOutputFile = '.\.temp\CodeCoverage.xml'
}
$res = Invoke-Pester @Invoke_Pester
(New-Object 'System.Net.WebClient').UploadFile("https://ci.appveyor.com/api/testresults/nunit/${env:APPVEYOR_JOB_ID}", (Resolve-Path $Invoke_Pester.OutputFile))
Export-CodeCovIoJson -CodeCoverage $res.CodeCoverage -RepoRoot $pwd -Path CodeCoverage.json
if ($res.FailedCount -gt 0)
{
Throw "$($res.FailedCount) tests failed."
}
after_test:
# Upload coverage report to Codecov.io
- ps: |
& "${env:Temp}\Codecov\codecov.exe" -f .\CodeCoverage.json
deploy_script:
# If build was started by pushed tag; deploy it.
- ps: |
Write-Host "[AppVeyor] APPVEYOR_REPO_TAG: ${env:APPVEYOR_REPO_TAG}" -Foregroundcolor 'Blue' -BackgroundColor 'Magenta'
if ($env:APPVEYOR_REPO_TAG -eq 'true') { Invoke-PSDeploy -Path '.\.scripts\deploy.ps1' -Force }