- Created deploy-and-check-distrobox.sh for deploying in distrobox environment
- Uses distrobox-host-exec to run podman commands on host
- Automatically handles container creation with proper networking
- Includes comprehensive health checks for all services
- Supports --skip-deploy and --quick-check options
- Handles client data download in background
- Add automatic detection of acore_playerbots database in all backup scripts
- Improve restore script with better error handling
- Add logging of databases being backed up
- Include test-backup-detection.sh script
This commit completes the implementation of comprehensive module management
with automatic rebuild detection and source-based compilation integration.
Features implemented:
- ✅ Automatic module state tracking with hash-based change detection
- ✅ Comprehensive rebuild notifications and user guidance
- ✅ Automated rebuild script (rebuild-with-modules.sh) with error handling
- ✅ SQL script execution for automatic database setup
- ✅ Module compatibility analysis and documentation
- ✅ Source-based Docker build integration and testing
- ✅ Environment configuration management for builds
Testing results:
- ✅ Successfully built authserver with module integration
- ✅ Confirmed module compilation and linking process works
- ✅ Identified and documented mod-ahbot compatibility issue
- ✅ All 28 modules downloaded and analyzed
Configuration changes:
- All modules disabled for stable baseline (ready for selective testing)
- mod-ahbot marked as incompatible due to linking errors
- Comprehensive compatibility matrix created
- Documentation updated with testing procedures
The system fulfills the core requirement: "ensure that the installer
executes a rebuild when modules are added or removed" with automatic
detection, notifications, and streamlined rebuild automation.
🤖 Generated with [Claude Code](https://claude.ai/code)
- Run MySQL container as root (user: 0:0) to handle NFS mount permissions
- Add --user=mysql flag to MySQL command to switch to mysql user after initialization
- This resolves 'Permission denied' errors when using NFS volumes for MySQL data
- Update GitHub API search to look for .zip files instead of .7z
- Change fallback URL to use correct data.zip filename
- Update extraction to use unzip instead of 7z command
- This fixes the 404 error and invalid archive issues
- Replace complex conditional syntax with simple default pattern
- Remove 4x variable references that caused /nfs/containers duplication
- Use ./volumes/azerothcore/* for local development
- Use /nfs/containers/azerothcore/* for Portainer deployment
- Remove unused named volumes section
- Fix client data volume to use consistent STORAGE_PATH_CONTAINERS pattern
- Add missing ac_data volume definition for local development fallback
- Ensures files go to /nfs/containers/azerothcore/data instead of nested paths
- Convert MySQL command args from folded scalar to array format
- Convert multiline script commands to Portainer-compatible syntax
- Remove nested quoted strings that cause YAML parsing errors