Deleted the admin introduction script and associated source map since they are no longer required. This cleanup helps to reduce clutter and improve maintainability of the project.
Adjusted line formatting in `runtime.py` and `waf.py` for consistency and readability. Added exception handling for logging in `auth.py` to prevent crashes and provide error feedback.
Removed multiple unnecessary blank lines across various files to maintain code cleanliness and readability. Simplified exception handling in the `roxywi/auth.py` module and updated the import statements in `ha/routes.py`. Added a timeout parameter to the requests call in `alerting.py` for better error management.
Commented out the unused statAgriment function and its associated event listener. Replaced var with let in various parts of the script for better scope handling and used triple equals for strict comparison. Also added a new script to the add.html template.
Refactor multiple files to correct spacing issues, including extra blank lines, misaligned parameters, and inconsistent indentation. These changes improve code readability and maintain coding standards without altering functionality.
Update the keepalived process check to properly filter processes by adding a space after 'keepalived'. This ensures that similar process names do not cause false positives in the check.
Re-order the insertion of services to occur earlier in the HA cluster creation process. This ensures that services are added to the database right after the cluster is created, improving the sequence and readability of operations.
Removed unused imports, improved error handling in JavaScript, and refactored server command construction for better reliability. Enhanced type checking and streamlined list processing to improve code readability and efficiency.
Streamlined conditional checks using 'in' for better readability in `show_services_ovw.html`. Additionally, removed an unused import in `cred_views.py` and updated database creation script for efficiency.
Deleted the Grafana role from Ansible playbooks and related references in various files. This includes updates to HTML templates, route definitions, and database entries to ensure no remnants of Grafana configuration remain.
Updated the logic to skip setting SSH configuration for localhost. This change ensures that SSH settings are only applied to remote servers, preventing potential conflicts or unnecessary configurations for the local machine. Additionally, simplified the SSH key name without including the group name in the UI for better clarity.
Added logic to set user_group_id based on Flask global object `g`, with a fallback to default value if an exception occurs. This enhances the flexibility of `user_group_id` assignment based on runtime context.
Enhance function signatures to include group_id parameter for fetching settings in a multi-group context. Additionally, improve password handling by cleaning up special characters to ensure proper authentication.
Enhance various service functions to accept and process group_id from user parameters. This update ensures that settings and actions are correctly scoped to the user's group, improving access control and accuracy of the returned data.
Updated the error code returned when a user's subscription is either inactive or on a Home plan from 403 (Forbidden) to 401 (Unauthorized). This makes the response more semantically accurate, indicating that authentication is required and has failed.
Replaced single quotes in cert input and updated error handling to raise exceptions instead of returning error messages. This change ensures better logging and clear error propagation.
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.
The user id retrieval function, get_user_id_by_username, in the config module was refactored. The changes included the removal of unnecessary use of keyword argument on a function call. This change simplifies the code, making it more readable and easier to understand.
In auth.py, removed an unnecessary pass statement and reassigned unused bind variables. Also, added a check to assign a default value to 'session_ttl' if it is None. In installation.py, rolled back the nginxinc.nginx version used during ansible galaxy installation from 0.24.2 to 0.24.1.
The version of nginx being installed via the ansible-galaxy command in the installation.py file has been updated. The version number has been changed from 0.23.2 to 0.24.2, adhering to up-to-date libraries and compatibility improvements that the new version provides.
This update reviews and adjusts multiple code segments across the project. The improvements are mainly focused on error handling with more informative exceptions and error messages. Additionally, data formatting and retrieval have been streamlined, mainly regarding JSON data preparation and use in several functions, which should expedite the data processing and enhance the code maintainability. Minor changes were also done on the front-end logic for error handling and improved user interaction.
This commit removes unneeded OpenVPN related code and improves error handling in the alert system. All OpenVPN related functions and html files have been removed. Also, changes are made in the alerting module to raise exceptions instead of returning error messages, which provides a more pythonic way of error handling.
Modified the cred module in the db modules package. The insert statement under the try block was updated to return the result of the .execute() method. This will allow for better handling and control of the execution flow depending on the result of the insert operation.
The code changes focus on enhancing the server application's functionality by improving the error handling mechanism and streamlining the logic. Modifications include refining how servers get created, updated, and deleted, optimizing how ssh related actions are performed, and ensuring more accurate server scanning. The changes help reduce potential errors and make the application more efficient.
The code changes focus on enhancing the server application's functionality by improving the error handling mechanism and streamlining the logic. Modifications include refining how servers get created, updated, and deleted, optimizing how ssh related actions are performed, and ensuring more accurate server scanning. The changes help reduce potential errors and make the application more efficient.
The commit refactors the server-side modules of the Roxy-WI web interface to use JSON-based APIs for improved data exchange. Specifically, methods for user, group and SSH management have been updated to accept and return JSON data. Simultaneously, error handling is improved to give more informative responses instead of plain strings. The client-side JavaScript code is also refactored to accommodate these changes. Additionally, some minor corrections are made in the UI templates.
The error handling has been refactored in the Roxywi overview and routes files to raise and return more comprehensive exceptions. Unnecessary commented out JSON parsing code in the service installation file has been removed for better code clarity. Aside from these, various minor grammar and formatting fixes have been made to the README.md to improve readability.
This commit changes the term "UDP balancers" to "UDP listeners" across all language templates. This adjustment ensures consistency and correctness in how we refer to this network entity in different languages.
The code adjustments primarily focus on improving layout management and enhancing backend functionality. Specifically, the CSS styles have been modified to adjust the alignment and width of certain elements. Additionally, new HTML templates have been created to refine the display of server details and a new link has been added. In the ansible tasks, logic has been added to handle the installation of packages and modification of NGINX version retrieval. In the logs module, an exception has been added to handle cases where the syslog server IP is not defined.
The method `check_user_group_for_flask` has been updated to first check for 'user_uuid' and 'user_group_id' within the given kwargs. If these are not available, it will fall back to retrieve 'uuid' and 'group' from the cookies. This change makes the method more flexible in terms of data source it can utilize, and improves the module's usability when parameters are directly provided.
Removed a specific condition from the rsyslog configuration for haproxy. The condition was initially checking if the input was UDP which was unnecessary. The new configuration continues to correctly categorize logs into access, error, and status files based on their syslog severity.
Introduced an optional parameter in check_user_group_for_flask function to accept API tokens and return if it is provided. Enhanced error handling in get_all_statuses function in api_funct.py to catch and inform specific exceptions instead of returning a generic error message. Minor cleanups and import optimizations in other modules.
This commit primarily adds a function that validates IP addresses and a function that checks if a server field is filled in the script.js file. Also, it removes the token from several ajax requests, and improves error handling in server.py. In the users.js file, it updates the server info display functionality.
This commit includes a refactoring of the ansible setup script that simplifies the process of installing the python package 'passlib' by directly using pip3. Additionally, typos in the descriptors of certain tasks such as directory creation and SELINUX configuration have been corrected for better readability and understanding of the code.
This commit applies exception handling for the network operations methods and removes unused/commented-out code. The added exception handling checks for incorrect input to nettools methods and raises explicit exceptions with descriptive messages. This dramatically simplifies the debugging process, providing better visibility into runtime errors.
In the install/routes.py, the 'run_ansible' method call in the 'install' function has been updated to dynamically pass the 'service' name, resulting in a more flexible and adaptable code. Previously, it was hardcoded to run only the 'waf_service', which limited its usage.
The code for the WAF installation process has been refactored to improve error handling. The `service_mod.generate_waf_inv` function is now called with `service` instead of hardcoded service names, and error messages are now more descriptive. Additionally, the Ansible role file for WAF has been renamed from `waf.yml` to `waf_haproxy.yml` to better represent its role.
This commit streamlines the way user group data is handled, both in scripts and server-side logic. The group settings URL has been simplified and the logic for updating user groups also has been optimized. Eliminated unnecessary checks in the user.py module, and updated the routing logic for group data to utilize a single route with HTTP GET and PUT methods. Removed unsuccessful group changing errors.
This commit adjusts the 'create_user' and 'create_server' routes to include a decorator for getting user parameters. This will improve the handling of these methods, ensuring they receive any necessary user specific parameters.
This commit simplifies the SSH key handling functionality in the server module. Unnecessary definitions and methods for checking and handling different key types have been removed. Now, paramiko's standard load_private_key method is directly used to load the SSH keys, which has streamlined the code and made it more maintainable.
This commit updates the paths to several static files in various JavaScript files. The '/inc/' directory has been replaced with '/app/static/js/' to maintain consistency across the application. This change affects the ion.sound.min.js and fontawesome.min.js file locations and their corresponding references in script.js, index.html, main_head.html, and channel.js.
The JavaScript paths in many files have been updated to "/app/static/js". A new script for handling checker settings updates, "checker.js", has been added. The commit improves organisation of JavaScript resources by grouping them under a single directory and introduces new functionality for the checker service.
The requirements for el9, deb, and main have been updated to specifically use version 2.27.1 of the "requests" package. In addition, the date formatting function get_time_zoned_date in common.py has been refactored. The default format for the date has been moved to the function arguments, and the function now also checks if the provided date is an instance of datetime before processing it.