-
Notifications
You must be signed in to change notification settings - Fork 66
/
appveyor.yml
95 lines (84 loc) · 4.09 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
87
88
89
90
91
92
93
94
95
# packcheck-0.4.2
# You can use any of the options supported by packcheck as environment
# variables here. See https://github.com/harendra-kumar/packcheck for all
# options and their explanation.
branches:
only:
- master
environment:
# ------------------------------------------------------------------------
# Global options, you can use these per build as well
# ------------------------------------------------------------------------
global:
# ------------------------------------------------------------------------
# Common options
# ------------------------------------------------------------------------
# GHC 9.2.7 onwards redundant constraint warnings are incompatible with
# older versions
GHC_OPTIONS: "-Werror"
CABAL_REINIT_CONFIG: "y"
LC_ALL: "C.UTF-8"
# ------------------------------------------------------------------------
# What to build
# ------------------------------------------------------------------------
# DISABLE_TEST: "y"
# DISABLE_BENCH: "y"
# DISABLE_DOCS: "y"
DISABLE_SDIST_BUILD: "y"
DISABLE_DIST_CHECKS: "y"
ENABLE_INSTALL: "y"
# ------------------------------------------------------------------------
# stack options
# ------------------------------------------------------------------------
# Note requiring a specific version of stack using STACKVER may fail due to
# github API limit while checking and upgrading/downgrading to the specific
# version.
# STACKVER: "1.6.5"
STACK_UPGRADE: "y"
# RESOLVER: "lts-18.27"
STACK_ROOT: "c:\\sr"
STACK_BUILD_OPTIONS: "--flag streamly-benchmarks:-opt"
STACK_YAML: "stack.yaml"
# ------------------------------------------------------------------------
# cabal options
# ------------------------------------------------------------------------
CABAL_CHECK_RELAX: "y"
# ------------------------------------------------------------------------
# Where to find the required tools
# ------------------------------------------------------------------------
PATH: "%PATH%;%APPDATA%\\local\\bin"
LOCAL_BIN: "%APPDATA%\\local\\bin"
# ------------------------------------------------------------------------
# Location of packcheck.sh (the shell script invoked to perform CI tests ).
# ------------------------------------------------------------------------
# You can either commit the packcheck.sh script at this path in your repo or
# you can use it by specifying the PACKCHECK_REPO_URL option below in which
# case it will be automatically copied from the packcheck repo to this path
# during CI tests. In any case it is finally invoked from this path.
PACKCHECK_LOCAL_PATH: "./packcheck.sh"
# If you have not committed packcheck.sh in your repo at PACKCHECK_LOCAL_PATH
# then it is automatically pulled from this URL.
PACKCHECK_GITHUB_URL: "https://raw.githubusercontent.com/composewell/packcheck"
PACKCHECK_GITHUB_COMMIT: "101c73b53473ddfb763d65058b80123991cfeb4f"
# Override the temp directory to avoid sed escaping issues
# See https://github.com/haskell/cabal/issues/5386
TMP: "c:\\tmp"
cache:
- "%STACK_ROOT%"
- "%LOCAL_BIN%"
- "%APPDATA%\\cabal"
- "%APPDATA%\\ghc"
# - "%LOCALAPPDATA%\\Programs\\stack"
clone_folder: "c:\\pkg"
build: off
before_test:
- if not exist %PACKCHECK_LOCAL_PATH% curl -sSkL -o%PACKCHECK_LOCAL_PATH% %PACKCHECK_GITHUB_URL%/%PACKCHECK_GITHUB_COMMIT%/packcheck.sh
- if not exist %LOCAL_BIN% mkdir %LOCAL_BIN%
- where stack.exe || curl -sSkL -ostack.zip http://www.stackage.org/stack/windows-x86_64 && 7z x stack.zip stack.exe && move stack.exe %LOCAL_BIN%
- if defined STACKVER (stack upgrade --binary-only --binary-version %STACKVER%) else (stack upgrade --binary-only || ver > nul)
- stack --version
test_script:
- stack setup > nul
- for /f "usebackq tokens=*" %%i in (`where 7z.exe`) do set PATH7Z=%%i\..
- for /f "usebackq tokens=*" %%i in (`where git.exe`) do set PATHGIT=%%i\..
- chcp 65001 && stack exec bash -- -c "chmod +x %PACKCHECK_LOCAL_PATH%; %PACKCHECK_LOCAL_PATH% stack PATH=/usr/bin:\"%PATH7Z%\":\"%PATHGIT%\""