@@ -16,10 +16,12 @@ environment:
16
16
secure : eGVilNg1Yuq+Xj+SW8r3WCtjnzhoDV0sNJkma4NRq7A=
17
17
version : 0.22.0
18
18
matrix :
19
- - xunit_runner : xunit.console.clr4.exe
20
- Arch : 64
21
19
- xunit_runner : xunit.console.clr4.x86.exe
22
20
Arch : 32
21
+ publish_on_success : False
22
+ - xunit_runner : xunit.console.clr4.exe
23
+ Arch : 64
24
+ publish_on_success : True
23
25
24
26
matrix :
25
27
fast_finish : true
@@ -49,16 +51,27 @@ install:
49
51
Write-Host "Assembly informational version = " -NoNewLine
50
52
Write-Host $Env:ASSEMBLY_INFORMATIONAL_VERSION -ForegroundColor "Green"
51
53
52
- $ShouldPublishNugetArtifact = $($Env:APPVEYOR_PULL_REQUEST_NUMBER -eq $null)
53
- $Env:SHOULD_PUBLISH_NUGET_ARTIFACT = $ShouldPublishNugetArtifact
54
- Write-Host "Should publish Nuget artifact = " -NoNewLine
55
- Write-Host $Env:SHOULD_PUBLISH_NUGET_ARTIFACT -ForegroundColor "Green"
54
+ $Env:SHOULD_RUN_COVERITY_ANALYSIS = $($Env:APPVEYOR_SCHEDULED_BUILD -eq $True)
55
+ Write-Host "Should run Coverity analysis = " -NoNewLine
56
+ Write-Host $Env:SHOULD_RUN_COVERITY_ANALYSIS -ForegroundColor "Green"
56
57
57
- $Env:SHOULD_PUBLISH_COVERITY_ANALYSIS = $($Env:APPVEYOR_SCHEDULED_BUILD -eq $True)
58
- Write-Host "Should publish Coverity analysis = " -NoNewLine
59
- Write-Host $Env:SHOULD_PUBLISH_COVERITY_ANALYSIS -ForegroundColor "Green"
58
+ $Env:SHOULD_PACKAGE_NUGET_ARTIFACT = $($Env:APPVEYOR_PULL_REQUEST_NUMBER -eq $null `
59
+ -and $Env:APPVEYOR_SCHEDULED_BUILD -eq $False)
60
+ Write-Host "Should package Nuget artifact = " -NoNewLine
61
+ Write-Host $Env:SHOULD_PACKAGE_NUGET_ARTIFACT -ForegroundColor "Green"
60
62
61
- cinst sourcelink -y
63
+ Write-Host "Should publish on success = " -NoNewLine
64
+ Write-Host $Env:publish_on_success -ForegroundColor "Green"
65
+
66
+ If ($Env:SHOULD_PACKAGE_NUGET_ARTIFACT -eq $True)
67
+ {
68
+ cinst sourcelink -y
69
+ }
70
+
71
+ If ($Env:SHOULD_RUN_COVERITY_ANALYSIS -eq $True)
72
+ {
73
+ cinst curl -y
74
+ }
62
75
63
76
assembly_info :
64
77
patch : true
@@ -83,14 +96,14 @@ build_script:
83
96
84
97
test_script :
85
98
- ps : |
86
- If ($Env:SHOULD_PUBLISH_COVERITY_ANALYSIS -eq $False)
99
+ If ($Env:SHOULD_RUN_COVERITY_ANALYSIS -eq $False)
87
100
{
88
101
& "$Env:xunit_runner" "$Env:APPVEYOR_BUILD_FOLDER\LibGit2Sharp.Tests\bin\Release\LibGit2Sharp.Tests.dll" /appveyor
89
102
}
90
103
91
104
after_test :
92
105
- ps : |
93
- If ($Env:SHOULD_PUBLISH_COVERITY_ANALYSIS -eq $False )
106
+ If ($Env:SHOULD_PACKAGE_NUGET_ARTIFACT -eq $True -and $Env:publish_on_success -eq $True )
94
107
{
95
108
& "$Env:APPVEYOR_BUILD_FOLDER\nuget.package\BuildNugetPackage.ps1" `
96
109
-commitSha "$Env:APPVEYOR_REPO_COMMIT" `
@@ -106,27 +119,28 @@ after_test:
106
119
Add-Type -Path "$Env:APPVEYOR_BUILD_FOLDER\LibGit2Sharp\bin\Release\LibGit2Sharp.dll"
107
120
Write-Host "LibGit2Sharp version = $([LibGit2Sharp.GlobalSettings]::Version)" -ForegroundColor "Magenta"
108
121
109
- If ($Env:SHOULD_PUBLISH_NUGET_ARTIFACT -eq $True)
110
- {
111
- Get-ChildItem "$Env:APPVEYOR_BUILD_FOLDER\LibGit2sharp\*.nupkg" | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
112
- }
122
+ Get-ChildItem "$Env:APPVEYOR_BUILD_FOLDER\LibGit2sharp\*.nupkg" | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
113
123
}
114
- Else
124
+
125
+ If ($Env:SHOULD_RUN_COVERITY_ANALYSIS -eq $True -and $Env:publish_on_success -eq $True)
115
126
{
116
- & nuget install PublishCoverity -Version 0.9.0 -ExcludeVersion -OutputDirectory .\packages
117
-
118
- & .\packages\PublishCoverity\PublishCoverity.exe compress `
119
- -i "$Env:APPVEYOR_BUILD_FOLDER\cov-int" `
120
- -o "$Env:APPVEYOR_BUILD_FOLDER\$Env:APPVEYOR_PROJECT_NAME.zip"
121
-
122
- & .\packages\PublishCoverity\PublishCoverity.exe publish `
123
- -t "$Env:coverity_token" `
124
- -e "$Env:coverity_email" `
125
- -r "$Env:APPVEYOR_REPO_NAME" `
126
- -z "$Env:APPVEYOR_BUILD_FOLDER\$env:APPVEYOR_PROJECT_NAME.zip" `
127
- -d "CI server scheduled build." `
128
- --codeVersion "$Env:ASSEMBLY_INFORMATIONAL_VERSION" `
129
- --nologo
127
+ 7z a "$Env:APPVEYOR_BUILD_FOLDER\$Env:APPVEYOR_PROJECT_NAME.zip" "$Env:APPVEYOR_BUILD_FOLDER\cov-int\"
128
+
129
+ # cf. http://stackoverflow.com/a/25045154/335418
130
+ Remove-item alias:curl
131
+
132
+ Write-Host "Uploading Coverity analysis result..." -ForegroundColor "Green"
133
+
134
+ curl --silent --show-error `
135
+ --output curl-out.txt `
136
+ --form token="$Env:coverity_token" `
137
+ --form email="$Env:coverity_email" `
138
+ --form "file=@$Env:APPVEYOR_BUILD_FOLDER\$Env:APPVEYOR_PROJECT_NAME.zip" `
139
+ --form version="$Env:APPVEYOR_REPO_COMMIT" `
140
+ --form description="CI server scheduled build." `
141
+ https://scan.coverity.com/builds?project=libgit2%2Flibgit2sharp
142
+
143
+ cat .\curl-out.txt
130
144
}
131
145
132
146
notifications :
0 commit comments