forked from facebook/hhvm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
119 lines (108 loc) · 5.31 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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
language: cpp
# This doesn't work - travis defaults to plain gcc if unknown
# http://github.com/travis-ci/travis-ci/issues/979
# http://llvm.org/apt/
compiler:
- gcc
# - gcc-4.8
# - clang-3.4
# - clang-3.5
services:
- memcached
# Commands before installing prerequisites
before_script:
# we can't compile with this system version
- time sudo apt-get remove libsqlite3-dev
- time TRAVIS=1 ./configure_generic.sh -DENABLE_COTIRE=ON
# for some tests
- time sudo locale-gen de_DE && sudo locale-gen zh_CN.utf8 && sudo locale-gen fr_FR
- time make -j 6
# mysql configuration for unit-tests
- mysql -e 'CREATE DATABASE IF NOT EXISTS hhvm;'
- export PDO_MYSQL_TEST_DSN="mysql:host=127.0.0.1;dbname=hhvm"
- export PDO_MYSQL_TEST_USER="travis"
- export PDO_MYSQL_TEST_PASS=""
# For PHP5 mysqli tests
- export MYSQL_TEST_USER="travis"
- export MYSQL_TEST_DB="hhvm"
# The larger test suites (slow, zend) take longer than 50 minutes to run. Since
# we have no way to change the timeout, we subdivide the jit/interp repo/normal
# matrix and then further split the large suites using an experimental cut
# which divides the number of tests in each sub-run roughly in two.
env:
# non-repo
- TEST_RUN_MODE="-m jit quick"
- TEST_RUN_MODE="-m interp quick"
- TEST_RUN_MODE="-m jit slow -I '#^hphp/test/slow/[a-df-nw-x].*#'"
- TEST_RUN_MODE="-m jit slow -E '#^hphp/test/slow/[a-df-nw-x].*#'"
- TEST_RUN_MODE="-m interp slow -I '#^hphp/test/slow/[a-df-nw-x].*#'"
- TEST_RUN_MODE="-m interp slow -E '#^hphp/test/slow/[a-df-nw-x].*#'"
- TEST_RUN_MODE="-m jit zend -I '#^hphp/test/zend/good/(ext/[a-ru-zA-Z0-9]|[Z]).*#'"
- TEST_RUN_MODE="-m jit zend -E '#^hphp/test/zend/good/(ext/[a-ru-zA-Z0-9]|[Z]).*#'"
- TEST_RUN_MODE="-m interp zend -I '#^hphp/test/zend/good/(ext/[a-ru-zA-Z0-9]|[Z]).*#'"
- TEST_RUN_MODE="-m interp zend -E '#^hphp/test/zend/good/(ext/[a-ru-zA-Z0-9]|[Z]).*#'"
# quick repo
- TEST_RUN_MODE="-m jit -r quick"
- TEST_RUN_MODE="-m interp -r quick -I '#^hphp/test/quick/[a-h].*#'"
- TEST_RUN_MODE="-m interp -r quick -I '#^hphp/test/quick/[i-zA-Z0-9].*#'"
# slow repo
- TEST_RUN_MODE="-m jit -r slow -I '#^hphp/test/slow/[a-b].*#'"
- TEST_RUN_MODE="-m jit -r slow -I '#^hphp/test/slow/[df-h].*#'"
- TEST_RUN_MODE="-m jit -r slow -I '#^hphp/test/slow/[ci-nw-x].*#'"
- TEST_RUN_MODE="-m jit -r slow -I '#^hphp/test/slow/[eo-p].*#'"
- TEST_RUN_MODE="-m jit -r slow -I '#^hphp/test/slow/[q-vy-zA-Z0-9].*#'"
- TEST_RUN_MODE="-m interp -r slow -I '#^hphp/test/slow/a.*#'"
- TEST_RUN_MODE="-m interp -r slow -I '#^hphp/test/slow/[bd].*#'"
- TEST_RUN_MODE="-m interp -r slow -I '#^hphp/test/slow/c.*#'"
- TEST_RUN_MODE="-m interp -r slow -I '#^hphp/test/slow/[f-nw-x].*#'"
- TEST_RUN_MODE="-m interp -r slow -I '#^hphp/test/slow/[eo-p].*#'"
- TEST_RUN_MODE="-m interp -r slow -I '#^hphp/test/slow/[q-s].*#'"
- TEST_RUN_MODE="-m interp -r slow -I '#^hphp/test/slow/[t-vy-zA-Z0-9].*#'"
# zend repo
- TEST_RUN_MODE="-m jit -r zend -I '#^hphp/test/zend/good/ext/[a-e].*#'"
- TEST_RUN_MODE="-m jit -r zend -I '#^hphp/test/zend/good/ext/[f-l].*#'"
- TEST_RUN_MODE="-m jit -r zend -I '#^hphp/test/zend/good/ext/[m-rt-zA-Z0-9].*#'"
- TEST_RUN_MODE="-m jit -r zend -I '#^hphp/test/zend/good/ext/s[^t].*#'"
- TEST_RUN_MODE="-m jit -r zend -I '#^hphp/test/zend/good/ext/standard/tests/a.*#'"
- TEST_RUN_MODE="-m jit -r zend -I '#^hphp/test/zend/good/ext/standard/tests/[b-f].*#'"
- TEST_RUN_MODE="-m jit -r zend -I '#^hphp/test/zend/good/ext/standard/tests/[g-zA-Z0-9].*#'"
- TEST_RUN_MODE="-m jit -r zend -I '#^hphp/test/zend/good/t.*#'"
- TEST_RUN_MODE="-m jit -r zend -I '#^hphp/test/zend/good/Z.*#'"
- TEST_RUN_MODE="-m interp -r zend -I '#^hphp/test/zend/good/ext/[a-i].*#'"
- TEST_RUN_MODE="-m interp -r zend -I '#^hphp/test/zend/good/ext/[j-m].*#'"
- TEST_RUN_MODE="-m interp -r zend -I '#^hphp/test/zend/good/ext/[n-rt-zA-Z0-9].*#'"
- TEST_RUN_MODE="-m interp -r zend -I '#^hphp/test/zend/good/ext/s[^t].*#'"
- TEST_RUN_MODE="-m interp -r zend -I '#^hphp/test/zend/good/ext/standard/tests/[a-f].*#'"
- TEST_RUN_MODE="-m interp -r zend -I '#^hphp/test/zend/good/ext/standard/tests/[g-zA-Z0-9].*#'"
- TEST_RUN_MODE="-m interp -r zend -I '#^hphp/test/zend/good/t.*#'"
- TEST_RUN_MODE="-m interp -r zend -I '#^hphp/test/zend/good/Z.*#'"
# Main test script
script: time hphp/hhvm/hhvm hphp/test/run $TEST_RUN_MODE
# Notifications
# The default is to send email on all failures and changed success
# Adding other notifiers (like IRC) does not disable the email one
notifications:
email: false
irc:
channels: "chat.freenode.net#hhvm-dev"
on_success: always
on_failure: always
use_notice: true
matrix:
fast_finish: true
# include:
# - compiler: clang
# env: CC=clang-3.4 CXX=clang++-3.4 PACKAGE=clang-3.4
# - compiler: clang
# env: CC=clang-3.5 CXX=clang++-3.5 PACKAGE=clang-3.5
# - compiler: gcc
# env: CC=gcc-4.8 CXX=g++-4.8 PACKAGE=g++-4.8
# http://www.ubuntuupdates.org/package/core/trusty/main/base/gcc-4.9-base
# - compiler: gcc
# env: CC=gcc-4.9 CXX=g++-4.9 PACKAGE=g++-4.9
# everything that was pushed was already on 'master', except
# http://docs.travis-ci.com/user/build-configuration/#Using-regular-expressions
#branches:
# only:
# - master
# - /^HHVM-.*$/