provisioning/docs/src/architecture/system-overview.md

2 lines
16 KiB
Markdown
Raw Normal View History

# System Overview\n\n## Executive Summary\n\nProvisioning is an **Infrastructure Automation Platform** built with a hybrid Rust/Nushell architecture. It enables Infrastructure as Code (IaC) with\nmulti-provider support (AWS, UpCloud, local), sophisticated workflow orchestration, and configuration-driven operations.\n\nThe system solves fundamental technical challenges through architectural innovation and hybrid language design.\n\n## High-Level Architecture\n\n### System Diagram\n\n```\n┌─────────────────────────────────────────────────────────────────┐\n│ User Interface Layer │\n├─────────────────┬─────────────────┬─────────────────────────────┤\n│ CLI Tools │ REST API │ Control Center UI │\n│ (Nushell) │ (Rust) │ (Web Interface) │\n└─────────────────┴─────────────────┴─────────────────────────────┘\n │\n┌─────────────────────────────────────────────────────────────────┐\n│ Orchestration Layer │\n├─────────────────────────────────────────────────────────────────┤\n│ Rust Orchestrator: Workflow Coordination & State Management │\n│ • Task Queue & Scheduling • Batch Processing │\n│ • State Persistence • Error Recovery & Rollback │\n│ • REST API Server • Real-time Monitoring │\n└─────────────────────────────────────────────────────────────────┘\n │\n┌─────────────────────────────────────────────────────────────────┐\n│ Business Logic Layer │\n├─────────────────┬─────────────────┬─────────────────────────────┤\n│ Providers │ Task Services │ Workflows │\n│ (Nushell) │ (Nushell) │ (Nushell) │\n│ • AWS │ • Kubernetes │ • Server Creation │\n│ • UpCloud │ • Storage │ • Cluster Deployment │\n│ • Local │ • Networking │ • Batch Operations │\n└─────────────────┴─────────────────┴─────────────────────────────┘\n │\n┌─────────────────────────────────────────────────────────────────┐\n│ Configuration Layer │\n├─────────────────┬─────────────────┬─────────────────────────────┤\n│ Nickel Schemas│ TOML Config │ Templates │\n│ • Type Safety │ • Hierarchy