ghcide/.azure/linux-stack.yml
Javier Neira b60a64f0d2
Enable test suite for windows, ghc-8.8 and ghc-8.10 (#855)
* Remove -f-external-interpreter for 8.10

* Rerun tests in the first step

* Rerun tests in the first step for linux

* Wait for register caps

* Remove -f-external-interpreter for 8.10

* Rerun tests in the first step

* Rerun tests in the first step for linux

* Wait for register caps

* Refactor ignoreInWindows* functions

* Ignore test for win and ghc-8.8

* Enable all win jobs (again)

* Ignore in win the known broken in nix

* Ignore addDependentFile for ghc-8.8

* Ignore findsTHnewNameConstructor for ghc-8.8

* Use --rerun-update in first test execution

To make sure it creates/overwrites .tasty-rerun-log
2020-10-09 21:00:21 +01:00

53 lines
2.0 KiB
YAML

jobs:
- job: ghcide_stack_linux
timeoutInMinutes: 60
pool:
vmImage: 'ubuntu-latest'
strategy:
matrix:
stack_810:
STACK_YAML: "stack810.yaml"
stack_88:
STACK_YAML: "stack88.yaml"
stack_86:
STACK_YAML: "stack.yaml"
stack_ghc_lib_88:
STACK_YAML: "stack-ghc-lib.yaml"
variables:
STACK_ROOT: $(Pipeline.Workspace)/.stack
steps:
- checkout: self
- task: Cache@2
inputs:
key: stack-root-cache | $(Agent.OS) | $(Build.SourcesDirectory)/$(STACK_YAML) | $(Build.SourcesDirectory)/ghcide.cabal
path: $(STACK_ROOT)
cacheHitVar: STACK_ROOT_CACHE_RESTORED
displayName: "Cache stack root"
- task: Cache@2
inputs:
key: stack-work-cache | $(Agent.OS) | $(Build.SourcesDirectory)/$(STACK_YAML) | $(Build.SourcesDirectory)/ghcide.cabal
path: .stack-work
cacheHitVar: STACK_WORK_CACHE_RESTORED
displayName: "Cache stack work"
- bash: |
./fmt.sh
displayName: "HLint via ./fmt.sh"
- bash: |
sudo add-apt-repository ppa:hvr/ghc
sudo apt-get update
sudo apt-get install -y g++ gcc libc6-dev libffi-dev libgmp-dev make zlib1g-dev cabal-install-3.2
if ! which stack >/dev/null 2>&1; then
curl -sSL https://get.haskellstack.org/ | sh
fi
mkdir -p $STACK_ROOT
displayName: 'Install Stack'
- bash: stack setup --stack-yaml=$STACK_YAML
displayName: 'stack setup'
- bash: stack build --test --only-dependencies --stack-yaml=$STACK_YAML
displayName: 'stack build --test --only-dependencies'
- bash: |
export PATH=/opt/cabal/bin:$PATH
stack test --ghc-options=-Werror --stack-yaml=$STACK_YAML --ta "--rerun-update" || stack test --ghc-options=-Werror --stack-yaml=$STACK_YAML --ta "--rerun" || LSP_TEST_LOG_COLOR=0 LSP_TEST_LOG_MESSAGES=true LSP_TEST_LOG_STDERR=true stack test --ghc-options=-Werror --stack-yaml=$STACK_YAML --ta "--rerun"
# ghcide stack tests are flaky, see https://github.com/digital-asset/daml/issues/2606.
displayName: 'stack test --ghc-options=-Werror'