Skip to content

Recipe-Web-App/system-operations-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

44 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

System Control CLI

A comprehensive Python-based command-line interface for managing distributed systems, deployments, monitoring, and infrastructure operations. Built with modern CLI libraries to provide an exceptional developer experience.

πŸš€ Features

Core System Management

  • Service Lifecycle: Deploy, start, stop, restart, and monitor individual services
  • System-wide Operations: Bulk operations across your entire distributed system
  • Environment Management: Multi-environment support (dev, staging, production)
  • Configuration Profiles: Named configuration sets for different scenarios
  • Template System: Parameterized deployment templates with variable substitution

Advanced Operations

  • Interactive Mode: REPL-style interface for exploration and experimentation
  • Dry Run Mode: Preview all changes before execution
  • Batch Operations: YAML/JSON-defined workflows for complex operations
  • Parallel Execution: Concurrent operations with rich progress visualization
  • History & Rollback: Command history with deployment rollback capabilities

Monitoring & Observability

  • Real-time Dashboards: Terminal-based live metrics and system status
  • Alert Management: Custom alerting rules and notification channels
  • Log Aggregation: Centralized log viewing with filtering and search
  • Health Check Orchestration: Custom health check definitions and scheduling
  • Performance Profiling: Resource usage tracking and bottleneck identification

Traffic & Deployment Management

  • Blue-Green Deployments: Zero-downtime deployment strategies
  • Canary Releases: Gradual traffic shifting for safe deployments
  • Traffic Splitting: Advanced traffic management and routing
  • Backup & Restore: Automated backup scheduling and point-in-time recovery

Developer Experience

  • Plugin System: Hot-loadable plugins for custom integrations
  • Shell Completion: Advanced tab completion for all commands
  • Embedded Scripting: Python scripting support for complex automation
  • API Server Mode: REST API for integration with other tools
  • Rich CLI Interface: Beautiful terminal UI with colors, tables, and progress bars

Security & Integration

  • Secret Management: HashiCorp Vault and Kubernetes secrets integration
  • Service Discovery: Dynamic service registration and discovery
  • Resource Optimization: Auto-scaling recommendations and right-sizing
  • Configuration Validation: Schema validation for all configurations

πŸ› οΈ Built With

This project leverages the best Python CLI libraries for an exceptional user experience:

  • Click - Command-line interface creation
  • Rich - Rich text and beautiful formatting
  • Typer - Modern CLI framework with type hints
  • InquirerPy - Interactive command-line prompts
  • sh - Python subprocess interface
  • Plumbum - Shell combinators and more
  • Cloup - Click extensions for better UX
  • Cement - Advanced CLI application framework

πŸ—οΈ Architecture

The system is designed as a modular, extensible CLI framework:

  • Core Engine: Central command processing and plugin management
  • Plugin System: Hot-loadable modules for specific functionality
  • Configuration Layer: Multi-environment, profile-based configuration
  • Integration Layer: Standardized interfaces for external tools
  • API Layer: RESTful API for programmatic access

πŸ“š Documentation

Comprehensive documentation is available in the docs/ directory:

πŸš€ Quick Start

# Install dependencies with Poetry
poetry install

# Add ops to PATH (makes 'ops' available globally)
poetry run ops-install
source ~/.zshrc  # or open a new terminal

# Initialize configuration
ops init

# Check system status
ops status

# Show version
ops --version

πŸ“– Available Commands

Global Options

Option Description
--version, -V Show version and exit
--verbose, -v Enable verbose output
--debug Enable debug mode
--help Show help message

Commands

Command Description
ops status Show system status and health information
ops status --verbose Show detailed status with architecture info
ops init Initialize configuration at ~/.config/ops/
ops init --force Overwrite existing configuration
ops init --template <name> Use a specific template

Installation Scripts

Command Description
poetry run ops-install Add ops to your PATH
poetry run ops-uninstall Remove ops from your PATH

🀝 Contributing

We welcome contributions! Please see our Contributing Guide for details on:

  • Development setup
  • Code standards
  • Testing guidelines
  • Pull request process

πŸ“‹ Roadmap

See our project roadmap for planned features and improvements.

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ†˜ Support

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •