forked from IronLanguages/ironpython2
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathappveyor.yml
More file actions
129 lines (99 loc) · 4.43 KB
/
appveyor.yml
File metadata and controls
129 lines (99 loc) · 4.43 KB
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
# 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
# NOTE: version is now generated in "before_build:"
#version: 2.7.8-{build}
# you can use {branch} name in version format too
# version: 1.0.{build}-{branch}
# Do not build on tags (GitHub and BitBucket)
skip_tags: true
#---------------------------------#
# environment configuration #
#---------------------------------#
# Build worker image (VM template)
image: Visual Studio 2017
# 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:
- '%LocalAppData%\NuGet\Cache'
# 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 Configuration, i.e. Debug, Release, etc.
configuration: Release
install:
- ps: (New-Object Net.WebClient).DownloadFile('https://dist.nuget.org/win-x86-commandline/v4.3.0/nuget.exe', 'C:\Tools\NuGet\NuGet.exe')
# scripts to run before build
before_build:
- git submodule update --init --recursive
- nuget restore
- dotnet --info
- ps: $xml = [xml] (Get-Content CurrentVersion.props); $major = $xml.Project.PropertyGroup.MajorVersion; $minor = $xml.Project.PropertyGroup.MinorVersion; $micro = $xml.Project.PropertyGroup.MicroVersion; $serial = $xml.Project.PropertyGroup.ReleaseSerial; Update-AppveyorBuild -Version "$($major).$($minor).$($micro).$($serial)-$($env:APPVEYOR_BUILD_NUMBER)".replace(" ","")
# 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:
- ps: .\make.ps1 package
# to run your custom scripts instead of automatic MSBuild
build_script:
- ps: .\make.ps1
# to run your custom scripts instead of automatic tests
test_script:
- ps: .\make.ps1 ngen
- ps: .\make.ps1 test-all
#---------------------------------#
# artifacts configuration #
#---------------------------------#
artifacts:
- path: Package/Release/Packages/**/*.zip
name: Zip Package
type: Zip
- path: Package/Release/Packages/**/*.nupkg
name: NuGet Package
type: NuGetPackage
- path: Package/Release/Packages/**/*.msi
name: MSI Package
type: File
- path: build-*.binlog
name: Binary Build Log
type: File
on_failure:
- ps: Write-Host "Uploading test results"
- ps: $wc = New-Object 'System.Net.WebClient'; foreach($file in (Get-ChildItem -Include '*-result.xml' -Recurse)) { $wc.UploadFile("https://ci.appveyor.com/api/testresults/nunit/$($env:APPVEYOR_JOB_ID)", $file) }
- ps: $wc = New-Object 'System.Net.WebClient'; foreach($file in (Get-ChildItem -Include '*.trx' -Recurse)) { $wc.UploadFile("https://ci.appveyor.com/api/testresults/mstest/$($env:APPVEYOR_JOB_ID)", $file) }
- ps: Write-Host "Done uploading test results"
on_success:
- ps: Write-Host "Uploading test results"
- ps: $wc = New-Object 'System.Net.WebClient'; foreach($file in (Get-ChildItem -Include '*-result.xml' -Recurse)) { $wc.UploadFile("https://ci.appveyor.com/api/testresults/nunit/$($env:APPVEYOR_JOB_ID)", $file) }
- ps: $wc = New-Object 'System.Net.WebClient'; foreach($file in (Get-ChildItem -Include '*.trx' -Recurse)) { $wc.UploadFile("https://ci.appveyor.com/api/testresults/mstest/$($env:APPVEYOR_JOB_ID)", $file) }
- ps: Write-Host "Done uploading test results"
#---------------------------------#
# notifications #
#---------------------------------#
notifications:
# Email
- provider: Email
to:
- developers+int+211+854770831703316759@ironpython.groups.io
subject: 'IronPython2 Build {{status}}'
on_build_status_changed: true
# Gitter
- provider: Webhook
url: https://webhooks.gitter.im/e/b21a2ccce686293e02f7
on_build_success: true
on_build_failure: true
on_build_status_changed: true