forked from mixxxdj/mixxx
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathappveyor.yml
86 lines (84 loc) · 3.31 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
---
version: '{branch}-{build}'
skip_tags: true
max_jobs: 1
image: Visual Studio 2015
init:
- git config --global core.autocrlf input
# Uncomment the following line to show RDP info at beginning of job
# - ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
clone_folder: c:\projects\mixxx
skip_commits:
files:
- doc/
- LICENCE
- README
- README.md
- COPYING
- CODE_OF_CONDUCT.md
configuration:
- release-fastbuild
# - release
# - debug
environment:
ENVIRONMENTS_URL: https://downloads.mixxx.org/builds/buildserver/2.2.x-windows/
ENVIRONMENTS_PATH: C:\mixxx-buildserver
matrix:
- platform: x64
distdir: dist64
- platform: x86
distdir: dist32
matrix:
fast_finish: false # set this flag to true to immediately finish build once one of the jobs fails.
cache:
- C:\mixxx-buildserver
install:
- set /P ENVIRONMENT_NAME=<build/windows/golden_environment
- call set ENVIRONMENT_NAME=%%ENVIRONMENT_NAME:PLATFORM=%platform%%%
- call set ENVIRONMENT_NAME=%%ENVIRONMENT_NAME:CONFIGURATION=%configuration%%%
- cd %TEMP%
- echo *** Downloading precompiled build environment if not in build-cache
- cd %APPVEYOR_BUILD_FOLDER%
- build\windows\install_buildenv.bat %ENVIRONMENTS_URL% %ENVIRONMENT_NAME% %ENVIRONMENTS_PATH%
before_build:
- cd %APPVEYOR_BUILD_FOLDER%
build_script:
- build\appveyor\build_mixxx.bat %platform% %configuration% %ENVIRONMENTS_PATH%\%ENVIRONMENT_NAME%
test_script:
- echo *** Testing
# Calling mixxx-test under bash to have standard output
# and use stdbuf to unbuffer standard & error output
- bash -c "stdbuf -oL -eL %distdir%/mixxx-test.exe --gtest_output=xml:test_results.xml 2>&1"
- timeout 5 > NUL
- bash -c "stdbuf -oL -eL %distdir%/mixxx-test.exe --benchmark 2>&1"
- timeout 5 > NUL
after_test:
- ps: (new-object net.webclient).UploadFile("https://ci.appveyor.com/api/testresults/junit/$($env:APPVEYOR_JOB_ID)", (Resolve-Path .\test_results.xml))
artifacts:
- path: '*.exe'
- path: '*.msi'
on_success:
- echo "*** SUCCESS ***"
on_failure:
- echo "*** FAILURE ***"
on_finish:
# Uncomment the following line if you don't want the build VM to be destroyed
# and be able to RDP on it until a special “lock” file on VM desktop is deleted
# The RDP session is limited by overall build time (60 min).
# - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
- echo "*** DONE ***"
deploy:
- provider: Environment
name: downloads.mixxx.org
notifications:
- provider: Webhook
url: https://mixxx.zulipchat.com/api/v1/messages
method: POST
content_type: application/x-www-form-urlencoded
headers:
Authorization:
secure: 95cbVBcC4rogjE5VNdhuYm8cnjPF8+7SeQXySqcxAqrFZxK+/Kcn3Q2hRb2iZfUEKZ+EdCYwx7EbpZdSiZc5goAuJT+/QXXT/Ls+fzc+eSy4Sz1Ic5t2BjLhmYZLdnBL3uIVceNSb8GzYPQx0+xy7g==
on_build_success: true
on_build_failure: true
on_build_status_changed: true
body: "type=stream&to=appveyor&subject={{projectName}} Build {{buildVersion}} {{status}}&content=Build {{buildVersion}} {{status}}{{#isPullRequest}} (PR #{{pullRequestId}}) {{/isPullRequest}}{{#failed}} :cross_mark:{{/failed}}{{#passed}} :heavy_check_mark:{{/passed}} {{buildUrl}}"