Skip to content

Commit 28b23ce

Browse files
committed
Update CI
1 parent cce37e7 commit 28b23ce

File tree

5 files changed

+45
-21
lines changed

5 files changed

+45
-21
lines changed

.gitattributes

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,14 @@
33
*.dat -text
44
/tests export-ignore
55
/stubs export-ignore
6+
/tools export-ignore
67
/.gitattributes export-ignore
78
/.gitignore export-ignore
9+
/.gitmodules export-ignore
810
/.scrutinizer.yml export-ignore
911
/.travis.yml export-ignore
1012
/.gitlab-ci.yml
1113
/phpunit.xml export-ignore
14+
/phpstan.neon export-ignore
1215
/changelog.md export-ignore
1316
/Makefile export-ignore
14-
/.gitlab-ci.yml

.gitignore

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
11
/vendor
22
/.idea
33
/composer.phar
4-
/clover.xml
4+
/clover.xml
5+
build
6+
/xhprof_report.*
7+
benchmark-result.json
8+
/coverage.xml
9+
/phpbench-candidate.xml
10+
/phpbench-master.xml

.travis.yml

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
language: php
22
php:
33
- nightly
4-
- hhvm
54
- 7.3
65
- 7.2
76
- 7.1
@@ -16,26 +15,20 @@ dist: trusty
1615
## Cache composer bits
1716
cache:
1817
directories:
19-
- $HOME/.composer/cache
18+
- $HOME/.cache/composer
2019

21-
# execute any number of scripts before the test run, custom env's are available as variables
2220
before_script:
2321
- composer install --dev --no-interaction --prefer-dist
24-
- if [[ $(phpenv version-name) =~ 7.2 ]] ; then test -f $HOME/.composer/cache/phpstan.phar || wget https://github.com/phpstan/phpstan/releases/download/0.9.2/phpstan.phar -O $HOME/.composer/cache/phpstan.phar; fi
25-
- if [[ $(phpenv version-name) =~ 7.2 ]] ; then test -f $HOME/.composer/cache/ocular.phar || wget https://scrutinizer-ci.com/ocular.phar -O $HOME/.composer/cache/ocular.phar; fi
26-
- if [[ $(phpenv version-name) =~ 7.2 ]] ; then test -f $HOME/.composer/cache/cctr || wget https://codeclimate.com/downloads/test-reporter/test-reporter-0.1.4-linux-amd64 -O $HOME/.composer/cache/cctr && chmod +x $HOME/.composer/cache/cctr; fi
27-
- if [[ $(phpenv version-name) =~ 7.2 ]] ; then $HOME/.composer/cache/cctr before-build; fi
22+
- if ! [[ $(phpenv version-name) =~ 7.3 ]] ; then phpenv config-rm xdebug.ini || true ; fi
2823

2924
matrix:
3025
allow_failures:
31-
- php: hhvm
3226
- php: nightly
3327
fast_finish: true
3428

3529
script:
36-
- ./vendor/bin/phpunit -v --configuration phpunit.xml --coverage-text --coverage-clover clover.xml
37-
- if [[ $(phpenv version-name) =~ 7.2 ]] ; then php $HOME/.composer/cache/phpstan.phar analyze -l 7 ./src; fi
30+
- if [[ $(phpenv version-name) =~ 7.3 ]] ; then make test-coverage; else make test; fi
31+
- if [[ $(phpenv version-name) =~ 7.2 ]] ; then make lint bench bench-master bench-compare; fi
3832

3933
after_script:
40-
- if [[ $(phpenv version-name) =~ 7.2 ]] ; then php $HOME/.composer/cache/ocular.phar code-coverage:upload --format=php-clover clover.xml; fi
41-
- if [[ $(phpenv version-name) =~ 7.2 ]] ; then $HOME/.composer/cache/cctr after-build --exit-code $TRAVIS_TEST_RESULT; fi
34+
- if [[ $(phpenv version-name) =~ 7.3 ]] ; then bash <(curl -s https://codecov.io/bash); fi

Makefile

Lines changed: 30 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,32 @@
1-
phar:
2-
composer require php-yaoi/php-yaoi:^1;composer install --no-dev;rm -rf tests/;rm ./json-diff;rm ./json-diff.tar.gz;phar-composer build;mv ./json-diff.phar ./json-diff;tar -zcvf ./json-diff.tar.gz ./json-diff;git reset --hard;composer install
1+
PHPSTAN_VERSION ?= 0.11.15
2+
PHPBENCH_VERSION ?= 0.16.10
33

4-
docker56-composer-update:
5-
test -f ./composer.phar || wget https://getcomposer.org/composer.phar
6-
docker run --rm -v $$(pwd):/code php:5.6-cli bash -c "apt-get update;apt-get install -y unzip;cd /code;php composer.phar update --prefer-source"
4+
deps:
5+
@git submodule init && git submodule update
76

8-
docker56-test:
9-
docker run --rm -v $$(pwd):/code -w /code php:5.6-cli php vendor/bin/phpunit
7+
lint:
8+
@test -f ${HOME}/.cache/composer/phpstan-${PHPSTAN_VERSION}.phar || (mkdir -p ${HOME}/.cache/composer/ && wget https://github.com/phpstan/phpstan/releases/download/${PHPSTAN_VERSION}/phpstan.phar -O ${HOME}/.cache/composer/phpstan-${PHPSTAN_VERSION}.phar)
9+
@php $$HOME/.cache/composer/phpstan-${PHPSTAN_VERSION}.phar analyze -l 7 -c phpstan.neon ./src
10+
11+
docker-lint:
12+
@docker run -v $$PWD:/app --rm phpstan/phpstan analyze -l 7 -c phpstan.neon ./src
13+
14+
test:
15+
@php -derror_reporting="E_ALL & ~E_DEPRECATED" vendor/bin/phpunit --configuration phpunit.xml
16+
17+
test-coverage:
18+
@php -derror_reporting="E_ALL & ~E_DEPRECATED" -dzend_extension=xdebug.so vendor/bin/phpunit --configuration phpunit.xml --coverage-text --coverage-clover=coverage.xml
19+
20+
phpbench:
21+
@test -f ${HOME}/.cache/composer/phpbench-${PHPBENCH_VERSION}.phar || (mkdir -p ${HOME}/.cache/composer/ && wget https://github.com/phpbench/phpbench/releases/download/${PHPBENCH_VERSION}/phpbench.phar -O ${HOME}/.cache/composer/phpbench-${PHPBENCH_VERSION}.phar)
22+
23+
bench: phpbench
24+
@php $$HOME/.cache/composer/phpbench-${PHPBENCH_VERSION}.phar run benchmarks --tag=candidate --progress=travis --bootstrap=vendor/autoload.php --revs=50 --iterations=5 --retry-threshold=3 --dump-file=phpbench-candidate.xml
25+
26+
bench-master: phpbench
27+
@git checkout --detach && git fetch origin '+refs/heads/master:refs/heads/master' && git checkout master -- ./src
28+
@composer install --dev --no-interaction --prefer-dist
29+
@php $$HOME/.cache/composer/phpbench-${PHPBENCH_VERSION}.phar run benchmarks --tag=master --progress=none --bootstrap=vendor/autoload.php --revs=50 --iterations=5 --retry-threshold=3 --dump-file=phpbench-master.xml
30+
31+
bench-compare: phpbench
32+
@php $$HOME/.cache/composer/phpbench-${PHPBENCH_VERSION}.phar report --file phpbench-master.xml --file phpbench-candidate.xml --report='generator: "table", cols: [ "set" ], compare: "tag", compare_fields: ["mean"], break: ["benchmark"]'

phpstan.neon

Whitespace-only changes.

0 commit comments

Comments
 (0)