ci: Use custom images to cover GHC 7.6-8.0

This commit is contained in:
Daniel Gröber
2017-03-01 03:39:23 +01:00
parent f4935b6074
commit fdd8ffb390
2 changed files with 124 additions and 16 deletions

View File

@@ -1,20 +1,22 @@
stages:
- build
before_script:
- cabal update
- mkdir -p ../ghc-mod.sdist
- ls -l ..
- touch ChangeLog
- cabal sdist --output-directory=../ghc-mod.sdist
- rm -f cabal.sandbox.config && cabal sandbox init
- cp cabal.sandbox.config ../ghc-mod.sdist
- cd ../ghc-mod.sdist
.before_script_template: &common_before_script
before_script:
- ls -l ..
- apt-get update && apt-get install alex happy
- mkdir -p ../ghc-mod.sdist-$CI_PIPELINE_ID
- touch ChangeLog
- cabal update
- cabal sdist --output-directory=../ghc-mod.sdist-$CI_PIPELINE_ID
- cd ../ghc-mod.sdist-$CI_PIPELINE_ID
after_script:
- rm -rf "$CI_PROJECT_DIR"/../ghc-mod.sdist
- cd "$CI_PROJECT_DIR"
- ghc-pkg list | tee packages.list
- rm -rf "$CI_PROJECT_DIR"/../ghc-mod.sdist-$CI_PIPELINE_ID
.job_template: &common_script
.script_template: &common_script
script:
- echo $PWD
- ghc-pkg list
@@ -23,24 +25,50 @@ after_script:
- cabal --version
- cabal configure --enable-tests
- cabal build -j2
- ghc-pkg list
- which cabal
- cabal --version
- ./dist/build/spec/spec
- ./dist/build/doctest/doctest
- cabal haddock
job-ghc801:
image: haskell:8.0.1
.artifacts_template: &common_artifacts
artifacts:
paths:
- packages.list
- ~/.cabal/logs
when: always
job-ghc800:
image: registry.gitlab.com/dxld/ghc-mod:ghc8.0.2-cabal-install1.24.0.2
stage: build
<<: *common_before_script
<<: *common_script
<<: *common_artifacts
job-ghc710:
image: haskell:7.10.3
image: registry.gitlab.com/dxld/ghc-mod:ghc7.10.3-cabal-install1.22.8.0
stage: build
<<: *common_before_script
<<: *common_script
<<: *common_artifacts
job-ghc708:
image: haskell:7.8.4
image: registry.gitlab.com/dxld/ghc-mod:ghc7.8.4-cabal-install1.18.1.0
stage: build
<<: *common_before_script
<<: *common_script
<<: *common_artifacts
job-ghc706:
image: registry.gitlab.com/dxld/ghc-mod:ghc7.6.3-cabal-install1.18.1.0
stage: build
before_script:
- cabal update
- cabal install alex
- cabal install happy
- cp ~/.cabal/bin/{alex,happy} /usr/local/bin
- rm -rf ~/.cabal/{bin,lib,libexec,setup-exe-cache,share,store} ~/.ghc
allow_failure: true
<<: *common_script
<<: *common_artifacts