Provisioning Logo

Provisioning

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:

  1. Prerequisites - System requirements and dependencies
  2. Installation - Install the platform
  3. Quick Start - 5-minute deployment tutorial
  4. 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.