- Add comprehensive health check system with multiple endpoints - Add Prometheus metrics endpoint - Add production logging configurations (5 strategies) - Add complete deployment documentation suite: * QUICKSTART.md - 30-minute deployment guide * DEPLOYMENT_CHECKLIST.md - Printable verification checklist * DEPLOYMENT_WORKFLOW.md - Complete deployment lifecycle * PRODUCTION_DEPLOYMENT.md - Comprehensive technical reference * production-logging.md - Logging configuration guide * ANSIBLE_DEPLOYMENT.md - Infrastructure as Code automation * README.md - Navigation hub * DEPLOYMENT_SUMMARY.md - Executive summary - Add deployment scripts and automation - Add DEPLOYMENT_PLAN.md - Concrete plan for immediate deployment - Update README with production-ready features All production infrastructure is now complete and ready for deployment.
66 lines
1.9 KiB
PHP
66 lines
1.9 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
require_once __DIR__ . '/../../vendor/autoload.php';
|
|
|
|
use App\Application\Media\ShowImage;
|
|
use App\Framework\Attributes\Route;
|
|
|
|
echo "=== Manual Attribute Test ===\n";
|
|
|
|
try {
|
|
// Check if ShowImage class exists
|
|
if (! class_exists(ShowImage::class)) {
|
|
echo "❌ ShowImage class not found!\n";
|
|
exit(1);
|
|
}
|
|
|
|
echo "✅ ShowImage class found: " . ShowImage::class . "\n";
|
|
|
|
// Get reflection class
|
|
$reflection = new ReflectionClass(ShowImage::class);
|
|
echo "✅ Class reflection created\n";
|
|
|
|
// Check methods
|
|
$methods = $reflection->getMethods();
|
|
echo "Methods found: " . count($methods) . "\n";
|
|
|
|
foreach ($methods as $method) {
|
|
echo " Method: " . $method->getName() . "\n";
|
|
|
|
// Check for Route attributes
|
|
$attributes = $method->getAttributes(Route::class);
|
|
echo " Route attributes: " . count($attributes) . "\n";
|
|
|
|
foreach ($attributes as $attribute) {
|
|
echo " *** FOUND Route attribute! ***\n";
|
|
$routeInstance = $attribute->newInstance();
|
|
echo " Path: " . $routeInstance->path . "\n";
|
|
echo " Method: " . $routeInstance->method->value . "\n";
|
|
}
|
|
}
|
|
|
|
// Check class file location
|
|
$filename = $reflection->getFileName();
|
|
echo "File location: $filename\n";
|
|
|
|
// Check if file is in src directory
|
|
if (str_contains($filename, '/src/')) {
|
|
echo "✅ File is in src directory\n";
|
|
} else {
|
|
echo "❌ File is NOT in src directory\n";
|
|
}
|
|
|
|
// Check if it should be discovered
|
|
if (str_contains($filename, '/src/Application/')) {
|
|
echo "✅ File is in Application directory - should be discovered\n";
|
|
} else {
|
|
echo "❌ File is NOT in Application directory\n";
|
|
}
|
|
|
|
} catch (Exception $e) {
|
|
echo "❌ Error during manual test: " . $e->getMessage() . "\n";
|
|
echo "Stack trace:\n" . $e->getTraceAsString() . "\n";
|
|
}
|