forked from TechEmpower/FrameworkBenchmarks
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
130 lines (121 loc) · 4.23 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
120
121
122
123
124
125
126
127
128
129
130
# Travis CI
#
#
sudo: required
group: deprecated-2017-Q4
dist: trusty
language: generic
python:
- "2.7"
services:
- docker
env:
matrix:
- "TESTLANG=C"
- "TESTLANG=CSharp"
- 'TESTDIR="C++/cppcms C++/cpoll_cppsp C++/poco"'
- "TESTDIR=C++/ffead-cpp"
- "TESTDIR=C++/cutelyst"
- "TESTDIR=C++/libhttpserver"
- "TESTDIR=C++/silicon"
- "TESTDIR=C++/treefrog"
- "TESTDIR=C++/ulib"
- "TESTDIR=C++/wt"
- "TESTLANG=Clojure"
- "TESTLANG=Crystal"
- "TESTLANG=D"
- "TESTLANG=Dart"
- "TESTLANG=Elixir"
- "TESTLANG=Erlang"
- "TESTLANG=FSharp"
- "TESTLANG=Go"
- "TESTLANG=Groovy"
- "TESTDIR=Haskell/snap"
- "TESTDIR=Haskell/wai"
- "TESTDIR=Haskell/yesod"
- "TESTDIR=Haskell/servant"
- "TESTDIR=Haskell/spock"
- "TESTDIR=Java/act"
- "TESTDIR=Java/activeweb"
- "TESTDIR=Java/armeria"
- "TESTDIR=Java/baratine"
- "TESTDIR=Java/baseio"
- "TESTDIR=Java/bayou"
- "TESTDIR=Java/blade"
- "TESTDIR=Java/comsat"
- "TESTDIR=Java/curacao"
- "TESTDIR=Java/dropwizard"
- "TESTDIR=Java/gemini"
- "TESTDIR=Java/greenlightning"
- "TESTDIR=Java/grizzly"
- "TESTDIR=Java/grizzly-jersey"
- "TESTDIR=Java/helidon"
- "TESTDIR=Java/httpserver"
- "TESTDIR=Java/jawn"
- "TESTDIR=Java/javalin"
- "TESTDIR=Java/jetty"
- "TESTDIR=Java/jlhttp"
- "TESTDIR=Java/jooby"
- "TESTDIR=Java/light-java"
- "TESTDIR=Java/micronaut"
- "TESTDIR=Java/minijax"
- "TESTDIR=Java/nanohttpd"
- "TESTDIR=Java/netty"
- "TESTDIR=Java/ninja-standalone"
- "TESTDIR=Java/officefloor"
- "TESTDIR=Java/play1"
- "TESTDIR=Java/play2-java"
- "TESTDIR=Java/proteus"
- "TESTDIR=Java/rapidoid"
- "TESTDIR=Java/ratpack"
- "TESTDIR=Java/redkale"
- "TESTDIR=Java/restexpress"
- "TESTDIR=Java/revenj-jvm"
- "TESTDIR=Java/servlet"
- "TESTDIR=Java/servlet3"
- "TESTDIR=Java/smart-socket"
- "TESTDIR=Java/spark"
- "TESTDIR=Java/spring"
- "TESTDIR=Java/spring-webflux"
- "TESTDIR=Java/tapestry"
- "TESTDIR=Java/t-io"
- "TESTDIR=Java/undertow"
- "TESTDIR=Java/undertow-jersey"
- "TESTDIR=Java/vertx"
- "TESTDIR=Java/vertx-web"
- "TESTDIR=Java/wicket"
- "TESTDIR=Java/wildfly-ee"
- "TESTDIR=Java/wizzardo-http"
- "TESTLANG=JavaScript"
- "TESTLANG=Kotlin"
- "TESTLANG=Lisp"
- "TESTLANG=Lua"
- "TESTLANG=Nim"
- "TESTLANG=Perl"
- 'TESTDIR="PHP/php"'
- 'TESTDIR="PHP/cakephp PHP/clancats PHP/codeigniter PHP/cygnite PHP/fat-free PHP/fuel PHP/kumbiaphp PHP/laravel PHP/limonade PHP/lithium PHP/lumen PHP/phpixie PHP/phreeze PHP/silex PHP/slim PHP/symfony PHP/yii2 PHP/zend"'
- 'TESTDIR="PHP/amp PHP/hamlet PHP/hhvm PHP/peachpie PHP/swoole PHP/workerman PHP/phalcon"'
- "TESTLANG=Python"
- "TESTLANG=Ruby"
- 'TESTDIR="Rust/actix Rust/gotham Rust/hyper Rust/iron Rust/saphir"'
- 'TESTDIR="Rust/may-minihttp Rust/nickel Rust/rocket"'
- 'TESTDIR="Rust/rouille Rust/thruster Rust/tokio-minihttp"'
- "TESTLANG=Scala"
- "TESTLANG=Swift"
- "TESTLANG=TypeScript"
- "TESTLANG=Ur"
- "TESTLANG=Vala"
- "TESTLANG=VB"
before_script:
# Runs travis_diff, printing the output to the terminal, and searches for travis-diff-continue
# to determine if the suite should be installed and the current $TESTDIR test should run.
- export RUN_TESTS=`./toolset/travis/travis_diff.py | tee /dev/tty | grep -oP "travis-run-tests \K(.*)"`
- if [ "$RUN_TESTS" ]; then docker pull techempower/tfb; fi
# Stop services that would claim ports we may need
- sudo service mysql stop
- sudo service postgresql stop
script:
# run-ci.py runs the diffing to see if travis needs to test this framework. Ideally/eventually,
# we'd like to try and do the diffing before travis_clean & setup.
# This will run the tests exactly as you would in your own vm:
- if [ "$RUN_TESTS" ]; then docker network create tfb > /dev/null 2>&1 && docker run --network=tfb -v /var/run/docker.sock:/var/run/docker.sock --mount type=bind,source=`pwd`,target=/FrameworkBenchmarks techempower/tfb --mode verify --test-dir $RUN_TESTS; else echo 'Skipping test verification.'; fi