Skip to content

Mirage Demo 2 to Beta#874

Merged
dmytrotkk merged 53 commits into
mirage-betafrom
mirage
Jul 3, 2025
Merged

Mirage Demo 2 to Beta#874
dmytrotkk merged 53 commits into
mirage-betafrom
mirage

Conversation

@dmytrotkk

Copy link
Copy Markdown
Collaborator

This pull request introduces several changes to improve the functionality, structure, and maintainability of the node_cli project. 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:

    • Replaced the old environment-based configuration system with a new user.py module that uses dataclasses for configuration management. This includes classes like BaseUserConfig, MirageUserConfig, and SkaleUserConfig. The new system provides better validation and structure for user configurations. (node_cli/configs/user.py, node_cli/configs/user.pyR1-R188)
    • Deprecated the old env.py module and moved its functionality to the new user.py system. (node_cli/configs/env.py, node_cli/configs/env.pyL1-L146)
  • CLI Commands for Mirage Nodes:

    • Added new commands for Mirage node management, including migrate, repair, and cleanup. These commands improve the flexibility of node operations. (node_cli/cli/mirage_node.py, node_cli/cli/mirage_node.pyR101-R146)
    • Removed the migrate command from mirage_boot.py and moved its functionality to mirage_node.py for better organization. (node_cli/cli/mirage_boot.py, node_cli/cli/mirage_boot.pyL79-L93)

Refactorings and Code Quality Improvements:

  • Refactored Static Config Handling:

    • Moved the get_static_params function from checks.py to a dedicated static_config module for better modularity. (node_cli/core/checks.py, [1] [2]
  • Improved Imports and Code Readability:

    • Reorganized imports across multiple files for clarity and consistency. For example, imports in mirage_boot.py and mirage_node.py were cleaned up and optimized. (node_cli/cli/mirage_boot.py, [1]; node_cli/cli/mirage_node.py, [2]

Bug Fixes:

  • Environment Variable Fix:

  • Redis Integration:

    • Added support for Redis by introducing a REDIS_URI environment variable and updating the CI workflow to run Redis during tests. (node_cli/configs/__init__.py, [1]; .github/workflows/test.yml, [2]

Minor Changes:

These changes collectively enhance the usability, maintainability, and functionality of the node_cli project.

@dmytrotkk dmytrotkk self-assigned this Jul 3, 2025
@dmytrotkk dmytrotkk merged commit 60be08b into mirage-beta Jul 3, 2025
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants