Issue #3403653 by alexpott, longwave: Incorporate improvements to how contrib runs PHPStan to core

(cherry picked from commit f5223a3852)
merge-requests/5604/head
Dave Long 2023-11-23 17:19:11 +00:00
parent f54b258eb5
commit 7e9983545d
No known key found for this signature in database
GPG Key ID: ED52AE211E142771
1 changed files with 19 additions and 1 deletions

View File

@ -281,10 +281,28 @@ default:
variables:
KUBERNETES_CPU_REQUEST: "16"
script:
- php vendor/bin/phpstan analyze --configuration=./core/phpstan.neon.dist --error-format=gitlab > phpstan-quality-report.json
# Rely on PHPStan caching to execute analysis multiple times without performance drawback.
# Output a copy in junit.
- php vendor/bin/phpstan analyze --configuration=./core/phpstan.neon.dist --error-format=gitlab > phpstan-quality-report.json || EXIT_CODE=$?
- php vendor/bin/phpstan analyze --configuration=./core/phpstan.neon.dist --no-progress --error-format=junit > phpstan-junit.xml || true
- |
if [ -n "$EXIT_CODE" ]; then
# Output a copy in plain text for human logs.
php vendor/bin/phpstan analyze --configuration=./core/phpstan.neon.dist --no-progress || true
# Generate a new baseline.
echo "Generating an PHPStan baseline file (available as job artifact)."
php vendor/bin/phpstan analyze --configuration=./core/phpstan.neon.dist --no-progress --generate-baseline=./core/phpstan-baseline.neon || true
exit $EXIT_CODE
fi
artifacts:
reports:
codequality: phpstan-quality-report.json
junit: phpstan-junit.xml
# Only store the baseline if the job fails.
when: on_failure
paths:
- core/phpstan-baseline.neon
'🧹 PHP Coding standards (PHPCS)':
<<: [ *with-composer, *default-job-settings-lint ]