From a19979334702b5e688248c59a579e2ceb7a2e0c2 Mon Sep 17 00:00:00 2001 From: cschantz Date: Thu, 20 Nov 2025 00:06:35 -0500 Subject: [PATCH] Add comprehensive testing requirements for InterWorx/Plesk verification MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit DOCUMENTATION: Testing & Validation Guide Added [TESTING_REQUIREMENTS] section to REFDB_FORMAT.txt with everything needed to verify our multi-panel assumptions on real InterWorx and Plesk servers. CRITICAL ITEMS TO VERIFY: InterWorx: - Database prefix pattern (assumed first8charsOfDomain_) - Best method for user→domains lookup - PHP version configuration - Cron management system - File system paths (home, docroot, logs) - Virtual host config format Plesk: - Database prefix pattern (assumed no prefix!) - System user for PHP processes (critical for cron!) - plesk bin command syntax - Cron management (standard vs plesk bin cron) - File system paths (vhosts structure) - User→domains lookup command TESTING STRATEGY: 1. Start with simple scripts (tail-apache-access.sh) 2. Progress to complex (wordpress-cron-manager.sh) 3. Verify each assumption with provided commands 4. Document actual behavior vs assumptions COMMANDS PROVIDED: - 8 verification commands for InterWorx - 9 verification commands for Plesk - Complete testing checklist - Priority order for script testing UNKNOWNS DOCUMENTED: - 4 critical unknowns for InterWorx - 4 critical unknowns for Plesk This guide enables testing on real servers to validate all our multi-panel case statement logic. --- REFDB_FORMAT.txt | 113 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 113 insertions(+) diff --git a/REFDB_FORMAT.txt b/REFDB_FORMAT.txt index 340eb10..96cb8bd 100644 --- a/REFDB_FORMAT.txt +++ b/REFDB_FORMAT.txt @@ -852,7 +852,120 @@ commits: - Class D: Panel version detection (8a2d9f5) - website-error-analyzer.sh: Multi-panel (d657c8a) - 500-error-tracker.sh: Multi-panel (93d4cf9) + - wordpress-cron-manager.sh: Multi-panel (90ee755) - MOST COMPLEX - Documentation consolidation (fbce072) + - Completion: 100% (9af657e) + +[TESTING_REQUIREMENTS] +# What needs verification on real InterWorx/Plesk servers +# Created: 2025-11-19 + +critical_interworx_verification: + filesystem: + - Home: /home/USERNAME/ + - Docroot: /home/USERNAME/DOMAIN/html/ + - Access logs: /home/USERNAME/var/DOMAIN/logs/access_log + - Error logs: /home/USERNAME/var/DOMAIN/logs/error_log + + domain_to_user: + - Method: grep vhost_*.conf for ServerName + SuexecUserGroup + - Config: /etc/httpd/conf.d/vhost_DOMAIN.conf + - Command: grep -l "ServerName domain" /etc/httpd/conf.d/vhost_*.conf | xargs grep SuexecUserGroup + + user_to_domains: + - Option 1: Parse vhost configs for user's SuexecUserGroup + - Option 2: Filesystem ls /home/USERNAME/*/html + - Option 3: Check for InterWorx CLI tools + + database_prefix: + - CRITICAL: Assumed first8charsOfDomain_ + - Example: testdomain.com → testdoma_wp123 + - MUST VERIFY on real server! + + cron_management: + - Assumed: Standard Linux crontab -u username + - Verify: May have custom InterWorx cron system + + php_config: + - How is PHP version selected per domain? + - Where are PHP-FPM pools? + - Check vhost configs or separate files + +critical_plesk_verification: + filesystem: + - Domain root: /var/www/vhosts/DOMAIN/ + - Docroot: /var/www/vhosts/DOMAIN/httpdocs/ + - Access logs: /var/www/vhosts/system/DOMAIN/logs/access_log + - SSL logs: /var/www/vhosts/system/DOMAIN/logs/access_ssl_log + - Error logs: /var/www/vhosts/system/DOMAIN/logs/error_log + + domain_to_user: + - Method: plesk bin subscription --info DOMAIN + - Look for: Owner: username OR Login: username + - VERIFY exact output format! + + user_to_domains: + - Test: plesk bin subscription --list -owner username + - OR: plesk bin client --info username + - Find correct command syntax + + database_prefix: + - CRITICAL: Assumed NO PREFIX + - Databases: bare names (wp_db, myapp_db) + - MUST VERIFY on real server! + + cron_management: + - Check: Standard crontab vs plesk bin cron + - System user: What user runs PHP processes? + - CRITICAL for wordpress-cron-manager.sh! + + php_config: + - PHP versions: /opt/plesk/php/ + - How is version selected per domain? + - PHP-FPM pools location? + +testing_priority_order: + simple_first: + 1: tail-apache-access.sh - Just find logs + 2: web-traffic-monitor.sh - Monitor logs + 3: website-error-analyzer.sh - Logs + domain→user + 4: 500-error-tracker.sh - Logs + lookups + 5: wordpress-cron-manager.sh - EVERYTHING (most complex test) + +commands_to_run_on_test_servers: + interworx: + - ls -la /home/ + - ls -la /home/testuser/ + - ls -la /etc/httpd/conf.d/vhost_*.conf + - grep SuexecUserGroup /etc/httpd/conf.d/vhost_testdomain.conf + - mysql -e "SHOW DATABASES;" | grep testdoma + - crontab -u testuser -l + - ls -la /usr/local/interworx/bin/ + - find /home -name wp-config.php | head -5 + + plesk: + - ls -la /var/www/vhosts/ + - ls -la /var/www/vhosts/testdomain.com/ + - plesk bin subscription --info testdomain.com + - plesk bin subscription --list + - plesk bin --help + - mysql -e "SHOW DATABASES;" + - ps aux | grep php-fpm | head -5 + - ls -la /opt/plesk/php/ + - find /var/www/vhosts -name wp-config.php | head -5 + +unknowns_blocking_full_support: + interworx: + - Database prefix pattern (assumed but not verified) + - Best method for user→domains lookup + - PHP version configuration method + - InterWorx CLI commands availability + + plesk: + - Database prefix pattern (assumed no prefix) + - Correct plesk bin commands for user→domains + - System user for PHP processes (affects cron jobs!) + - Cron management method (standard vs plesk bin) [END] # This file is the ONLY developer reference document.