Skip to content

Commit

Permalink
Add an appveyor CI
Browse files Browse the repository at this point in the history
  • Loading branch information
adithyaov committed Oct 26, 2024
1 parent 18c0906 commit fa350be
Show file tree
Hide file tree
Showing 2 changed files with 96 additions and 0 deletions.
1 change: 1 addition & 0 deletions .packcheck.ignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
appveyor.yml
.github/workflows/haskell.yml
.gitignore
.packcheck.ignore
Expand Down
95 changes: 95 additions & 0 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,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%\""

0 comments on commit fa350be

Please sign in to comment.