Releases: ha-lizard/iscsi-ha
Releases · ha-lizard/iscsi-ha
v2.5.0-rc1
Release Notes for Version v2.5.0-rc1
New Features:
- Global Variable Refactoring:
- Made
local_ip_lista global variable and enhanced thevalidate_drbd_resources_loadedfunction to improve resource validation across all DRBD nodes.
- Made
Enhancements:
-
Script Refactoring:
- Refactored
email_alert.pyto maintain compatibility with Python 2.7, ensuring support for older environments. - Optimized the watchdog initialization process to better handle PID changes, enabling more reliable service restarts.
- Refactored variable handling to work seamlessly with arrays, improving script robustness and flexibility.
- Refactored
-
Background Execution Support:
- Rolled back the
check_process_statusfunction in the HA-Lizard watchdog to run in the background, ensuring non-blocking operations and improved system stability.
- Rolled back the
Bug Fixes:
-
File Path Corrections:
- Fixed issues with source file paths to ensure proper loading and execution of scripts.
-
DRBD Resource Validation:
- Rolled back incorrect validation logic for DRBD resources, which was preventing nodes from becoming primary under certain conditions. The updated logic ensures accurate validation and reliable resource management.
-
Process Management:
- Enhanced the watchdog process to correctly handle PID changes, reducing the likelihood of initialization errors.
-
Variable Corrections:
- Fixed issues with variable handling, especially for arrays, ensuring accurate data processing and improved runtime behavior.
Full Changelog:
- Fix source file paths
- Refactor email_alert.py for Python 2.7 compatibility
- Rollback check_process_status to run in background
- Fix local_ip_list to be GLOBAL and validate_drbd_resources_loaded
- Rollback incorrect DRBD resources validation
- Refactor watchdog process initialization
- Refactor variables for array compatibility
Full Changelog: v2.5.0-rc...v2.5.0-rc1
v2.3.1
v2.5.0-rc
Release Notes for Version v2.5.0-rc
New Features:
-
Enhanced Package Structure:
- Refactored and updated
iscsi-ha.specto improve package organization and dependencies. - Introduced architecture-specific builds, changing from
noarchtox86_64. - Improved compatibility checks for XenServer and XCP-ng during pre-installation.
- Defined a new documentation directory macro to better manage doc files.
- Refactored and updated
-
New System Configuration:
- Added an override configuration for the TGTD system for better customization and control.
Enhancements:
-
Directory Structure Improvements:
- Moved documentation files to the
/usr/share/docdirectory for consistency. - Relocated legacy install/uninstall scripts to the
/usr/libexecdirectory. - Transferred various configuration files to the
/etcdirectory, aligning with standard practices. - Updated paths for runtime state files and system initialization scripts to
/usr/libexecand/etc/init.d.
- Moved documentation files to the
-
Script Refactoring:
- Refactored numerous scripts for improved readability, maintainability, and error handling:
iscsi-cfg: Enhanced readability and maintainability by aligning with standard naming conventions, ensuring consistent quoting and formatting, and consolidating redundant logic.post_version.py: Resolved functionality issues and optimized for better modularity.timeout,status,log,drbd-split-brain-alert,config_manager,become_primary,fw_init,email_alert, andreplug_pbdscripts: Addressed ShellCheck issues, improved modularity, and enhanced error reporting.
- Ensured consistent formatting in all scripts, including
iscsi-ha.shandiscsi-mon, with resolved ShellCheck warnings.
- Refactored numerous scripts for improved readability, maintainability, and error handling:
ShellCheck Fixes:
A wide range of ShellCheck issues were resolved across the codebase, addressing common scripting pitfalls:
- Fixed quoting issues to prevent word splitting and glob expansion.
- Replaced legacy backticks with modern
$(...)command substitution. - Transitioned from
[ p -a q ]and[ p -o q ]to well-defined constructs like[ p ] && [ q ]. - Replaced inefficient constructs like
cat file | cmdwithcmd < file. - Improved handling of arrays, loops, and exit codes to align with best practices.
- Utilized safer alternatives such as
pgrep,find, andgrep -cfor better performance and robustness. - Resolved variable handling and formatting issues in commands like
printfandtr.
Bug Fixes:
-
Improved Script Compatibility:
- Fixed ShellCheck issues across all major scripts, including deprecated syntax, missing quotes, and redundant commands.
- Enhanced script logic to handle edge cases and improve error detection.
-
Resolved Packaging Issues:
- Updated the
%filessection of the RPM spec to correctly manage configuration, documentation, and application-specific files. - Fixed state and log directory handling with
%ghostfiles in the RPM spec.
- Updated the
-
Improved Initialization and Service Management:
- Refined initialization scripts for better compatibility with service management tools.
- Adjusted service installation logic to disable unused services (e.g.,
scsi-targetanddrbd) during package installation.
Documentation Updates:
-
Man Pages:
- Created a Linux man page for the
iscsi-cfgscript to improve user accessibility and guidance.
- Created a Linux man page for the
-
Documentation Files:
- Updated documentation paths and filenames for better organization and alignment with best practices.
Miscellaneous:
-
Code Cleanup:
- Removed unused scripts, such as
check_disk_smart_status, to streamline the codebase. - Synced development support files with the
ha-lizardproject for consistency.
- Removed unused scripts, such as
-
Configuration Improvements:
- Added pre-commit configurations and auxiliary files to enhance code formatting and enforce coding standards.
- Introduced a devbox configuration file for streamlined development environments.
Full Changelog: v2.3.0...v2.5.0-rc