1# Pull in python for access to pip for hererocks
2language: python
3
4sudo: false
5
6branches:
7    only:
8        - master
9        - next
10        - 1.2.x
11        - 1.1.x
12        - 1.0.x
13
14env:
15    global:
16        - LUAROCKS=2.4.2
17    matrix:
18        - LPEG=1.0.1-1 LUA="luajit 2.1"
19        - LPEG=1.0.1-1 LUA="luajit 2.0"
20        - LPEG=1.0.1-1 LUA="lua 5.3"
21        - LPEG=1.0.1-1 LUA="lua 5.2"
22        - LPEG=1.0.1-1 LUA="lua 5.1"
23        - LPEG=0.12.2-1 LUA="luajit 2.1"
24        - LPEG=0.12.2-1 LUA="luajit 2.0"
25        - LPEG=0.12.2-1 LUA="lua 5.3"
26        - LPEG=0.12.2-1 LUA="lua 5.2"
27        - LPEG=0.12.2-1 LUA="lua 5.1"
28        - LPEG=0.10.2-1 LUA="luajit 2.0"
29        - LPEG=0.10.2-1 LUA="lua 5.2"
30        - LPEG=0.10.2-1 LUA="lua 5.1"
31        - LPEG=0.9-1 LUA="luajit 2.0"
32        - LPEG=0.9-1 LUA="lua 5.1"
33        - LPEG=0.8.1-1 LUA="luajit 2.0"
34        - LPEG=0.8.1-1 LUA="lua 5.1"
35        - LPEG=0.7-3 LUA="luajit 2.0"
36        - LPEG=0.7-3 LUA="lua 5.1"
37
38branches:
39    only:
40        - master
41        - /^feature[/]/
42
43before_install:
44    - pip install hererocks
45    - hererocks here -r $LUAROCKS --$LUA
46    - export PATH=$(pwd)/here/bin:$PATH
47    - luarocks install luacov
48    - luarocks install lunitx
49    - luarocks install luafilesystem
50    - luarocks install lpeg $LPEG
51
52script:
53    - make LUA_BIN=lua LUNIT_BIN=lunit.sh LUA_INIT="require('luarocks.loader');require('luacov')" check
54
55after_success:
56    # Rework the stats file and generate
57    - sed -e "s|../lua/|lua/|" < tests/luacov.stats.out > luacov.stats.out
58    - luacov
59    - bash <(curl -s https://codecov.io/bash)
60
61notifications:
62    email:
63        on_success: change
64        on_failure: always
65