buddypress/.travis.yml
2017-08-25 10:48:18 +00:00

146 lines
4.5 KiB
YAML

# Travis CI Configuration File
# Use new Travis container-based infrastructure
# http://docs.travis-ci.com/user/workers/container-based-infrastructure/
sudo: false
language: php
dist: trusty
cache:
apt: true
directories:
- $HOME/.composer/cache
# - /tmp/wordpress/src/wp-content/plugins/buddypress/node_modules
php:
- 7.1
- 7.0
- 5.6
- 5.5
- 5.4
# WordPress comes from the Git mirror, where 'master' mirrors svn 'trunk' and
# x.y mirrors the latest from the x.y branch
env:
- WP_VERSION=master BP_TRAVISCI=travis:phpunit
- WP_VERSION=4.8 BP_TRAVISCI=travis:phpunit
- WP_VERSION=4.7 BP_TRAVISCI=travis:phpunit
- WP_VERSION=4.6 BP_TRAVISCI=travis:phpunit
- WP_VERSION=4.5 BP_TRAVISCI=travis:phpunit
- WP_VERSION=4.4 BP_TRAVISCI=travis:phpunit
matrix:
include:
- php: 7.2
env: WP_VERSION=master BP_TRAVISCI=travis:phpunit
- php: nightly
env: WP_VERSION=master BP_TRAVISCI=travis:phpunit
- php: 7.0
env: WP_VERSION=master BP_TRAVISCI=travis:grunt
- php: 7.0
env: WP_VERSION=master BP_TRAVISCI=travis:codecoverage
- php: 5.3
env: WP_VERSION=master BP_TRAVISCI=travis:phpunit
dist: precise
- php: 5.3
env: WP_VERSION=4.8 BP_TRAVISCI=travis:phpunit
dist: precise
- php: 5.3
env: WP_VERSION=4.7 BP_TRAVISCI=travis:phpunit
dist: precise
- php: 5.3
env: WP_VERSION=4.6 BP_TRAVISCI=travis:phpunit
dist: precise
- php: 5.3
env: WP_VERSION=4.5 BP_TRAVISCI=travis:phpunit
dist: precise
- php: 5.3
env: WP_VERSION=4.4 BP_TRAVISCI=travis:phpunit
dist: precise
exclude:
- php: 7.1
env: WP_VERSION=4.6 BP_TRAVISCI=travis:phpunit
- php: 7.1
env: WP_VERSION=4.5 BP_TRAVISCI=travis:phpunit
- php: 7.1
env: WP_VERSION=4.4 BP_TRAVISCI=travis:phpunit
allow_failures:
- php: 7.2
- php: 7.1
- php: nightly
- env: WP_VERSION=master BP_TRAVISCI=travis:codecoverage
# before_install: Failures in this section will result in build status 'errored'
before_install:
# set up WP install
- export WP_DEVELOP_DIR=/tmp/wordpress/
- mkdir -p $WP_DEVELOP_DIR
- git clone --depth=1 --branch="$WP_VERSION" git://develop.git.wordpress.org/ $WP_DEVELOP_DIR
- plugin_slug=$(basename $(pwd))
- plugin_dir=$WP_DEVELOP_DIR/src/wp-content/plugins/$plugin_slug
- cd ..
- mv $plugin_slug $plugin_dir
- |
# Remove Xdebug when not running codecoverage for a huge performance increase:
if [[ "$BP_TRAVISCI" != "travis:codecoverage" && -f ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/xdebug.ini ]]; then
phpenv config-rm xdebug.ini
else
echo "We are running codecoverage or xdebug.ini does not exist"
fi
# set up tests config
- cd $WP_DEVELOP_DIR
- echo $WP_DEVELOP_DIR
- cp wp-tests-config-sample.php wp-tests-config.php
- sed -i "s/youremptytestdbnamehere/wordpress_test/" wp-tests-config.php
- sed -i "s/yourusernamehere/root/" wp-tests-config.php
- sed -i "s/yourpasswordhere//" wp-tests-config.php
# set up database
- mysql -e 'CREATE DATABASE wordpress_test;' -uroot
# prepare for running the tests
- cd $plugin_dir
# setup NodeJS version using NVM
- node --version
- nvm install 6
- node --version
- npm install -g grunt-cli
- npm --version
- mysql --version
- phpenv versions
- php --version
- php -m
- phpunit --version
- curl --version
- grunt --version
- git --version
- svn --version
# before_script: Failures in this section will result in build status 'errored'
before_script:
- export PATH="$HOME/.composer/vendor/bin:$PATH"
- |
if [[ ${TRAVIS_PHP_VERSION:0:2} == "7." ]]; then
composer global require "phpunit/phpunit=5.7.*"
elif [[ ${TRAVIS_PHP_VERSION:0:3} != "5.2" ]]; then
composer global require "phpunit/phpunit=4.8.*"
fi
- npm install
# Run tests
script: grunt $BP_TRAVISCI
after_script:
- |
if [[ "$BP_TRAVISCI" == "travis:codecoverage" ]] ; then
bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports"
fi
notifications:
email: false
irc:
channels:
- secure: "Z+gAlyOafrw0Xg294np+7IpqOKTsswGjAWyOZsbzT7Xo8uY1nmz8tTuU50Gpo8jo5HQqG9G0QgI3zB3Cxy3M5dF+J5oLl1lBz1zL0mtHiq1HoXi2cbVnGCCpxtMvYII6UmPUGAg8zvNUQol+cw1jb3PzLwEDfGcDH64o/Z3j8Gg="
template:
- "Build %{build_number} (%{branch} - %{commit}): %{message} %{build_url}"
slack:
secure: JQT+HWoVhLzoG00HmJscYZO+Gy7ywnIlrUbCaI7DxFdFOIkKxsTLLq9cKE4y3VqgZAARTOKjP1eQ7a5OEg1vT11Ow+rB7iUAMNmITxXO4feTOx1i2673xRNBro/SZMhlLd7DY2erbMDZaG9hBQB4xLXRYOvP29pLxf5zTSyZMyE=