77 lines
2.2 KiB
YAML
77 lines
2.2 KiB
YAML
# Travis CI build configuration for MediaWiki
|
|
# <https://travis-ci.org/wikimedia/mediawiki-core>
|
|
#
|
|
# The Wikimedia Foundation uses a self-hosted Jenkins instance to run unit
|
|
# tests, but it tests code against the version of PHP that is deployed on
|
|
# Wikimedia's production cluster. This Travis CI configuration is designed to
|
|
# complement that setup by testing MediaWiki on travis
|
|
#
|
|
language: php
|
|
|
|
# Use Ubuntu 14 Trusty (not Ubuntu 12 Precise)
|
|
# <https://docs.travis-ci.com/user/reference/trusty/>
|
|
# - Required for non-buggy xml library for XmlTypeCheck/UploadBaseTest (T75176).
|
|
dist: trusty
|
|
|
|
# Cache NPM and Composer directories
|
|
# <https://docs.travis-ci.com/user/caching/>
|
|
cache:
|
|
npm: true
|
|
directories:
|
|
# Composer doesn't have a dedicated cache setting in Travis CI config, so set the directory path instead.
|
|
- vendor
|
|
|
|
matrix:
|
|
fast_finish: true
|
|
include:
|
|
- php: 7.2
|
|
- php: 7.3
|
|
- php: 7.4
|
|
allow_failures:
|
|
- php: 7.4
|
|
|
|
services:
|
|
- mysql
|
|
|
|
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
|
|
- /^travis-ci\/.*$/
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- djvulibre-bin
|
|
- tidy
|
|
|
|
before_script:
|
|
- echo 'opcache.enable_cli = 1' >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini
|
|
- composer install --prefer-source --quiet --no-interaction
|
|
# At Travis CI, the mysql user 'travis' doesn't have create database rights, use 'root' instead.
|
|
- >
|
|
php maintenance/install.php traviswiki admin
|
|
--pass travis
|
|
--dbtype "mysql"
|
|
--dbname traviswiki
|
|
--dbuser "root"
|
|
--dbpass ""
|
|
--scriptpath "/w"
|
|
- echo -en "\n\nrequire_once __DIR__ . '/includes/DevelopmentSettings.php';\n" >> ./LocalSettings.php
|
|
- php -l ./LocalSettings.php
|
|
|
|
script:
|
|
- php tests/phpunit/phpunit.php
|
|
|
|
notifications:
|
|
email: false
|
|
irc:
|
|
channels:
|
|
- "chat.freenode.net#wikimedia-dev"
|
|
template:
|
|
- "%{repository}#%{build_number} (%{branch} - %{commit} %{author}): %{message} - %{build_url}"
|
|
on_success: change
|
|
on_failure: always
|