Merge "Give search results a consistent css class to select"
[lhc/web/wiklou.git] / .travis.yml
1 # Travis CI build configuration for MediaWiki
2 # <https://travis-ci.org/wikimedia/mediawiki-core>
3 #
4 # The Wikimedia Foundation uses a self-hosted Jenkins instance to run unit
5 # tests, but it tests code against the version of PHP that is deployed on
6 # Wikimedia's production cluster. This Travis CI configuration is designed to
7 # complement that setup by testing MediaWiki on travis
8 #
9 language: php
10
11
12 # Use fast containers instead of the slower sudo-enabled VMs:
13 sudo: false
14 # Use Ubuntu 14 Trusty (not Ubuntu 12 Precise)
15 # <https://docs.travis-ci.com/user/reference/trusty/>
16 # - Required in order to use HHVM 3.6 or higher.
17 # - Required for non-buggy xml library for XmlTypeCheck/UploadBaseTest (T75176).
18 dist: trusty
19
20 matrix:
21 fast_finish: true
22 include:
23 # On Trusty, mysql user 'travis' doesn't have create database rights
24 # Postgres has no user called 'root'.
25 - env: dbtype=mysql dbuser=root
26 php: 7.2
27 - env: dbtype=mysql dbuser=root
28 php: 7.1
29 - env: dbtype=postgres dbuser=travis
30 php: 7.1
31 - env: dbtype=mysql dbuser=root
32 php: 7
33 # https://docs.travis-ci.com/user/languages/php#HHVM-versions
34 - env: dbtype=mysql dbuser=root
35 php: hhvm-3.24
36 - env: dbtype=mysql dbuser=root
37 php: hhvm-3.21
38 - env: dbtype=mysql dbuser=root
39 php: hhvm-3.18
40 allow_failures:
41 - php: 7.2
42 - php: hhvm-3.18
43 - php: hhvm-3.21
44 - php: hhvm-3.24
45
46 services:
47 - mysql
48
49 branches:
50 # Test changes in master and arbitrary Travis CI branches only.
51 # The latter allows developers to enable Travis CI in their GitHub fork of
52 # wikimedia/mediawiki and then push changes for testing to branches like
53 # "travis-ci/test-this-awesome-change".
54 only:
55 - master
56 - /^travis-ci\/.*$/
57
58 addons:
59 apt:
60 packages:
61 - djvulibre-bin
62 - tidy
63
64 before_script:
65 - composer install --prefer-source --quiet --no-interaction
66 - if [ "$dbtype" = postgres ]; then psql -c "CREATE DATABASE traviswiki WITH OWNER travis;" -U postgres; fi
67 - >
68 php maintenance/install.php traviswiki admin
69 --pass travis
70 --dbtype "$dbtype"
71 --dbname traviswiki
72 --dbuser "$dbuser"
73 --dbpass ""
74 --scriptpath "/w"
75 - echo -en "\n\nrequire_once __DIR__ . '/includes/DevelopmentSettings.php';\n" >> ./LocalSettings.php
76 - php -l ./LocalSettings.php
77
78 script:
79 - php tests/phpunit/phpunit.php
80
81 notifications:
82 email: false
83 irc:
84 channels:
85 - "chat.freenode.net#wikimedia-dev"
86 template:
87 - "%{repository}#%{build_number} (%{branch} - %{commit} %{author}): %{message} - %{build_url}"
88 on_success: change
89 on_failure: always