forked from leanprover-community/mathlib3
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
96 lines (86 loc) · 3.7 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
language: c
sudo: false
os:
- linux
branches:
only:
- master
# except:
# - /^lean-.*$/
env:
global:
- secure: "HxnRtl6pMc+nbszQgDgvMuroMG5AuviULPb0MxPfEIZqYSwKALgc0ILXc89kJyf9rFfpsUdKGmtrGOytzXIp8Yuxvp+fnk/rtuuRyMLeWA0sJ75/Jn+l0BKVid6LNwl7bA4aMOSkjL85kaxU2e5HtlROUkiAgmdAcV10BoK7Vh7yC/S4Zl3kzyCQd8AGSxk0AbeQrb9vK7T1+gWVkEjUFtUsFJ3q5SGrO/j3825qLoRnYj/bKUgtYExQNKjTnTYMbeok+mKJEO1VbLeTk1ri8bLyO2x25lhGImaJSgdPOzuH905ALrf+EHkKm/FYvy5w+zERiuidwwFK5OqVOVWsD5W0G5rYKmDKpzSd39FNnrvb2Tzl2kCin70j6SDOXyZ+4k/iGJpBnOtx3+Ez4gsBDWLIba1c5EXvzhvPoycddgSLBY2LNz4EJI+YqbBTBxG7dVr4NmKKjPowFerVMLM10SgkH9ZZjbAVMxejUJTzp/4gxTanlWm/xds5uC0E0mraLY1H1yzGtwij/lVJN8RGbuhvW9jluLYQzfN7Hb/MReBXTKwdVo5SnsZzv9GEM56IsQXgIhzRoHAuDHd8rS1rfXGaOVfsbYK7pBjtx9j+Pq3BNSPlIL5u4j2JXH6QVJSNaK1npCq81S21dIBfYTP49ft28bhgVE0czkD7kl3fCCk="
cache:
directories:
- $TRAVIS_BUILD_DIR/test/
- $TRAVIS_BUILD_DIR/src/
- $HOME/.elan
install:
- |
if [ ! -d "$HOME/.elan/toolchains/" ]; then
curl https://raw.githubusercontent.com/Kha/elan/master/elan-init.sh -sSf | sh -s -- --default-toolchain none -y
fi
- source ~/.elan/env
- mkdir $HOME/scripts || echo ""
- export PATH="$HOME/scripts:$PATH"
- export OLEAN_RS=https://github.com/cipher1024/olean-rs/releases
- export latest=$(curl -sSf "$OLEAN_RS/latest" | cut -d'"' -f2 | awk -F/ '{print $NF}')
- curl -sSfL "$OLEAN_RS/download/$latest/olean-rs-linux" -o "$HOME/scripts/olean-rs"
- chmod +x $HOME/scripts/olean-rs
- cp travis_long.sh $HOME/scripts/travis_long
- chmod +x $HOME/scripts/travis_long
- (git status | grep -e "Changes not staged for commit:"); RESULT=$?
- if [ $RESULT -eq 0 ]; then git checkout -f HEAD ; fi
- git clean -d -f -q
- ./purge_olean.sh
- rm mathlib.txt || true
- export LEAN_VERSION=lean-`lean --run scripts/lean_version.lean`
jobs:
include:
- stage: Pre-build-1
if: type != cron
env: TASK="check Lean proofs"
script:
- travis_long "timeout 2400 leanpkg test" | python scripts/detect_errors.py
- stage: Pre-build-1
env: TASK="check Lean proofs" LEAN="nightly"
if: type = cron
script:
- elan toolchain install leanprover-community/lean:nightly
- elan override set leanprover-community/lean:nightly
- find . -name *.olean -delete
- travis_long "timeout 2400 leanpkg test" | python scripts/detect_errors.py
- stage: Pre-build-2
if: type != cron
env: TASK="check Lean proofs"
script:
- travis_long "timeout 2400 leanpkg test" | python scripts/detect_errors.py
- stage: Pre-build-2
env: TASK="check Lean proofs" LEAN="nightly"
if: type = cron
script:
- elan toolchain install leanprover-community/lean:nightly
- elan override set leanprover-community/lean:nightly
- travis_long "timeout 2400 leanpkg test" | python scripts/detect_errors.py
- stage: Test
env: TASK="check Lean proofs"
if: type != cron
script:
- travis_long "leanpkg test"
- lean --recursive --export=mathlib.txt src/
- travis_long "leanchecker mathlib.txt"
- sh scripts/deploy_nightly.sh
- stage: Test
env: TASK="check Lean proofs" LEAN="nightly"
if: type = cron
script:
- elan toolchain install leanprover-community/lean:nightly
- elan override set leanprover-community/lean:nightly
- travis_long "leanpkg test"
- lean --recursive --export=mathlib.txt src/
- travis_long "leanchecker mathlib.txt"
# allow_failures:
# - env: TASK="check Lean proofs" LEAN="nightly"
notifications:
webhooks:
- https://leanprover.zulipchat.com/api/v1/external/travis?stream=travis&topic=build-status&api_key=SwF1QzwUWol76dCxsYgwHbI6giN3cxGn