Rev 26 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
20260103 v1.3.2
- **cluster.pm**: Fixed balance() function to properly evacuate all domains from nodes in maintenance mode before performing normal balancing operations
- **cluster.pm**: Fixed moveThings() function node selection logic to prevent maintenance nodes from being selected as migration targets
- **cluster.pm**: Maintenance nodes are now evacuated at the start of balance(), ensuring safe node maintenance workflow
- **havirt.pm**: Fixed critical logic errors in diffArray() function - now properly handles array comparison and returns all non-matching elements from first array
- **havirt.pm**: diffArray() now correctly processes remaining elements when second array is exhausted
- **Documentation**: Complete rewrite of README.md with comprehensive sysadmin-focused content including quick start, common tasks, safety features, and troubleshooting
- **Documentation**: Complete rewrite of INSTALL.md with step-by-step installation guide, prerequisites checklist, verification procedures, and detailed troubleshooting
- **Documentation**: Complete rewrite of USAGE.md with detailed command reference, examples, workflows, best practices, and debugging instructions
20260102 v1.2.4
- **havirt.pm**: Created centralized execute() function for all command execution with debug logging support
- **havirt.pm**: Refactored all 7 command execution points in havirt.pm to use execute() for consistency and easier debugging
- **domain.pm**: Refactored 3 command execution points to use execute() (hostname, virsh dumpxml, uuidgen)
- **cluster.pm**: Refactored 3 command execution points to use execute() (iscsiadm commands)
- **node.pm**: Refactored 1 command execution point to use execute() (virsh nodeinfo)
- **havirt.pm**: Added --testing flag support in getDomainsOnNode() to read from test files instead of executing SSH commands
- **havirt.pm**: Modified executeAndWait() to return 1 on success, 0 on timeout for better error handling
- **havirt**: Fixed module loading to use absolute paths from $FindBin::RealBin, allowing execution from any directory
- **havirt**: Override config paths after YAML read to use script directory for conf/, var/, and status files
- **Testing**: Created comprehensive test suite with test_havirt_safe.sh, test_havirt.sh, and test_integration.pl
- **Testing**: Created tests/ directory structure with test data files for safe testing without affecting production
- **Testing**: Created testing status database (status.yaml.testing) and node scan test files
- **Testing**: Added TESTING.md documentation for test suite usage
20240827 v1.2.0
- migration now works
- when a node is placed in maintenance mode, will attempt to migrate any domains currently running on it.
- Removed --yes parameter, relying on --dryrun (-n)
- Added config file, auto-generated if it doesn't exist with defaults
- Checks resources on start/migrate to ensure RAM and CPU's do not overpower system
- findDomain moved to havirt.pm, set to rescan system (unless paranoid mode set)
- Added a lot of code to enhance --verbose flag