forked from flycheck/flycheck
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
62 lines (62 loc) · 2.14 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
# Use Python 3.5 for our tooling
language: python
python:
- "3.5"
sudo: false
matrix:
# Don’t wait for jobs that are allowed to fail
fast_finish: true
# Allow snapshot to fail
allow_failures:
- env: EMACS_VERSION=snapshot
cache:
- pip
- directories:
# Cache stable Emacs binaries
- "$HOME/emacs/"
# Cache Flycheck dependencies
- ".cask/"
# Cache Cask bootstrap dependencies
- "$HOME/.emacs.d/.cask"
env:
matrix:
- EMACS_VERSION=24.4
- EMACS_VERSION=24.5
- EMACS_VERSION=25.1
- EMACS_VERSION=snapshot
# A special job to build the manual
- BUILD_MANUAL=yes
# And another special job to lint our Python code
- LINT_PYTHON=yes
before_install:
- export PATH="$HOME/bin:$PATH"
- wget 'https://raw.githubusercontent.com/flycheck/emacs-travis/master/emacs-travis.mk'
- if [[ -n $EMACS_VERSION ]]; then make -f emacs-travis.mk install_emacs; fi
- if [[ -n $EMACS_VERSION ]]; then make -f emacs-travis.mk install_cask; fi
- if [[ -n $EMACS_VERSION ]]; then emacs --version; fi
install:
- if [[ -n $EMACS_VERSION ]]; then make init; fi
# Install requirements of documentation
- if [[ $BUILD_MANUAL == yes ]]; then pip install -r doc/requirements.txt; fi
# Install requirements for linting
- if [[ $LINT_PYTHON == yes ]]; then pip install -r maint/requirements.txt; fi
script:
# Check formatting on Emacs 25 (our formatting rules dont’ work on Emacs 24).
- if [[ $EMACS_VERSION == 25.* ]]; then make check; fi
# Compile and test
- if [[ -n $EMACS_VERSION ]]; then make compile; fi
- if [[ -n $EMACS_VERSION ]]; then make unit; fi
- if [[ -n $EMACS_VERSION ]]; then make specs; fi
# Run those integration tests that we can safely run on Travis CI
- if [[ -n $EMACS_VERSION ]]; then make LANGUAGE=emacs-lisp integ; fi
# Build and deploy the manual
- if [[ $BUILD_MANUAL == yes ]]; then make -C doc SPHINXOPTS=-n html; fi
# Lint our Python code
- if [[ $LINT_PYTHON == yes ]]; then make -C maint check; fi
notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/efdc5fd9433efa7c6b80
on_success: change
on_failure: always
on_start: never