Mirage Demo 2 to Beta#874
Merged
Merged
Conversation
Drop node_cli.status. Use redis instead
Add mirage migrate command
Fix mirage boot api container
Add mirage cleanup command
Fix cleanup
badrogger
approved these changes
Jul 3, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces several changes to improve the functionality, structure, and maintainability of the
node_cliproject. The most notable updates include the introduction of a new user configuration system, the addition of new CLI commands for managing Mirage nodes, and various refactorings and bug fixes.New Features and Enhancements:
User Configuration System:
user.pymodule that uses dataclasses for configuration management. This includes classes likeBaseUserConfig,MirageUserConfig, andSkaleUserConfig. The new system provides better validation and structure for user configurations. (node_cli/configs/user.py, node_cli/configs/user.pyR1-R188)env.pymodule and moved its functionality to the newuser.pysystem. (node_cli/configs/env.py, node_cli/configs/env.pyL1-L146)CLI Commands for Mirage Nodes:
migrate,repair, andcleanup. These commands improve the flexibility of node operations. (node_cli/cli/mirage_node.py, node_cli/cli/mirage_node.pyR101-R146)migratecommand frommirage_boot.pyand moved its functionality tomirage_node.pyfor better organization. (node_cli/cli/mirage_boot.py, node_cli/cli/mirage_boot.pyL79-L93)Refactorings and Code Quality Improvements:
Refactored Static Config Handling:
get_static_paramsfunction fromchecks.pyto a dedicatedstatic_configmodule for better modularity. (node_cli/core/checks.py, [1] [2]Improved Imports and Code Readability:
mirage_boot.pyandmirage_node.pywere cleaned up and optimized. (node_cli/cli/mirage_boot.py, [1];node_cli/cli/mirage_node.py, [2]Bug Fixes:
Environment Variable Fix:
DOCKER_DAEMON_CONFIG_PATHconstant. (node_cli/configs/__init__.py, node_cli/configs/init.pyL149-R149)Redis Integration:
REDIS_URIenvironment variable and updating the CI workflow to run Redis during tests. (node_cli/configs/__init__.py, [1];.github/workflows/test.yml, [2]Minor Changes:
validate_env_alias_or_addresstovalidate_alias_or_addressfor clarity. (node_cli/configs/alias_address_validation.py, node_cli/configs/alias_address_validation.pyL41-R41)helper-scripts. (helper-scripts, helper-scriptsL1-R1)These changes collectively enhance the usability, maintainability, and functionality of the
node_cliproject.