forked from icsharpcode/SharpZipLib
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathappveyor.yml
246 lines (202 loc) · 6.69 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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
# Notes:
# - Minimal appveyor.yml file is an empty file. All sections are optional.
# - Indent each level of configuration with 2 spaces. Do not use tabs!
# - All section names are case-sensitive.
# - Section names should be unique on each level.
#---------------------------------#
# general configuration #
#---------------------------------#
# version format
version: 1.0.{build}
# you can use {branch} name in version format too
# version: 1.0.{build}-{branch}
# branches to build
branches:
# whitelist
only:
- master
# blacklist
except:
- gh-pages
- coverity_scan
# Do not build on tags (GitHub only)
skip_tags: true
#---------------------------------#
# environment configuration #
#---------------------------------#
# Operating system (build VM template)
os: Windows Server 2012
image:
- Visual Studio 2015
#- Visual Studio 2013
# scripts that are called at very beginning, before repo cloning
init:
- git config --global core.autocrlf input
# build cache to preserve files/folders between builds
cache:
- packages -> **\packages.config # preserve "packages" directory in the root of build folder but will reset it if packages.config is modified
# scripts that run after cloning repository
install:
# by default, all script lines are interpreted as batch
# - echo This is batch
# to run script as a PowerShell command prepend it with ps:
# - ps: Write-Host 'This is PowerShell'
# batch commands start from cmd:
# - cmd: echo This is batch again
# - cmd: set MY_VAR=12345
# enable patching of AssemblyInfo.* files
assembly_info:
patch: true
file: 'GlobalAssemblyInfo.*'
assembly_version: '{version}'
assembly_file_version: '{version}'
assembly_informational_version: '{version}'
# Automatically register private account and/or project AppVeyor NuGet feeds.
nuget:
account_feed: true
project_feed: true
disable_publish_on_pr: true # disable publishing of .nupkg artifacts to
# account/project feeds for pull request builds
#---------------------------------#
# build configuration #
#---------------------------------#
# build platform, i.e. x86, x64, Any CPU. This setting is optional.
platform: Any CPU
# to add several platforms to build matrix:
#platform:
# - x86
# - Any CPU
# build Configuration, i.e. Debug, Release, etc.
configuration: Release
# to add several configurations to build matrix:
#configuration:
# - Debug
# - Release
# Save this for when there is an Android or iOS test application
#xamarin:
# email: mcneight+xamarin@gmail.com
# password:
# secure: vkBoEpwLjBnLcLJrwnkYiA==
# android: true
# ios: true
build:
# parallel: true
# project: ICSharpCode.SharpZipLib.sln
# publish_nuget: true
# publish_nuget_symbols: true
# include_nuget_references: true
# MSBuild verbosity level
# verbosity: normal
environment:
COVERALLS_REPO_TOKEN:
secure: B/NQfoRYUnKLGS5KJSJrGBvcYD0Jv+coudjJMY2jf+gqvqDWral9CDmv2i0WovY7
COVERITY_TOKEN:
secure: n9NA/kasTqxUc8UBfQ2cBlZcDyFJvko1gcMzVTDvZq8=
COVERITY_EMAIL:
secure: j/N0ZmnUZYKnS2nGocKyNsXoKQBfWTBOg+VI4q7yMn4=
# scripts to run before build
before_build:
- cmd: nuget restore ICSharpCode.SharpZipLib.sln
# scripts to run *after* solution is built and *before* automatic packaging occurs (web apps, NuGet packages, Azure Cloud Services)
before_package:
# scripts to run after build
after_build:
# to run your custom scripts instead of automatic MSBuild
build_script:
- ps: Build\run-appveyor-build.ps1
# to disable automatic builds
#build: off
#---------------------------------#
# tests configuration #
#---------------------------------#
test:
assemblies:
- ICSharpCode.SharpZipLib.dll
- ICSharpCode.SharpZipLib.Tests.dll
# categories:
# - UI
# - E2E
# to run tests from different categories as separate jobs in parallel
#test:
# categories:
# - A # A category common for all jobs
# - [UI] # 1st job
# - [DAL, BL] # 2nd job
# scripts to run before tests
before_test:
# - echo script1
# - ps: Write-Host "script1"
# scripts to run after tests
after_test:
- cmd: Build\run-opencover.cmd
- cmd: packages\coveralls.io.1.3.4\tools\coveralls.net.exe --opencover Documentation\opencover-results-release.xml
- cmd: nuget pack Build\ICSharpCode.SharpZipLib.nuspec -BasePath bin\Release\ -OutputDirectory bin\Release\ -Version %APPVEYOR_BUILD_VERSION%
# to run your custom scripts instead of automatic tests
test_script:
- cmd: nunit3-console --framework=net-4.5 --labels=All --testlist=ICSharpCode.SharpZipLib.Tests\PassingTests.txt --result=Documentation\nunit3-test-results-appveyor.xml;format=AppVeyor bin\Release\ICSharpCode.SharpZipLib.Tests.dll
# to disable automatic tests
#test: off
#---------------------------------#
# artifacts configuration #
#---------------------------------#
artifacts:
#- path: bin\Debug
# name: BuildDebug
- path: bin\Release
name: BuildRelease
- path: bin\**\*.nupkg
name: NuGet
- path: Documentation\*.xml
name: TestResults
- path: Documentation\coverity.zip
name: Coverity
#---------------------------------#
# deployment configuration #
#---------------------------------#
# providers: Local, FTP, WebDeploy, AzureCS, AzureBlob, S3, NuGet, Environment
# provider names are case-sensitive!
deploy:
- provider: GitHub
release: sharpziplib-dogfood-{version}
description: 'Something To Eat'
auth_token:
secure: pZ5zHJ/2mZsmqQH0gPke0LMqSgUhz79wbcCjdDTCEIl6hRJYlYhkaPianw2hz26k # your encrypted token from GitHub
artifact: BuildRelease
draft: true
prerelease: true
on:
branch: master # release from master branch only
# appveyor_repo_tag: true # deploy on tag push only
- provider: NuGet
skip_symbols: false
symbol_server: https://ci.appveyor.com/nuget/mcneight-93sw9hg8ve02/api/v2/package
api_key:
secure: z+iy8Iv5qqQghGrATRbx2I921HCHD7x7/xIrmkGGauMgpA/d1DBoOVUNNCHLE9Dj
artifact: NuGet
#---------------------------------#
# global handlers #
#---------------------------------#
#---------------------------------#
# notifications #
#---------------------------------#
notifications:
# Email
- provider: Email
to:
- mcneight+appveyor@gmail.com
subject: Build {{status}}
message: Version {{version}} {{commitId}} from {{branch}} {{status}} {{message}}
on_build_success: true
on_build_failure: true
on_build_status_changed: true
# VSOTeamRoom
#- provider: VSOTeamRoom
# room: CI
# account: sharpziplib
# username: neilmcneight@hotmail.com
# password:
# secure: kFG0QjE+Broo7Y1UsWrLEg==
# template: Version {{version}} {{commitId}} from {{branch}} {{status}} {{message}}
# on_build_success: true
# on_build_failure: true
# on_build_status_changed: true