forked from purescript/spago
-
Notifications
You must be signed in to change notification settings - Fork 0
/
appveyor.yml
70 lines (62 loc) · 2.43 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
version: 1.0.{build}
branches:
only:
- master
environment:
STACK_ROOT: C:\sr
STACK_VERSION: 2.5.1
nodejs_version: "14"
matrix:
- STACK_YAML: stack.yaml
cache:
- '%STACK_ROOT% -> %STACK_YAML%, appveyor.yml'
- '.stack-work -> %STACK_YAML%, appveyor.yml'
install:
- choco install -y make
# http://help.appveyor.com/discussions/problems/6312-curl-command-not-found
- set PATH=C:\Program Files\Git\mingw64\bin;%PATH%
- curl --silent --show-error --output stack.zip --location "https://github.com/commercialhaskell/stack/releases/download/v%STACK_VERSION%/stack-%STACK_VERSION%-windows-x86_64.zip"
- 7z x stack.zip stack.exe
- stack setup > nul
- ps: Install-Product node $env:nodejs_version
- npm install -g bower@1.8.8 esbuild@0.14.28
- mkdir ps-0.14
- mkdir ps-0.15
- ps: |
$releases = "https://api.github.com/repos/purescript/purescript/releases"
$tag = "v0.14.0"
$download = "https://github.com/purescript/purescript/releases/download/$tag/win64.tar.gz"
Invoke-WebRequest $download -Out ps-0.14\purescript.tar.gz
$tag = "v0.15.0"
$download = "https://github.com/purescript/purescript/releases/download/$tag/win64.tar.gz"
Invoke-WebRequest $download -Out ps-0.15\purescript.tar.gz
- tar -xvf ps-0.14\purescript.tar.gz -C ps-0.14
- chmod a+x ps-0.14\purescript
- tar -xvf ps-0.15\purescript.tar.gz -C ps-0.15
- chmod a+x ps-0.15\purescript
build_script:
- make
- stack build
- stack install --local-bin-path bin
test_script:
# We run the Windows CI with Japanese encoding,
# so we can figure out any encoding problems
# https://en.wikipedia.org/wiki/Code_page_932_(Microsoft_Windows)
- ps: Set-WinSystemLocale ja-JP
- ps: Start-Sleep -s 5
- ps: Restart-Computer
- ps: Start-Sleep -s 5
- cmd: set ORIGINAL_PATH=%PATH%
- cmd: set XDG_CACHE_HOME=C:\cache
- cmd: set PATH=C:\projects\spago\bin;C:\projects\spago\ps-0.15\purescript;%ORIGINAL_PATH%
- cmd: git config --global core.longpaths true
- cmd: stack test
# We install psa and rerun the tests that exercise it
- cmd: npm install -g purescript-psa
- cmd: stack test --ta "--match \"/Spago/spago run\""
- cmd: npm uninstall -g purescript-psa
# We rerun the same tests on PureScript 0.14.0
- cmd: set PATH=C:\projects\spago\bin;C:\projects\spago\ps-0.14\purescript;%ORIGINAL_PATH%
- cmd: stack test
- cmd: npm install -g purescript-psa
- cmd: stack test --ta "--match \"/Spago/spago run\""