git.iko.soy/typeable/servant
on master help sign in
Merge pull request #1136 from haskell-servant/travis-regenerate
f17a468Oleg Grenrus
.travis.yml+36−36
@@ -20,53 +20,53 @@ cache:
20 - $HOME/.cabal/store
20 - $HOME/.cabal/store
21
21
22before_cache:
22before_cache:
23− - rm -fv $HOME/.cabal/packages/hackage.haskell.org/build-reports.log
23+ - rm -fv $CABALHOME/packages/hackage.haskell.org/build-reports.log
24 # remove files that are regenerated by 'cabal update'
24 # remove files that are regenerated by 'cabal update'
25− - rm -fv $HOME/.cabal/packages/hackage.haskell.org/00-index.*
25+ - rm -fv $CABALHOME/packages/hackage.haskell.org/00-index.*
26− - rm -fv $HOME/.cabal/packages/hackage.haskell.org/*.json
26+ - rm -fv $CABALHOME/packages/hackage.haskell.org/*.json
27− - rm -fv $HOME/.cabal/packages/hackage.haskell.org/01-index.cache
27+ - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.cache
28− - rm -fv $HOME/.cabal/packages/hackage.haskell.org/01-index.tar
28+ - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.tar
29− - rm -fv $HOME/.cabal/packages/hackage.haskell.org/01-index.tar.idx
29+ - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.tar.idx
30
30
31− - rm -rfv $HOME/.cabal/packages/head.hackage
31+ - rm -rfv $CABALHOME/packages/head.hackage
32
32
33matrix:
33matrix:
34 include:
34 include:
35 - compiler: "ghc-8.6.3"
35 - compiler: "ghc-8.6.3"
36− # env: TEST=--disable-tests BENCH=--disable-benchmarks
36+ # env: FOO=bar
37 addons: {apt: {packages: [ghc-ppa-tools,cabal-install-2.4,ghc-8.6.3], sources: [hvr-ghc]}}
37 addons: {apt: {packages: [ghc-ppa-tools,cabal-install-2.4,ghc-8.6.3], sources: [hvr-ghc]}}
38 - compiler: "ghc-8.4.4"
38 - compiler: "ghc-8.4.4"
39− # env: TEST=--disable-tests BENCH=--disable-benchmarks
39+ # env: FOO=bar
40 addons: {apt: {packages: [ghc-ppa-tools,cabal-install-2.4,ghc-8.4.4], sources: [hvr-ghc]}}
40 addons: {apt: {packages: [ghc-ppa-tools,cabal-install-2.4,ghc-8.4.4], sources: [hvr-ghc]}}
41 - compiler: "ghc-8.2.2"
41 - compiler: "ghc-8.2.2"
42− # env: TEST=--disable-tests BENCH=--disable-benchmarks
42+ # env: FOO=bar
43 addons: {apt: {packages: [ghc-ppa-tools,cabal-install-2.4,ghc-8.2.2], sources: [hvr-ghc]}}
43 addons: {apt: {packages: [ghc-ppa-tools,cabal-install-2.4,ghc-8.2.2], sources: [hvr-ghc]}}
44 - compiler: "ghc-8.0.2"
44 - compiler: "ghc-8.0.2"
45− # env: TEST=--disable-tests BENCH=--disable-benchmarks
45+ # env: FOO=bar
46 addons: {apt: {packages: [ghc-ppa-tools,cabal-install-2.4,ghc-8.0.2], sources: [hvr-ghc]}}
46 addons: {apt: {packages: [ghc-ppa-tools,cabal-install-2.4,ghc-8.0.2], sources: [hvr-ghc]}}
47
47
48before_install:
48before_install:
49− - HC=${CC}
49+ - HC=/opt/ghc/bin/${CC}
50 - HCPKG=${HC/ghc/ghc-pkg}
50 - HCPKG=${HC/ghc/ghc-pkg}
51 - unset CC
51 - unset CC
52+ - CABAL=/opt/ghc/bin/cabal
53+ - CABALHOME=$HOME/.cabal
54+ - "export PATH=\"$CABALHOME/bin:$PATH\""
52 - ROOTDIR=$(pwd)
55 - ROOTDIR=$(pwd)
53− - mkdir -p $HOME/.local/bin
54− - "PATH=/opt/ghc/bin:/opt/ghc-ppa-tools/bin:$HOME/local/bin:$PATH"
55 - HCNUMVER=$(( $(${HC} --numeric-version|sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+).*/\1 * 10000 + \2 * 100 + \3/') ))
56 - HCNUMVER=$(( $(${HC} --numeric-version|sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+).*/\1 * 10000 + \2 * 100 + \3/') ))
56 - echo $HCNUMVER
57 - echo $HCNUMVER
57
58
58install:
59install:
59− - cabal --version
60+ - ${CABAL} --version
60 - echo "$(${HC} --version) [$(${HC} --print-project-git-commit-id 2> /dev/null || echo '?')]"
61 - echo "$(${HC} --version) [$(${HC} --print-project-git-commit-id 2> /dev/null || echo '?')]"
62+ - TEST=--enable-tests
61− - BENCH=${BENCH---enable-benchmarks}
63+ - BENCH=--enable-benchmarks
62− - TEST=${TEST---enable-tests}
63− - UNCONSTRAINED=${UNCONSTRAINED-true}
64 - GHCHEAD=${GHCHEAD-false}
64 - GHCHEAD=${GHCHEAD-false}
65− - travis_retry cabal update -v
65+ - travis_retry ${CABAL} update -v
66− - "sed -i.bak 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config"
66+ - "sed -i.bak 's/^jobs:/-- jobs:/' $CABALHOME/config"
67 - rm -fv cabal.project cabal.project.local
67 - rm -fv cabal.project cabal.project.local
68− - "sed -i.bak 's/-- ghc-options:.*/ghc-options: -j2/' ${HOME}/.cabal/config"
68+ - "sed -i.bak 's/-- ghc-options:.*/ghc-options: -j2/' $CABALHOME/config"
69− - grep -Ev -- '^\s*--' ${HOME}/.cabal/config | grep -Ev '^\s*$'
69+ - grep -Ev -- '^\s*--' $CABALHOME/config | grep -Ev '^\s*$'
70 - rm -f cabal.project
70 - rm -f cabal.project
71 - touch cabal.project
71 - touch cabal.project
72 - "printf 'packages: \"servant\"\\n' >> cabal.project"
72 - "printf 'packages: \"servant\"\\n' >> cabal.project"
@@ -92,7 +92,6 @@ install:
92 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"doc/cookbook/structuring-apis\"\\n' >> cabal.project ; fi"
92 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"doc/cookbook/structuring-apis\"\\n' >> cabal.project ; fi"
93 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"doc/cookbook/using-custom-monad\"\\n' >> cabal.project ; fi"
93 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"doc/cookbook/using-custom-monad\"\\n' >> cabal.project ; fi"
94 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"doc/cookbook/using-free-client\"\\n' >> cabal.project ; fi"
94 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"doc/cookbook/using-free-client\"\\n' >> cabal.project ; fi"
95− - "printf 'write-ghc-environment-files: always\\n' >> cabal.project"
96 - "echo 'constraints: foundation >=0.0.14' >> cabal.project"
95 - "echo 'constraints: foundation >=0.0.14' >> cabal.project"
97 - "echo 'constraints: memory <0.14.12 || >0.14.12' >> cabal.project"
96 - "echo 'constraints: memory <0.14.12 || >0.14.12' >> cabal.project"
98 - "echo 'allow-newer: servant-js:base' >> cabal.project"
97 - "echo 'allow-newer: servant-js:base' >> cabal.project"
@@ -112,6 +111,7 @@ install:
112 - "echo 'allow-newer: servant-quickcheck:http-client' >> cabal.project"
111 - "echo 'allow-newer: servant-quickcheck:http-client' >> cabal.project"
113 - "echo 'reorder-goals: True' >> cabal.project"
112 - "echo 'reorder-goals: True' >> cabal.project"
114 - "echo 'optimization: False' >> cabal.project "
113 - "echo 'optimization: False' >> cabal.project "
114+ - "printf 'write-ghc-environment-files: always\\n' >> cabal.project"
115 - touch cabal.project.local
115 - touch cabal.project.local
116 - "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/-[^-]*$//' | grep -vE -- '^(cookbook-basic-auth|cookbook-basic-streaming|cookbook-curl-mock|cookbook-db-postgres-pool|cookbook-db-sqlite-simple|cookbook-file-upload|cookbook-generic|cookbook-https|cookbook-structuring-apis|cookbook-testing|cookbook-using-custom-monad|cookbook-using-free-client|servant|servant-client|servant-client-core|servant-conduit|servant-docs|servant-foreign|servant-http-streams|servant-machines|servant-pipes|servant-server|tutorial)$' | sed 's/^/constraints: /' | sed 's/$/ installed/' >> cabal.project.local; done"
116 - "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/-[^-]*$//' | grep -vE -- '^(cookbook-basic-auth|cookbook-basic-streaming|cookbook-curl-mock|cookbook-db-postgres-pool|cookbook-db-sqlite-simple|cookbook-file-upload|cookbook-generic|cookbook-https|cookbook-structuring-apis|cookbook-testing|cookbook-using-custom-monad|cookbook-using-free-client|servant|servant-client|servant-client-core|servant-conduit|servant-docs|servant-foreign|servant-http-streams|servant-machines|servant-pipes|servant-server|tutorial)$' | sed 's/^/constraints: /' | sed 's/$/ installed/' >> cabal.project.local; done"
117 - cat cabal.project || true
117 - cat cabal.project || true
@@ -147,10 +147,10 @@ install:
147# any command which exits with a non-zero exit code causes the build to fail.
147# any command which exits with a non-zero exit code causes the build to fail.
148script:
148script:
149 # test that source-distributions can be generated
149 # test that source-distributions can be generated
150− - echo Packaging... && echo -en 'travis_fold:start:sdist\\r'
150+ - "echo Packaging... && echo -en 'travis_fold:start:sdist\\\\r'"
151− - cabal new-sdist all
151+ - ${CABAL} new-sdist all
152− - echo -en 'travis_fold:end:sdist\\r'
152+ - "echo -en 'travis_fold:end:sdist\\\\r'"
153− - echo Unpacking... && echo -en 'travis_fold:start:unpack\\r'
153+ - "echo Unpacking... && echo -en 'travis_fold:start:unpack\\\\r'"
154 - mv dist-newstyle/sdist/*.tar.gz ${DISTDIR}/
154 - mv dist-newstyle/sdist/*.tar.gz ${DISTDIR}/
155 - cd ${DISTDIR} || false
155 - cd ${DISTDIR} || false
156 - find . -maxdepth 1 -name '*.tar.gz' -exec tar -xvf '{}' \;
156 - find . -maxdepth 1 -name '*.tar.gz' -exec tar -xvf '{}' \;
@@ -179,7 +179,6 @@ script:
179 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"cookbook-structuring-apis-*/*.cabal\"\\n' >> cabal.project ; fi"
179 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"cookbook-structuring-apis-*/*.cabal\"\\n' >> cabal.project ; fi"
180 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"cookbook-using-custom-monad-*/*.cabal\"\\n' >> cabal.project ; fi"
180 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"cookbook-using-custom-monad-*/*.cabal\"\\n' >> cabal.project ; fi"
181 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"cookbook-using-free-client-*/*.cabal\"\\n' >> cabal.project ; fi"
181 - "if [ $HCNUMVER -eq 80404 ] || [ $HCNUMVER -eq 80603 ] ; then printf 'packages: \"cookbook-using-free-client-*/*.cabal\"\\n' >> cabal.project ; fi"
182− - "printf 'write-ghc-environment-files: always\\n' >> cabal.project"
183 - "echo 'constraints: foundation >=0.0.14' >> cabal.project"
182 - "echo 'constraints: foundation >=0.0.14' >> cabal.project"
184 - "echo 'constraints: memory <0.14.12 || >0.14.12' >> cabal.project"
183 - "echo 'constraints: memory <0.14.12 || >0.14.12' >> cabal.project"
185 - "echo 'allow-newer: servant-js:base' >> cabal.project"
184 - "echo 'allow-newer: servant-js:base' >> cabal.project"
@@ -199,22 +198,23 @@ script:
199 - "echo 'allow-newer: servant-quickcheck:http-client' >> cabal.project"
198 - "echo 'allow-newer: servant-quickcheck:http-client' >> cabal.project"
200 - "echo 'reorder-goals: True' >> cabal.project"
199 - "echo 'reorder-goals: True' >> cabal.project"
201 - "echo 'optimization: False' >> cabal.project "
200 - "echo 'optimization: False' >> cabal.project "
201+ - "printf 'write-ghc-environment-files: always\\n' >> cabal.project"
202 - touch cabal.project.local
202 - touch cabal.project.local
203 - "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/-[^-]*$//' | grep -vE -- '^(cookbook-basic-auth|cookbook-basic-streaming|cookbook-curl-mock|cookbook-db-postgres-pool|cookbook-db-sqlite-simple|cookbook-file-upload|cookbook-generic|cookbook-https|cookbook-structuring-apis|cookbook-testing|cookbook-using-custom-monad|cookbook-using-free-client|servant|servant-client|servant-client-core|servant-conduit|servant-docs|servant-foreign|servant-http-streams|servant-machines|servant-pipes|servant-server|tutorial)$' | sed 's/^/constraints: /' | sed 's/$/ installed/' >> cabal.project.local; done"
203 - "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/-[^-]*$//' | grep -vE -- '^(cookbook-basic-auth|cookbook-basic-streaming|cookbook-curl-mock|cookbook-db-postgres-pool|cookbook-db-sqlite-simple|cookbook-file-upload|cookbook-generic|cookbook-https|cookbook-structuring-apis|cookbook-testing|cookbook-using-custom-monad|cookbook-using-free-client|servant|servant-client|servant-client-core|servant-conduit|servant-docs|servant-foreign|servant-http-streams|servant-machines|servant-pipes|servant-server|tutorial)$' | sed 's/^/constraints: /' | sed 's/$/ installed/' >> cabal.project.local; done"
204 - cat cabal.project || true
204 - cat cabal.project || true
205 - cat cabal.project.local || true
205 - cat cabal.project.local || true
206− - echo -en 'travis_fold:end:unpack\\r'
206+ - "echo -en 'travis_fold:end:unpack\\\\r'"
207
207
208− - echo Building with tests and benchmarks... && echo -en 'travis_fold:start:build-everything\\r'
208+ - "echo Building with tests and benchmarks... && echo -en 'travis_fold:start:build-everything\\\\r'"
209 # build & run tests, build benchmarks
209 # build & run tests, build benchmarks
210− - cabal new-build -w ${HC} ${TEST} ${BENCH} all
210+ - ${CABAL} new-build -w ${HC} ${TEST} ${BENCH} all
211− - echo -en 'travis_fold:end:build-everything\\r'
211+ - "echo -en 'travis_fold:end:build-everything\\\\r'"
212− - if [ "x$TEST" = "x--enable-tests" ]; then cabal new-test -w ${HC} ${TEST} ${BENCH} all; fi
212+ - if [ "x$TEST" = "x--enable-tests" ]; then ${CABAL} new-test -w ${HC} ${TEST} ${BENCH} all; fi
213
213
214− - echo Haddock... && echo -en 'travis_fold:start:haddock\\r'
214+ - "echo Haddock... && echo -en 'travis_fold:start:haddock\\\\r'"
215 # haddock
215 # haddock
216− - cabal new-haddock -w ${HC} ${TEST} ${BENCH} all
216+ - ${CABAL} new-haddock -w ${HC} ${TEST} ${BENCH} all
217
217
218− - echo -en 'travis_fold:end:haddock\\r'
218+ - "echo -en 'travis_fold:end:haddock\\\\r'"
219# REGENDATA ["--config=cabal.haskell-ci","--output=.travis.yml","cabal.project"]
219# REGENDATA ["--config=cabal.haskell-ci","--output=.travis.yml","cabal.project"]
220# EOF
220# EOF