-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
80 lines (70 loc) · 2.17 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
language: php
sudo: false
notifications:
email:
on_success: never
on_failure: change
branches:
only:
- master
php:
- 5.3
- 5.6
env:
- WP_VERSION=latest WP_MULTISITE=0
- WP_VERSION=4.0 WP_MULTISITE=0
matrix:
allow_failures:
- php: hhvm
include:
- php: 7.0
env: WP_VERSION=master WP_MULTISITE=1 PHPLINT=1 PHPCS=1 CHECKJS=1 COVERAGE=1
- php: 5.2
env: WP_VERSION=4.5 WP_MULTISITE=1 PHPLINT=1
- php: 7.0
env: WP_VERSION=4.5
- php: 7.0
env: WP_VERSION=4.4
- php: 7.0
env: WP_VERSION=4.3
- php: 5.6
env: WP_VERSION=4.2
- php: 5.6
env: WP_VERSION=4.5
- php: 5.5
env: WP_VERSION=4.5
- php: 5.4
env: WP_VERSION=4.5
- php: 5.3
env: WP_VERSION=4.5
- php: hhvm
env: WP_VERSION=4.5
cache:
directories:
- vendor
- $HOME/.composer/cache
before_script:
- phpenv local 5.6
- composer selfupdate 1.0.0 --no-interaction
- composer install --no-interaction
- phpenv local --unset
- PLUGIN_SLUG=$(basename $(pwd))
- export WP_DEVELOP_DIR=/tmp/wordpress/
- git clone --depth=50 --branch="$WP_VERSION" git://develop.git.wordpress.org/ /tmp/wordpress
- cd ..
- cp -r "$PLUGIN_SLUG" "/tmp/wordpress/src/wp-content/plugins/$PLUGIN_SLUG"
- cd /tmp/wordpress/
- cp wp-tests-config-sample.php wp-tests-config.php
- sed -i "s/youremptytestdbnamehere/wordpress_tests/" wp-tests-config.php
- sed -i "s/yourusernamehere/travis/" wp-tests-config.php
- sed -i "s/yourpasswordhere//" wp-tests-config.php
- mysql -e "CREATE DATABASE wordpress_tests;" -uroot
- cd "/tmp/wordpress/src/wp-content/plugins/$PLUGIN_SLUG"
- phpenv rehash
script:
- if [[ "$PHPLINT" == "1" ]]; then find -L . -path ./vendor -prune -o -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l; fi
- if [[ "$PHPCS" == "1" ]]; then vendor/bin/phpcs -v; fi
- if [[ "$CHECKJS" == "1" ]]; then npm install -g grunt-cli && npm install --no-optional && grunt check:js; fi
- if [[ -z "$CODECLIMATE_REPO_TOKEN" ]]; then COVERAGE="0"; fi
- if [[ "$COVERAGE" == "1" ]]; then phpunit -c phpunit.xml --coverage-clover build/logs/clover.xml; else phpunit -c phpunit.xml; fi
- if [[ "$COVERAGE" == "1" ]]; then vendor/bin/test-reporter; fi