forked from haskell/cabal
-
Notifications
You must be signed in to change notification settings - Fork 0
/
appveyor.yml
63 lines (54 loc) · 2.17 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
# Read https://hub.zhox.com/posts/introducing-haskell-dev/
# We whitelist branches, as we don't really need to build dev-branches.
# Remember to add release branches, both here and to .travis.yml.
branches:
only:
- master
- "3.0"
- "2.4"
- "2.2"
- "2.0"
- "1.24"
- "1.22"
- "1.20"
- "1.18"
# Do not build feature branch with open Pull Requests
# prevents PR double builds as branch
skip_branch_with_pr: true
install:
# Using '-y' and 'refreshenv' as a workaround to:
# https://github.com/haskell/cabal/issues/3687
- choco source add -n mistuke -s https://www.myget.org/F/mistuke/api/v2
- choco install -y cabal --version 2.4.1.0
- choco install -y ghc --version 8.6.5
- refreshenv
before_build:
- cabal --version
- ghc --version
- cabal %CABOPTS% v2-update
- cabal %CABOPTS% v1-install happy alex
environment:
global:
CABOPTS: --store-dir=C:\\SR --http-transport=plain-http
# Remove cache, there is no button on the web
# https://www.appveyor.com/docs/build-cache/#skipping-cache-operations-for-specific-build
APPVEYOR_CACHE_SKIP_RESTORE: true
clone_folder: "c:\\WORK"
cache:
- dist-newstyle
- "C:\\sr"
build_script:
- cabal %CABOPTS% v2-configure --enable-tests
- appveyor-retry cabal %CABOPTS% v2-build lib:Cabal --only-dependencies
- cabal %CABOPTS% v2-build lib:Cabal
- appveyor-retry cabal %CABOPTS% v2-build Cabal-tests:tests --only-dependencies
- cabal %CABOPTS% v2-test Cabal-tests
- appveyor-retry cabal %CABOPTS% v2-build exe:cabal exe:cabal-tests --only-dependencies
- cabal %CABOPTS% v2-build exe:cabal
- cabal %CABOPTS% v2-run cabal-testsuite:cabal-tests -- -j3 --with-cabal=dist-newstyle\build\x86_64-windows\ghc-8.6.5\cabal-install-3.5.0.0\x\cabal\build\cabal\cabal.exe
- appveyor-retry cabal %CABOPTS% v2-build cabal-install:tests --only-dependencies
- cd cabal-install
- cabal %CABOPTS% v2-run cabal-install:memory-usage-tests
- cabal %CABOPTS% v2-run cabal-install:long-tests -- --pattern "! (/FileMonitor/ || /VCS/ || /Get/)"
- cabal %CABOPTS% v2-run cabal-install:integration-tests2
- cabal %CABOPTS% v2-run cabal-install:unit-tests -- --pattern "! (/FileMonitor/ || /VCS/ || /Get/)"