-
Notifications
You must be signed in to change notification settings - Fork 4
/
appveyor.yml
86 lines (75 loc) · 2.45 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
#-----------------------------------------------------------------------------
#
# Configuration for continuous integration service at appveyor.com
#
#-----------------------------------------------------------------------------
# Operating system (build VM template)
os: Visual Studio 2019
matrix:
# Abort all the builds as soon as one fails.
fast_finish: true
# Build for x86 and x64.
platform:
- x64
- x86
# Build only in the Release configuration, because we don't have debug libs.
configuration: Release
# Environment variables shared between all stanzas below.
environment:
project: C:\projects\%APPVEYOR_PROJECT_NAME%
# Build dependencies.
install:
# Show all env vars.
- cmake -version
- set
# Set Python version, and PlatformString which goes in the zip filename.
- ps: >-
If ($env:PLATFORM -Match "x64") {
$env:PYTHON="C:\Python27-x64\python.exe"
$env:PlatformString="win64"
} Else {
$env:PYTHON="C:\Python27\python.exe"
$env:PlatformString="win32"
}
- python --version
- git submodule update --init --recursive
- ps: .\WindowsBuilder.ps1 -deps -arch "$env:PLATFORM"
# Build playd.
build_script:
- cd "%project%"
- ps: .\WindowsBuilder.ps1 -playd -tests -arch "$env:PLATFORM"
# Run tests.
test_script:
- cd "%project%\%PLATFORM%\build"
- ctest --output-on-failure
-C "%CONFIGURATION%"
# Zip up all the exes, DLLs, and licenses.
after_build:
- ps: >-
If (Test-Path Env:\APPVEYOR_REPO_TAG_NAME) {
$zipname="playd_${env:APPVEYOR_REPO_TAG_NAME}_${env:PlatformString}.zip"
} Else {
$zipname="playd_${env:PlatformString}.zip"
}
$zippath="$env:project\$zipname";
cd "$env:project\$env:PLATFORM\build\$env:CONFIGURATION";
7z a "$zippath" *
# Make an artifact out of the zip. Artifacts for all builds are available from
# the Appveyor CI interface, or from the API.
artifacts:
- path: playd*.zip
name: playd $(PlatformString)
# When building a tag, create a GitHub release (if it doesn't already exist),
# and push the zip to it.
deploy:
release: $(APPVEYOR_REPO_TAG_NAME)
description: ''
provider: GitHub
auth_token:
secure: 03tkU2QJcSu1MpxDa6+BKaq5Yq+t/JpO5SxTaW/HmdjrrJf8wJSxF/dECbCEfGfk
artifact: playd_$(APPVEYOR_REPO_TAG_NAME)_$(PlatformString).zip
draft: true
prerelease: true
force_update: false
on:
appveyor_repo_tag: true