aboutsummaryrefslogtreecommitdiff
path: root/.circleci/config.yml
diff options
context:
space:
mode:
Diffstat (limited to '.circleci/config.yml')
-rw-r--r--.circleci/config.yml130
1 files changed, 0 insertions, 130 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml
deleted file mode 100644
index 08c09a575..000000000
--- a/.circleci/config.yml
+++ /dev/null
@@ -1,130 +0,0 @@
-version: "2.1"
-
-env: &env
- environment:
- LC_ALL: "C.UTF-8"
- docker:
- - image: fpco/stack-build:lts-13
-
-#-----------------------------------------------------------------------------
-# Common utility stuff, not to be modified usually
-#-----------------------------------------------------------------------------
-
-preinstall: &preinstall
- run: |
- echo 'export PATH=/opt/cabal/bin:/opt/ghc/bin:$PATH' >> $BASH_ENV
- source $BASH_ENV
- apt-get update
-
-restore: &restore
- # Needs to happen after installing ca-certificates
- restore_cache:
- key: v1-{{ .Environment.CIRCLE_JOB }}-{{ .Branch }}
-
-save: &save
- save_cache:
- key: v1-{{ .Environment.CIRCLE_JOB }}-{{ .Branch }}
- paths:
- - ~/.cabal
- - ~/.ghc
- - ~/.local
- - ~/.stack
-
-commands:
- cabal_build:
- parameters:
- ghcversion:
- type: string
- steps:
- - checkout
- - *preinstall
- - *restore
- - run:
- name: install cabal
- command: apt-get install -y cabal-install-2.4
- - run:
- name: install ghc
- command: |
- apt-get install -y ghc-<< parameters.ghcversion >>
- - run:
- name: build and test project
- command: |
- set -e
- cabal v2-update
- TMPDIR=`mktemp -d -t circleci.XXXXXXX`
- cabal v2-sdist --output-dir=${TMPDIR}
- cd ${TMPDIR}
- tar xvzf *.tar.gz
- cd *
- cabal v2-build -w ghc-<< parameters.ghcversion >> -j2 --disable-optimization --dependencies-only --enable-tests --enable-benchmarks
- cabal v2-build -w ghc-<< parameters.ghcversion >> -j2 --disable-optimization --enable-tests --enable-benchmarks 2>build.log
- cat build.log
- # fail if we had warnings in local build
- # this is to work around the fact that cabal v2 doesn't allow
- # us to use -Werror for just local build:
- # https://github.com/haskell/cabal/issues/4247
- ! grep -q "[Ww]arning:" build.log
- cabal v2-test -w ghc-<< parameters.ghcversion >> -j2 --disable-optimization --enable-tests
- cabal v2-haddock -w ghc-<< parameters.ghcversion >>
- cabal check
- - *save
-
-#-----------------------------------------------------------------------------
-# Build matrix
-#-----------------------------------------------------------------------------
-
-jobs:
- cabal-ghc-8_8_1:
- <<: *env
- steps:
- - cabal_build:
- ghcversion: 8.8.1
-
- cabal-ghc-8_6_5:
- <<: *env
- steps:
- - cabal_build:
- ghcversion: 8.6.5
-
- cabal-ghc-8_4_4:
- <<: *env
- steps:
- - cabal_build:
- ghcversion: 8.4.4
-
- cabal-ghc-8_2_2:
- <<: *env
- steps:
- - cabal_build:
- ghcversion: 8.2.2
-
- cabal-ghc-8_0_2:
- <<: *env
- steps:
- - cabal_build:
- ghcversion: 8.0.2
-
- stack-ghc-8_6:
- <<: *env
- steps:
- - checkout
- - *preinstall
- - *restore
- - run: |
- set -e
- apt-get install -y ghc-8.6.5
- stack update
- stack test --system-ghc --fast --ghc-options="-Werror" .
- - *save
-
-workflows:
- version: "2.1"
- build:
- jobs:
- - cabal-ghc-8_6_5
- - cabal-ghc-8_4_4
- - cabal-ghc-8_2_2
- - cabal-ghc-8_0_2
- - stack-ghc-8_6
- # - cabal-ghc-8_8_1
-