#
language: php
-php:
- - hhvm-nightly
- - 5.3
+
+# Use fast containers instead of the slower sudo-enabled VMs:
+sudo: false
+# Use Ubuntu 14 Trusty (not Ubuntu 12 Precise)
+# <https://docs.travis-ci.com/user/reference/trusty/>
+# - Required in order to use HHVM 3.6 or higher.
+# - Required for non-buggy xml library for XmlTypeCheck/UploadBaseTest (T75176).
+dist: trusty
+
+matrix:
+ fast_finish: true
+ include:
+ # On Trusty, mysql user 'travis' doesn't have create database rights
+ # Postgres has no user called 'root'.
+ - env: dbtype=mysql dbuser=root
+ php: 5.5
+ - env: dbtype=postgres dbuser=travis
+ php: 5.5
+ # https://docs.travis-ci.com/user/languages/php#HHVM-versions
+ - env: dbtype=mysql dbuser=root
+ php: hhvm-3.12
+ - env: dbtype=mysql dbuser=root
+ php: hhvm-3.18
+ - env: dbtype=mysql dbuser=root
+ php: 7
services:
- mysql
branches:
- # Test changes in master and in Wikimedia's production branches.
+ # Test changes in master and arbitrary Travis CI branches only.
+ # The latter allows developers to enable Travis CI in their GitHub fork of
+ # wikimedia/mediawiki and then push changes for testing to branches like
+ # "travis-ci/test-this-awesome-change".
only:
- master
- - /^wmf\/.*$/
+ - /^travis-ci\/.*$/
-before_install:
- - sudo apt-get install -qq djvulibre-bin tidy
- - composer self-update --quiet --no-interaction
+addons:
+ apt:
+ packages:
+ - djvulibre-bin
+ - tidy
before_script:
- composer install --prefer-source --quiet --no-interaction
+ - if [ "$dbtype" = postgres ]; then psql -c "CREATE DATABASE traviswiki WITH OWNER travis;" -U postgres; fi
- >
php maintenance/install.php traviswiki admin
--pass travis
+ --dbtype "$dbtype"
--dbname traviswiki
- --dbuser travis
+ --dbuser "$dbuser"
--dbpass ""
--scriptpath "/w"
email: false
irc:
channels:
- - "chat.freenode.net#mediawiki-core"
- "chat.freenode.net#mediawiki-feed"
on_success: change
on_failure: change