Add support for reconfiguring clusters by calling `_install_service` method within both the `create` and `update` operations. Enhanced `install_service` method to handle `HAClusterRequest` data, and introduced `reconfigure` flag within the `HAClusterRequest` model.
Enhanced error handling for missing NGINX and Keepalived services. Updated JavaScript to handle 404 errors and provide clearer messages in UI if services are not installed.
Enhanced error handling for missing NGINX and Keepalived services. Updated JavaScript to handle 404 errors and provide clearer messages in UI if services are not installed.
Updated variable types from `var` to `let` in script.js for block scope. Renamed `file_name` to `file_path` for consistency across templates and models. Added additional error conditions for alert handling in the JavaScript code.
This commit updates the database version from 8.0 to 8.0.1 to reflect recent changes. Additionally, a minor formatting adjustment was made by adding a newline for better code readability.
Refactor NGINX service command execution for dockerized environments, improving status and process parsing. Fix an issue in the service template by correcting session storage key handling and ensure correct directory ownership initialization.
Introduced a new `ServiceConfigList` MethodView to fetch configuration files for specified services. Updated route definitions to include new endpoints for this functionality, enhancing service configuration management.
Removed all references and functionality related to keepalived service. Added detailed status handling for various services including nginx, haproxy, and apache, improving the accuracy of the status checks and error handling for each service. Adjusted user interface elements to reflect the service status changes more clearly.
Added logging for exceptions in user login and authentication processes. Enhanced `update_db.py` to include error handling for database migration and added a new database update version 8 function.
Updated the AJAX call to send JSON data with proper content type and handle the response more robustly. Also standardized the button styling across delver.html and configver.html templates for a consistent user experience.
Moved `cfg` retrieval inside the `if` block to ensure it is only fetched when `serv`, `edit`, and other conditions are met. Also, removed an unnecessary hidden input from the HTML template.
Added new icons for Keepalived and Roxy services in the static images and integrated them into the main menu. Updated HA view validation to use `eth` instead of `ip` and changed certain property types from string to integer. Enhanced error handling and data processing for the configuration routes and improved JSON data handling in the script.js file.
Consolidate user and server queries, remove redundant code, and streamline logging actions. Enhance function readability and efficiency by eliminating unnecessary variables and try-except blocks. The refactor ensures service consistency and maintains error handling robustness.
Replaced hostname lookups with unified server object retrieval in metrics and credential management endpoints. Added proxy environment variables to ModSecurity download tasks and improved error handling across various modules.
Introduce a custom exception `RoxywiResourceNotFound` to manage cases where system information cannot be found. Refactor the server installation process to use server IDs instead of IPs, improving data consistency and reliability.
Removed unused variable `req_method` and refactored URL assignment logic in `ha.js` for clarity. Updated route in `routes.py` to use defaults for `vip_id` and adjusted method checks accordingly. Removed unnecessary print statement in `ha_cluster.py`.
Updated the menu font size from 1.1em to 1.2em for better readability. Refactored JavaScript and Python code to consistently retrieve server IPs using server IDs, improving code clarity and maintainability.
Added try-except blocks for better exception handling and updated VIP retrieval logic. Changed the structure from using server names and IPs to using IDs in both backend and frontend code. Updated template selections and introduced new expected version options.
Remove obsolete HTML template and streamline server selection to use JSON. Enhanced server selection and error handling in AJAX calls, fixed minor syntax issues, and updated various routes for consistency.
Remove obsolete HTML template and streamline server selection to use JSON. Enhanced server selection and error handling in AJAX calls, fixed minor syntax issues, and updated various routes for consistency.
Removed outdated Debian, EL7, EL8, and EL9 requirement files. Improved various VIP handling and validation functionalities, including changes to VIP endpoints and associated JavaScript functions. Minor enhancements and bug fixes across multiple modules and views.
Removed the unnecessary section reassignment in admin_settings.js to ensure the correct section value is used. Also, corrected a minor formatting issue in the alert message within alerting.py for better readability.
Added support for deleting configuration file versions via the DELETE method in ServiceConfigVersionsView. Updated corresponding routes, templates, and scripts to handle this functionality.
Integrated port scanner endpoints to manage and retrieve scanner configurations. Removed unused imports and redundant code blocks across multiple files for better performance and readability. Simplified error handling and consolidated port scanner settings operations.
Disabled a redundant HAProxy installation section in the Ansible playbook by commenting it out. Also removed the unnecessary `distro` library import and standardized the Python interpreter path in the service installation module for cleanup and consistency.
Removed the `check_version.html` template and moved version checking to `script.js`. This refactoring simplifies the codebase by consolidating version check handling into JavaScript, removing deprecated HTML templates, and enhancing the backend logic and API routes.
Removed the python-ldap dependency from requirements.txt and updated route handling to use JSON request data instead of form data. Additionally, responses are now wrapped using DataStrResponse for consistency.
Simplified imports and cleaned up unused functionalities in `admin/views.py`. Switched `var` to `let` in `script.js` for better scope management. Adjusted `showOverviewWaf` function for consistency. Removed `check_services` decorator from `ServiceActionView`. Enhanced `Checker` class model and improved error handling in `CheckerView`. Added `update_checker_setting_for_server` method in `checker.py`.
Added return_master setting, removed unnecessary code, and improved exception handling throughout the project. Key updates include enabling return_master by default, simplifying database update methods, handling empty IP exceptions more appropriately, and refining JavaScript validations.
Refactor user-related modules, updating data handling, roles, and methods. Simplify server status check process by removing event-based handling and replacing it with straightforward AJAX requests.
Commented out the JSON parsing function and added success notifications for service installations, consolidated "nice_service_name" object to variables.js, and reduced retry attempts and delay intervals in the Ansible Playbook for HAProxy installation tasks.
Commented out the JSON parsing function and added success notifications for service installations, consolidated "nice_service_name" object to variables.js, and reduced retry attempts and delay intervals in the Ansible Playbook for HAProxy installation tasks.
Corrected JavaScript methods to properly store language settings and trigger events. Fixed error handling in multiple scripts, and improved handling of keepalived version checks. Updated the requirements to use a specific ansible-core version for better compatibility.
The source URL for the libevent-devel package in the Ansible task file has been updated. This change ensures that the installation fetches the package from the updated URL, thereby enhancing the reliability of the package installation process.
The changes include better indentation for increased clarity. A sleep function with random duration was inserted into `serverIsUp` function for pacing. Additional changes include uncommenting server status messages and updating the attribute setting for 'slavefor' to reflect accurate data. Lastly, instead of removing the server_div on an error in the EventSource, the source itself is now closed.
This commit changes the element ID fetched to set the 'serv' parameter in an AJAX request. The 'serv' value source has been altered from '#serv_for_vars' to '#serv_for_lets'. This update ensures that the correct data is passed when making the request.
Updated the WSGIDaemonProcess for roxy-wi-app to include a request timeout. The WSGIApplicationGroup was also added to the httpd configurations. Additionally, the Ansible galaxy command in the installation.py script has been updated to use nginxinc.nginx version 0.24.3 instead of 0.24.1.
Updated the WSGIDaemonProcess for roxy-wi-app to include a request timeout. The WSGIApplicationGroup was also added to the httpd configurations. Additionally, the Ansible galaxy command in the installation.py script has been updated to use nginxinc.nginx version 0.24.3 instead of 0.24.1.
Refactoring of the function 'action_service' has been completed in the roxywi module. The function for different actions ('start', 'stop', and 'restart') has been replaced by a dictionary for more clean and efficient code. This change also enhances code readability and maintainability.
This commit includes two major changes. Javascript code in udp.js has been refactored to fix the sequence of operations. We have moved the getScript function inside the bracket to ensure smoother operation. Also, error handling in api_funct.py has been simplified and made more consistent by passing json.loads instead of raw strings to install_service method, and by directly setting 'e' as a value in case of exceptions. A minor style change has also been added on ha_cluster.html.
Added decorator `@get_user_params()` to various route handlers in `routes.py`. Adjusted user handling in `config.py` by eliminating checks for 'login' and directly accessing user parameters from Flask's global variable `g`. Also moved user retrieval process from `routes.py` to lower level operations allowing for better abstraction and less redundancy.
Imported user module to the routes module and added a user parameter decorator to the save_config route. This parameter fetches the user ID, which is then used to fetch the username. This username is passed to the upload_and_restart functions as a login argument.