Add modular PHP checks
pauljd/davidson-ci: Davidson CI / detect (push) Successful in 2s

This commit is contained in:
2026-09-08 17:16:39 +01:00
parent d9d47b862b
commit ab4052d1f9
Executable
+64
View File
@@ -0,0 +1,64 @@
#!/bin/bash
set -euo pipefail
echo "========================"
echo " Davidson CI - PHP"
echo "========================"
PHP_COUNT="${DAVIDSON_PHP_COUNT:-0}"
if [ "$PHP_COUNT" -eq 0 ]; then
echo "No PHP files detected - skipping PHP module"
exit 0
fi
echo
echo "PHP files detected: $PHP_COUNT"
echo
echo "→ PHP syntax"
find . \
-type f \
-name "*.php" \
-not -path "./vendor/*" \
-print0 |
xargs -0 -n1 php -l
echo
echo "→ Composer"
if [ -f composer.json ]; then
composer validate --no-check-publish
if [ -f composer.lock ]; then
composer install \
--no-interaction \
--prefer-dist \
--no-progress
else
echo "composer.json found but no composer.lock"
fi
else
echo "No composer.json - skipping Composer"
fi
echo
echo "→ PHPStan"
if [ -x vendor/bin/phpstan ]; then
vendor/bin/phpstan analyse
else
echo "PHPStan not installed - skipping"
fi
echo
echo "→ PHPUnit"
if [ -x vendor/bin/phpunit ]; then
vendor/bin/phpunit
else
echo "PHPUnit not installed - skipping"
fi
echo
echo "PHP module completed successfully"