1+ # Scrutinizer CI configuration -- modern format (PHP 8.3, named nodes).
2+ # Reference: https://scrutinizer-ci.com/docs/configuration/build_reference
3+
14filter :
25 excluded_paths :
3- - tests/*
6+ - ' tests/*'
7+ - ' vendor/*'
8+ dependency_paths :
9+ - ' vendor/*'
10+
411build :
512 environment :
6- php : 7.0
7- cache :
8- disabled : false
9- directories :
10- - ~/.composer/cache
11- - tmp/
12- - vendor/
13- dependencies :
14- override :
15- - composer self-update
16- - composer install --no-interaction --dev --prefer-dist --ansi
17- tests :
18- override :
19- # - jshint-run $(ls public_html/js/*.js)
20- # - shellcheck-run -s bash $(ls scripts/*/*.sh)
21- # - csslint-run --exclude-list=public_html/css/domains.css,public_html/css/minified,public_html/css/reset.css,public_html/css/price_win.css public_html/css
22- -
23- command : ' vendor/bin/phpunit --bootstrap vendor/autoload.php tests/ -v --coverage-clover coverage.xml --whitelist src/'
24- # command: 'phpdbg -qrr vendor/bin/phpunit --bootstrap vendor/autoload.php tests/ -v --coverage-clover coverage.xml --whitelist src/'
25- coverage :
26- file : ' coverage.xml'
27- format : ' clover'
13+ php :
14+ version : ' 8.3'
15+ ini :
16+ ' date.timezone ' : ' America/New_York'
17+ ' memory_limit ' : ' 512M'
18+ variables :
19+ COMPOSER_DISCARD_CHANGES : ' true'
20+
21+ nodes :
22+ analysis :
23+ tests :
24+ override :
25+ - php-scrutinizer-run
26+
27+ tests :
28+ cache :
29+ disabled : false
30+ directories :
31+ - ~/.composer/cache
32+ - vendor/
33+ dependencies :
34+ override :
35+ - ' composer self-update --no-interaction'
36+ - ' composer install --no-interaction --prefer-dist --no-progress --ansi'
37+ tests :
38+ override :
39+ -
40+ command : ' vendor/bin/phpunit --coverage-clover=coverage.xml'
41+ coverage :
42+ file : ' coverage.xml'
43+ format : ' clover'
44+
2845checks :
2946 php :
3047 argument_type_checks : true
@@ -63,7 +80,6 @@ checks:
6380 parameter_doc_comments : true
6481 parameters_in_camelcaps : true
6582 parse_doc_comments : true
66- php5_style_constructor : true
6783 phpunit_assertions : true
6884 precedence_in_conditions : true
6985 precedence_mistakes : true
@@ -74,6 +90,7 @@ checks:
7490 return_doc_comments : true
7591 simplify_boolean_return : true
7692 uppercase_constants : true
93+
7794coding_style :
7895 php :
7996 indentation :
@@ -178,3 +195,8 @@ coding_style:
178195 general : lower
179196 constants :
180197 true_false_null : lower
198+
199+ build_failure_conditions :
200+ - ' elements.rating(<= D).new.exists' # No new D-or-worse rated elements
201+ - ' issues.severity(>= MAJOR).new.exists' # No new MAJOR+ severity issues
202+ - ' project.metric_change("scrutinizer.test_coverage", < -0.05)' # Coverage cannot drop more than 5%
0 commit comments