reanimate/.azure/azure-linux-template.yml
David Himmelstrup 34aa5780ec
Replace 'here' dependency with the lightweight 'neat-interpolation' (#106)
Misc improvements:
 * Add tasty-rerun
 * Extend CI coverage
2020-07-12 13:27:01 +08:00

68 lines
2.3 KiB
YAML

jobs:
- job: ${{ parameters.name }}
timeoutInMinutes: 120
variables:
STACK_ROOT: $(Build.SourcesDirectory)/.stack-root
pool:
vmImage: ${{ parameters.vmImage }}
strategy:
matrix:
stack:
BUILD: stack
STACK_YAML: stack.yaml
ARGS: --pedantic
stack-no-hmatrix:
BUILD: stack
STACK_YAML: stack.yaml
ARGS: --flag reanimate:disable-hmatrix --flag reanimate:-test
stack-lts-15:
BUILD: stack
STACK_YAML: stack-lts-15.yaml
stack-lts-14:
BUILD: stack
STACK_YAML: stack-lts-14.yaml
stack-lts-13:
BUILD: stack
STACK_YAML: stack-lts-13.yaml
stack-lts-12:
BUILD: stack
STACK_YAML: stack-lts-12.yaml
stack-nightly:
BUILD: stack
ARGS: --resolver nightly --flag reanimate:-test
maxParallel: 6
steps:
- task: Cache@2
inputs:
key: ${{ parameters.name }} | ${{ parameters.vmImage }} | $(ARGS) | $(STACK_YAML) | stack-root | $(Agent.OS)
path: $(STACK_ROOT)
cacheHitVar: CACHE_RESTORED
displayName: Cache stack root
- script: |
set -o xtrace
#sudo add-apt-repository ppa:jonathonf/ffmpeg-4
sudo apt-get update
# sudo apt-get install libopenblas-dev libgfortran4
sudo apt-get install liblapack-dev libblas-dev
#sudo apt-get install ffmpeg
#sudo apt-get install texlive texlive-latex-base texlive-latex-extra texlive-fonts-extra texlive-science texlive-xetex texlive-latex-recommended texlive-lang-english texlive-lang-chinese
#sudo apt-get install povray
mkdir -p ~/.local/bin
curl -L https://get.haskellstack.org/stable/linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
export PATH=$HOME/.local/bin:$PATH
displayName: 'Setup'
- script: |
set -o xtrace
stack --install-ghc build $ARGS --only-dependencies
stack --install-ghc build $ARGS --test --flag reanimate:test --only-dependencies
displayName: 'Install dependencies'
- script: |
set -o xtrace
# stack ./examples/counter.hs check
stack test $ARGS --flag reanimate:test --test-arguments="-j2"
displayName: 'Build & Test'
- script: |
set -o xtrace
stack haddock --no-haddock-deps $ARGS
displayName: 'Build documentation'