Provisioning Platform Documentation
Welcome to the Provisioning Platform documentation. This is an enterprise-grade Infrastructure as Code (IaC) platform built with Rust, Nushell, and Nickel.
What is Provisioning
Provisioning is a comprehensive infrastructure automation platform that manages complete infrastructure lifecycles across multiple cloud providers. The platform emphasizes type-safety, configuration-driven design, and workspace-first organization.
Key Features
- Workspace Management: Default mode for organizing infrastructure, settings, schemas, and extensions
- Type-Safe Configuration: Nickel-based configuration system with validation and contracts
- Multi-Cloud Support: Unified interface for AWS, UpCloud, and local providers
- Modular CLI Architecture: 111+ commands with 84% code reduction through modularity
- Batch Workflow Engine: Orchestrate complex multi-cloud operations
- Complete Security System: Authentication, authorization, encryption, and compliance
- Extensible Architecture: Custom providers, task services, and plugins
Getting Started
New users should start with:
- Prerequisites - System requirements and dependencies
- Installation - Install the platform
- Quick Start - 5-minute deployment tutorial
- First Deployment - Comprehensive walkthrough
Documentation Structure
- Getting Started: Installation and initial setup
- User Guides: Workflow tutorials and best practices
- Infrastructure as Code: Nickel configuration and schema reference
- Platform Features: Core capabilities and systems
- Operations: Deployment, monitoring, and maintenance
- Security: Complete security system documentation
- Development: Extension and plugin development
- API Reference: REST API and CLI command reference
- Architecture: System design and ADRs
- Examples: Practical use cases and patterns
- Troubleshooting: Problem-solving guides
Core Technologies
- Rust: Platform services and performance-critical components
- Nushell: Scripting, CLI, and automation
- Nickel: Type-safe infrastructure configuration
- SecretumVault: Secrets management integration
Workspace-First Approach
Provisioning uses workspaces as the default organizational unit. A workspace contains:
- Infrastructure definitions (Nickel schemas)
- Environment-specific settings
- Custom extensions and providers
- Deployment state and metadata
All operations work within workspace context, providing isolation and consistency.
Support and Community
- Issues: Report bugs and request features on GitHub
- Documentation: This documentation site
- Examples: See the Examples section
License
See project LICENSE file for details.