woocommerce/.travis.yml

102 lines
2.4 KiB
YAML
Raw Normal View History

version: ~> 1.0
# Specifies that Travis should create builds for master and release branches and also tags.
branches:
only:
- master
- /^\d+\.\d+(\.\d+)?(-\S*)?$/
- /^release\//
2014-09-01 06:03:52 +00:00
language: php
os:
- linux
2019-08-05 12:29:09 +00:00
dist: xenial
2014-09-01 06:03:52 +00:00
2017-08-22 10:02:32 +00:00
# Test main supported versions of PHP against latest WP.
php:
- "7.0"
- "7.1"
- "7.2"
- "7.3"
- "7.4"
env:
- WP_VERSION=latest WP_MULTISITE=0
2020-04-07 00:07:33 +00:00
# Additional tests against stable PHP (min version is 7.0)
# and code coverage report.
2020-04-30 17:33:46 +00:00
jobs:
2020-04-30 20:26:20 +00:00
fast_finish: true
2014-09-01 06:03:52 +00:00
include:
2020-04-30 20:26:20 +00:00
- name: "Core E2E Tests"
2020-05-01 13:18:21 +00:00
env: WP_VERSION=latest WP_MULTISITE=0 RUN_E2E=1
install:
- nvm install
- npm install
- composer install --no-dev
2020-05-01 13:18:21 +00:00
script:
- travis_retry npm run build:assets
- travis_retry npm run docker:up
- travis_retry npm run test:e2e
after_script:
- npm run docker:down
- name: "WP Nightly"
php: "7.4"
env: WP_VERSION=nightly WP_MULTISITE=0
- name: "WP Latest - 1"
php: "7.2"
env: WP_VERSION=5.5 WP_MULTISITE=0
- name: "WP Latest - 2"
php: "7.2"
env: WP_VERSION=5.4 WP_MULTISITE=0
- name: "Code Standards"
php: "7.4"
env: WP_VERSION=latest WP_MULTISITE=0 RUN_PHPCS=1
- name: "Code Coverage"
php: "7.4"
env: WP_VERSION=latest WP_MULTISITE=0 RUN_CODE_COVERAGE=1
allow_failures:
- php: "7.4"
env: WP_VERSION=latest WP_MULTISITE=0 RUN_CODE_COVERAGE=1
2014-09-01 06:03:52 +00:00
# Git clone depth
# By default Travis CI clones repositories to a depth of 50 commits. Using a depth of 1 makes this step a bit faster.
git:
depth: 1
# Since Xenial services are not started by default, we need to instruct it below to start.
services:
- mysql
- docker
cache:
directories:
- $HOME/.composer/cache
# Composer 2.0.7 introduced a change that broke the jetpack autoloader in PHP 7.0 - 7.3.
before_install:
- composer self-update 2.0.6
install:
- export PATH="$HOME/.composer/vendor/bin:$PATH"
- |
# Remove Xdebug for a huge performance increase:
if [ -f ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/xdebug.ini ]; then
phpenv config-rm xdebug.ini
else
echo "xdebug.ini does not exist"
fi
- composer install
- |
# Install WP Test suite:
if [[ ! -z "$WP_VERSION" ]]; then
bash tests/bin/install.sh woocommerce_test root '' localhost $WP_VERSION
fi
2014-09-01 06:03:52 +00:00
2016-08-27 14:18:14 +00:00
script:
2017-10-05 16:09:39 +00:00
- bash tests/bin/phpunit.sh
2017-10-10 13:50:22 +00:00
- bash tests/bin/phpcs.sh
after_script:
- bash tests/bin/travis.sh after