.travis.yml 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246
  1. # Travis CI
  2. #
  3. #
  4. sudo: required
  5. dist: trusty
  6. group: deprecated-2017Q2
  7. language: generic
  8. python:
  9. - "2.7"
  10. services:
  11. - docker
  12. env:
  13. matrix:
  14. - "TESTDIR=C/duda"
  15. - "TESTDIR=C/onion"
  16. - "TESTDIR=C/h2o"
  17. - "TESTDIR=C/octane"
  18. - "TESTDIR=CSharp/aspnet"
  19. - "TESTDIR=CSharp/aspnetcore"
  20. ## - "TESTDIR=CSharp/aspnet-stripped"
  21. - "TESTDIR=CSharp/evhttp-sharp"
  22. ## - "TESTDIR=CSharp/HttpListener"
  23. - "TESTDIR=CSharp/nancy"
  24. - "TESTDIR=CSharp/revenj"
  25. - "TESTDIR=CSharp/servicestack"
  26. - "TESTDIR=C++/ffead-cpp"
  27. - "TESTDIR=C++/cpoll_cppsp"
  28. - "TESTDIR=C++/cutelyst"
  29. - "TESTDIR=C++/includeos-mana"
  30. - "TESTDIR=C++/silicon"
  31. - "TESTDIR=C++/treefrog"
  32. - "TESTDIR=C++/ulib"
  33. - "TESTDIR=C++/wt"
  34. - "TESTDIR=C++/poco"
  35. - "TESTDIR=C++/luna"
  36. - "TESTDIR=Clojure/compojure"
  37. - "TESTDIR=Clojure/http-kit"
  38. - "TESTDIR=Clojure/luminus"
  39. - "TESTDIR=Clojure/macchiato"
  40. - "TESTDIR=Clojure/pedestal"
  41. - "TESTDIR=Clojure/aleph"
  42. - "TESTDIR=Clojure/reitit"
  43. - "TESTDIR=Crystal/amber"
  44. - "TESTDIR=Crystal/crystal"
  45. - "TESTDIR=Crystal/kemal"
  46. - "TESTDIR=D/vibed"
  47. - "TESTDIR=D/hunt"
  48. - "TESTDIR=D/collie"
  49. - "TESTDIR=Dart/dart-raw"
  50. - "TESTDIR=Dart/redstone"
  51. - "TESTDIR=Dart/start"
  52. - "TESTDIR=Dart/stream"
  53. - "TESTDIR=Elixir/phoenix"
  54. - "TESTDIR=Elixir/cowboy"
  55. - "TESTDIR=Erlang/chicagoboss"
  56. - "TESTDIR=Erlang/cowboy"
  57. - "TESTDIR=Erlang/elli"
  58. - "TESTDIR=Erlang/mochiweb"
  59. - "TESTDIR=Go/aah"
  60. - "TESTDIR=Go/beego"
  61. - "TESTDIR=Go/echo"
  62. - "TESTDIR=Go/falcore"
  63. - "TESTDIR=Go/fasthttp"
  64. - "TESTDIR=Go/gin"
  65. - "TESTDIR=Go/goji"
  66. - "TESTDIR=Go/go-std"
  67. - "TESTDIR=Go/revel"
  68. - "TESTDIR=Go/webgo"
  69. - "TESTDIR=Groovy/grails"
  70. - "TESTDIR=Groovy/hot"
  71. - "TESTDIR=Haskell/snap"
  72. - "TESTDIR=Haskell/wai"
  73. - "TESTDIR=Haskell/yesod"
  74. - "TESTDIR=Haskell/servant"
  75. - "TESTDIR=Haskell/spock"
  76. - "TESTDIR=Java/act"
  77. - "TESTDIR=Java/activeweb"
  78. - "TESTDIR=Java/baratine"
  79. - "TESTDIR=Java/bayou"
  80. - "TESTDIR=Java/blade"
  81. - "TESTDIR=Java/comsat-servlet"
  82. - "TESTDIR=Java/comsat-webactors"
  83. - "TESTDIR=Java/curacao"
  84. - "TESTDIR=Java/dropwizard"
  85. - "TESTDIR=Java/gemini"
  86. - "TESTDIR=Java/grizzly-bm"
  87. - "TESTDIR=Java/grizzly-jersey"
  88. - "TESTDIR=Java/jawn"
  89. - "TESTDIR=Java/jetty"
  90. - "TESTDIR=Java/jlhttp"
  91. - "TESTDIR=Java/jooby"
  92. - "TESTDIR=Java/light-java"
  93. - "TESTDIR=Java/minijax"
  94. - "TESTDIR=Java/netty"
  95. - "TESTDIR=Java/ninja-standalone"
  96. - "TESTDIR=Java/officefloor"
  97. - "TESTDIR=Java/permeagility"
  98. - "TESTDIR=Java/play1"
  99. - "TESTDIR=Java/play2-java"
  100. - "TESTDIR=Java/proteus"
  101. - "TESTDIR=Java/rapidoid"
  102. - "TESTDIR=Java/restexpress"
  103. - "TESTDIR=Java/revenj-jvm"
  104. - "TESTDIR=Java/servlet"
  105. - "TESTDIR=Java/spark"
  106. - "TESTDIR=Java/spring"
  107. - "TESTDIR=Java/tapestry"
  108. - "TESTDIR=Java/undertow"
  109. - "TESTDIR=Java/undertow-jersey-c3p0"
  110. - "TESTDIR=Java/undertow-jersey-hikaricp"
  111. - "TESTDIR=Java/vertx"
  112. - "TESTDIR=Java/vertx-web"
  113. - "TESTDIR=Java/wicket"
  114. - "TESTDIR=Java/beyondj"
  115. - "TESTDIR=Java/wildfly-ee7"
  116. - "TESTDIR=JavaScript/express"
  117. - "TESTDIR=JavaScript/hapi"
  118. - "TESTDIR=JavaScript/koa"
  119. - "TESTDIR=JavaScript/nodejs"
  120. - "TESTDIR=JavaScript/ringojs"
  121. - "TESTDIR=JavaScript/sailsjs"
  122. - "TESTDIR=Kotlin/hexagon"
  123. - "TESTDIR=Kotlin/ktor"
  124. - "TESTDIR=Kotlin/pronghorn"
  125. - "TESTDIR=Lua/lapis"
  126. - "TESTDIR=Lua/octopus"
  127. - "TESTDIR=Lua/openresty"
  128. - "TESTDIR=Nim/jester"
  129. - "TESTDIR=Perl/dancer"
  130. - "TESTDIR=Perl/kelp"
  131. - "TESTDIR=Perl/mojolicious"
  132. - "TESTDIR=Perl/plack"
  133. - "TESTDIR=Perl/web-simple"
  134. - "TESTDIR=PHP/cakephp"
  135. - "TESTDIR=PHP/hhvm"
  136. - "TESTDIR=PHP/php"
  137. - "TESTDIR=PHP/cygnite"
  138. - "TESTDIR=PHP/codeigniter"
  139. - "TESTDIR=PHP/clancats"
  140. - "TESTDIR=PHP/fat-free"
  141. - "TESTDIR=PHP/fuel"
  142. - "TESTDIR=PHP/kohana"
  143. - "TESTDIR=PHP/laravel"
  144. - "TESTDIR=PHP/limonade"
  145. - "TESTDIR=PHP/lithium"
  146. - "TESTDIR=PHP/lumen"
  147. - "TESTDIR=PHP/phalcon"
  148. - "TESTDIR=PHP/phalcon-micro"
  149. - "TESTDIR=PHP/phpixie"
  150. - "TESTDIR=PHP/silex"
  151. - "TESTDIR=PHP/silex-orm"
  152. - "TESTDIR=PHP/slim"
  153. - "TESTDIR=PHP/symfony"
  154. - "TESTDIR=PHP/workerman"
  155. - "TESTDIR=PHP/yaf"
  156. - "TESTDIR=PHP/yii2"
  157. - "TESTDIR=PHP/zend"
  158. - "TESTDIR=PHP/zend1"
  159. - "TESTDIR=PHP/phreeze"
  160. - "TESTDIR=Python/aiohttp"
  161. - "TESTDIR=Python/apistar"
  162. - "TESTDIR=Python/api_hour"
  163. - "TESTDIR=Python/bottle"
  164. - "TESTDIR=Python/cherrypy"
  165. - "TESTDIR=Python/django"
  166. - "TESTDIR=Python/falcon"
  167. - "TESTDIR=Python/flask"
  168. - "TESTDIR=Python/japronto"
  169. - "TESTDIR=Python/klein"
  170. - "TESTDIR=Python/morepath"
  171. - "TESTDIR=Python/pyramid"
  172. - "TESTDIR=Python/sanic"
  173. - "TESTDIR=Python/tornado"
  174. - "TESTDIR=Python/turbogears"
  175. - "TESTDIR=Python/uvicorn"
  176. - "TESTDIR=Python/uwsgi"
  177. - "TESTDIR=Python/web2py"
  178. - "TESTDIR=Python/webware"
  179. - "TESTDIR=Python/weppy"
  180. - "TESTDIR=Python/wheezyweb"
  181. - "TESTDIR=Python/wsgi"
  182. - "TESTDIR=Ruby/grape"
  183. - "TESTDIR=Ruby/h2o_mruby"
  184. - "TESTDIR=Ruby/hanami"
  185. - "TESTDIR=Ruby/ngx_mruby"
  186. - "TESTDIR=Ruby/padrino"
  187. - "TESTDIR=Ruby/rack"
  188. - "TESTDIR=Ruby/rack-sequel"
  189. - "TESTDIR=Ruby/rails"
  190. - "TESTDIR=Ruby/rails-stripped"
  191. - "TESTDIR=Ruby/roda-sequel"
  192. - "TESTDIR=Ruby/sinatra"
  193. - "TESTDIR=Ruby/sinatra-sequel"
  194. - "TESTDIR=Rust/iron"
  195. - "TESTDIR=Rust/nickel"
  196. - "TESTDIR=Rust/hyper"
  197. - "TESTDIR=Rust/tokio-minihttp"
  198. - "TESTDIR=Rust/rouille"
  199. - "TESTDIR=Scala/akka-http"
  200. - "TESTDIR=Scala/blaze"
  201. - "TESTDIR=Scala/colossus"
  202. - "TESTDIR=Scala/finagle"
  203. - "TESTDIR=Scala/finatra"
  204. - "TESTDIR=Scala/fintrospect"
  205. - "TESTDIR=Scala/play2-scala"
  206. - "TESTDIR=Scala/scruffy"
  207. - "TESTDIR=Scala/spray"
  208. - "TESTDIR=Scala/s-server"
  209. - "TESTDIR=Scala/http4s"
  210. - "TESTDIR=Scala/finch"
  211. - "TESTDIR=Swift/vapor"
  212. - "TESTDIR=Ur/urweb"
  213. - "TESTDIR=Vala/vsgi"
  214. - "TESTDIR=Vala/valum"
  215. before_script:
  216. # Runs travis_diff, printing the output to the terminal, and searches for travis-diff-continue
  217. # to determine if the suite should be installed and the current $TESTDIR test should run.
  218. - export CONTINUE_TEST=`./toolset/travis/travis_diff.py | tee /dev/tty | grep -q "travis-diff-continue" && echo 1`
  219. # travis_clean.sh takes care of some services that are baked into the travis
  220. # build. Using language: generic gets us an ubuntu build with fewer services,
  221. # but includes database installs, ruby and rvm installs, and others that interfere
  222. # with running the suite in a clean ubuntu install.
  223. - if [ $CONTINUE_TEST ]; then source ./toolset/travis/travis_clean.sh; else echo 'Skipping travis_clean.sh'; fi
  224. # travis_setup.sh runs all the same commands you would run if you were setting up
  225. # a development environment via:
  226. # http://frameworkbenchmarks.readthedocs.io/en/latest/Development/Installation-Guide/
  227. - if [ $CONTINUE_TEST ]; then source ./toolset/travis/travis_setup.sh; else echo 'Skipping travis_setup.sh'; fi
  228. script:
  229. # run-ci.py runs the diffing to see if travis needs to test this framework. Ideally/eventually,
  230. # we'd like to try and do the diffing before travis_clean & setup.
  231. # This will run the tests exactly as you would in your own vm:
  232. # ./toolset/run-tests.py --mode verify --test (all the valid tests for this framework)
  233. - if [ $CONTINUE_TEST ]; then tfb --mode verify --test-dir "$TESTDIR"; else echo 'Skipping test verification.'; fi
  234. # - tfb --mode verify --test
  235. cache:
  236. directories:
  237. - $HOME/.m2/repository
  238. - $HOME/.cache/pip