X-Git-Url: http://git.lukelau.me/?a=blobdiff_plain;f=.travis.yml;h=8a6fd8040dc237f0f5f6d54de70af8412d7ee6c5;hb=d6b41645f54661b5b317ab36641c4243ecee3334;hp=8b1f0833bfd547a4d16de0a446165c8a0f9c386f;hpb=fa801802a9f0c5c034b6a55de9c5d65016a795d0;p=lsp-test.git diff --git a/.travis.yml b/.travis.yml index 8b1f083..8a6fd80 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,13 @@ -language: haskell -dist: xenial +language: c sudo: false +os: +- linux +- osx +- windows + +dist: xenial + ghc: - 8.6.5 cabal: '2.4' @@ -9,35 +15,59 @@ cabal: '2.4' cache: directories: - "$HOME/.cabal" + - "$HOME/.ghc" - "$HOME/haskell-ide-engine/dist-newstyle" - "dist-newstyle" - timeout: 1000 addons: apt: + sources: + - sourceline: ppa:hvr/ghc packages: - npm + - ghc-8.6.5 + - cabal-install-2.4 + homebrew: + packages: + - ghc + - cabal-install + - npm + update: true before_install: -- mkdir -p haskell-ide-engine -- cd $HOME/haskell-ide-engine +- | + if [[ "$TRAVIS_OS_NAME" == "windows" ]]; then + choco install ghc cabal nodejs + /C/ProgramData/chocolatey/bin/RefreshEnv.cmd + export PATH=/C/ProgramData/chocolatey/lib/ghc/tools/ghc-8.6.5/bin:${PATH} + /C/ProgramData/chocolatey/bin/RefreshEnv.cmd + fi +# these are taken from the haskell language setup +- export PATH=/opt/ghc/8.6.5/bin:${PATH} +- export PATH=/opt/cabal/2.4/bin:${PATH} +- export PATH=$HOME/.cabal/bin:${PATH} +- ghc --version +- mkdir -p $HOME/haskell-ide-engine +- pushd $HOME/haskell-ide-engine - git init - git remote add origin https://github.com/haskell/haskell-ide-engine.git - git pull origin master - git checkout abdb097f39e135deaf321a604c95f16cbda32678 - git submodule update --init -- cabal v2-install hie -j2 -- cabal v2-run -j2 hoogle generate -- cabal v2-install —lib Cabal -- cd $TRAVIS_BUILD_DIR +- cabal v2-update +- cabal v2-install hie -j2 --overwrite-policy=always +- cabal v2-install hoogle -j2 --overwrite-policy=always +- hoogle generate +- popd +# needs to be old-install for cabal-helper to find it +- cabal install Cabal --constraint "Cabal == 2.4.1.0" - npm update - npm i -g javascript-typescript-langserver -- export PATH=$HOME/.cabal/bin:$PATH install: - cabal v2-build script: - # - cabal v2-test- +# until cabal v2-test supports streaming results - cabal v2-run lsp-test:test:tests deploy: @@ -57,4 +87,3 @@ deploy: tags: true branch: master repo: bubba/lsp-test -