Files
Linux-Server-Management-Too…/DEV_PLATFORM_ROADMAP.md
T

249 lines
6.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Dev Launcher - Platform Support Roadmap
**Goal**: Build a launcher in the dev branch that fully supports all documented platforms with proper detection, health checks, and platform-specific options.
---
## Phase 1: Enhanced Platform Detection (CURRENT)
**Status**: ✅ In Progress (Step 1 Complete)
### Step 1: Quick System Overview ✅ DONE
- [x] System info display at startup
- [x] Quick platform overview in menu
- [x] Detailed system info menu option (7)
- [x] Show detected platforms on every menu refresh
### Step 2: Platform Health Checks (NEXT)
- [ ] Create `modules/diagnostics/platform-health-check.sh`
- Verify control panel is running
- Check essential services (apache/nginx, mysql/mariadb, php)
- Firewall status and basic rules
- CloudFlare integration status
- Storage and resource warnings
- [ ] Create `modules/diagnostics/os-compatibility-check.sh`
- Verify OS-specific packages installed
- Check for known incompatibilities
- Version compatibility matrix verification
- Kernel version compatibility
### Step 3: Platform-Specific Menus
- [ ] Add dynamic menu options based on detected platform
- cPanel-specific tools (cPHulk, DKIM, AutoSSL)
- Plesk-specific tools (Extension management, Packages)
- InterWorx-specific tools (NodeWorx commands)
- CloudLinux-specific tools (LVE limits, alt-php)
### Step 4: Control Panel Discovery Enhancement
- [ ] Enhanced cPanel detection
- Version-specific features
- Installed plugins (AutoSSL, Immuify, etc.)
- [ ] Enhanced Plesk detection
- Version-aware paths (pre-18.0.50 vs 18.0.50+)
- Extension detection
- Module status
- [ ] Enhanced InterWorx detection
- Installed modules
- Custom plugins
- [ ] CloudLinux detection
- LVE resource limits
- CloudLinux version and license
---
## Phase 2: Operating System Support Matrix
**Status**: ⏳ Planned
### Supported Distributions
- [ ] CentOS/RHEL (7, 8, 9)
- [ ] AlmaLinux (8, 9)
- [ ] Rocky Linux (8, 9)
- [ ] CloudLinux (7, 8, 9)
- [ ] Ubuntu (20.04 LTS, 22.04 LTS, 24.04)
- [ ] Debian (11, 12)
### Per-OS Checks
- [ ] Package manager compatibility
- [ ] Service manager (systemd vs init)
- [ ] Apache binary (httpd vs apache2)
- [ ] MySQL socket paths
- [ ] Firewall type (firewalld vs UFW vs iptables)
---
## Phase 3: Web Server Support Enhancement
**Status**: ⏳ Planned
### Supported Web Servers
- [x] Apache (httpd/apache2) - Already detected
- [x] Nginx - Already detected
- [x] LiteSpeed - Already detected
- [x] OpenLiteSpeed - Already detected
### Additional Detection
- [ ] ModSecurity status
- [ ] Modsecurity rules version
- [ ] HTTP/2 support detection
- [ ] SSL/TLS version support
- [ ] Performance modules (mod_pagespeed, ngx_cache_purge, etc.)
---
## Phase 4: Database & PHP Deep Dive
**Status**: ⏳ Planned
### Database Detection Enhancement
- [ ] Detect Percona Server
- [ ] Database cluster detection (Galera for MariaDB)
- [ ] Replication status
- [ ] Backup tool detection (Acronis, Bacula, etc.)
### PHP Multi-Version Support
- [ ] Enumerate all installed PHP versions
- [ ] Per-domain PHP version mapping
- [ ] PHP module detection per version
- [ ] PHP-FPM pools enumeration
- [ ] OPcache status per version
### cPanel-Specific PHP
- [ ] EA-PHP version matrix
- [ ] PHP CLI version detection
- [ ] PHPList management
### CloudLinux alt-php
- [ ] alt-php detection and enumeration
- [ ] Per-user PHP version limits
- [ ] CloudLinux PHP selector status
---
## Phase 5: Service Status Dashboard
**Status**: ⏳ Planned
### Essential Services
- [ ] Apache/Nginx running status
- [ ] MySQL/MariaDB status
- [ ] PHP-FPM status (if installed)
- [ ] Mail service (Exim/Postfix)
- [ ] SSH service
- [ ] Firewall service
### Control Panel Services
- [ ] cPanel daemons (cpanel, cpsrvd)
- [ ] Plesk core services (sw-engine, sw-cp-server)
- [ ] InterWorx services (iworx, iworx-httpd)
### Optional Services
- [ ] Nginx/Varnish cache status
- [ ] Immuify/malware detection
- [ ] Backup agents (Acronis, etc.)
- [ ] CloudFlare support
---
## Phase 6: Intelligence & Recommendations
**Status**: ⏳ Planned
### Platform-Specific Recommendations
- [ ] cPanel: Recommendations for security hardening, backup setup
- [ ] Plesk: Extension recommendations, performance tuning
- [ ] InterWorx: Resource allocation, security features
- [ ] Standalone: Web server optimization, PHP tuning
### Compatibility Warnings
- [ ] Warn if mixing incompatible tools
- [ ] Alert on deprecated versions
- [ ] Suggest upgrades for end-of-life software
### Performance Insights
- [ ] PHP version optimization
- [ ] Database tuning hints
- [ ] Caching recommendations
- [ ] Resource allocation suggestions
---
## Implementation Priority
### IMMEDIATE (Phase 1 - Step 2-3)
1. Platform Health Checks module
2. OS Compatibility module
3. Platform-specific menu options
### NEAR TERM (Phase 2-3)
4. OS support matrix enhancements
5. Web server detection improvements
### MEDIUM TERM (Phase 4-5)
6. Database & PHP deep dive
7. Service status dashboard
### LONG TERM (Phase 6)
8. Intelligence & recommendations engine
---
## Testing Strategy
### By Control Panel
- [ ] Test on cPanel/RHEL
- [ ] Test on Plesk/Ubuntu
- [ ] Test on InterWorx/Rocky
- [ ] Test on Standalone/Debian
### By OS
- [ ] CentOS 7/8/9
- [ ] AlmaLinux 8/9
- [ ] Rocky Linux 8/9
- [ ] CloudLinux 7/8/9
- [ ] Ubuntu 20.04/22.04/24.04
- [ ] Debian 11/12
### Coverage Matrix
- All 4 control panels × 6 OSes = 24 test combinations
- Plus 4 web servers, 2 DB types, multiple PHP versions
---
## Success Criteria
1. ✅ Detect all 4 control panels accurately
2. ✅ Detect all 6 OS types accurately
3. ✅ Display platform info without errors
4. ✅ Recommend appropriate tools per platform
5. ✅ Provide health checks for detected platforms
6. ✅ Handle missing/unknown components gracefully
---
## Files to Create/Modify
### New Modules
- `modules/diagnostics/platform-health-check.sh` (400-500 lines)
- `modules/diagnostics/os-compatibility-check.sh` (300-400 lines)
- `modules/platform-tools/` (directory for platform-specific tools)
### Modified Files
- `launcher.sh` - Add platform-specific menu options
- `lib/system-detect.sh` - Enhance detection functions
- Various module files - Add platform compatibility checks
---
## Knowledge Base Integration
This roadmap uses the comprehensive knowledge base at `/root/.claude/knowledge-base/`:
- `control-panels/*/` - Platform-specific implementation details
- `operating-systems/*/` - OS-specific configuration and differences
- `databases/*/` - Database detection and management
- `shared-systems/php-version-detection.md` - PHP multi-version handling
---
**Last Updated**: 2026-03-19
**Created By**: Claude Code - Dev Session
**Status**: Active Development