provisioning/docs/src/README.md

80 lines
3.1 KiB
Markdown
Raw Normal View History

2026-01-14 04:53:21 +00:00
<p align="center">
2026-01-17 03:58:28 +00:00
<img src="resources/provisioning_logo.svg" alt="Provisioning Logo" width="300"/>
2026-01-14 04:53:21 +00:00
</p>
2026-01-17 03:58:28 +00:00
2026-01-14 04:53:21 +00:00
<p align="center">
2026-01-17 03:58:28 +00:00
<img src="resources/logo-text.svg" alt="Provisioning" width="500"/>
2026-01-14 04:53:21 +00:00
</p>
# Provisioning Platform Documentation
2026-01-17 03:58:28 +00:00
Welcome to the Provisioning Platform documentation. This is an enterprise-grade Infrastructure
as Code (IaC) platform built with Rust, Nushell, and Nickel.
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
## What is Provisioning
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
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.
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
## Key Features
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
- **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
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
## Getting Started
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
New users should start with:
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
1. [Prerequisites](getting-started/prerequisites.md) - System requirements and dependencies
2. [Installation](getting-started/installation.md) - Install the platform
3. [Quick Start](getting-started/quick-start.md) - 5-minute deployment tutorial
4. [First Deployment](getting-started/first-deployment.md) - Comprehensive walkthrough
2026-01-14 04:53:21 +00:00
## Documentation Structure
2026-01-17 03:58:28 +00:00
- **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
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
## Core Technologies
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
- **Rust**: Platform services and performance-critical components
- **Nushell**: Scripting, CLI, and automation
- **Nickel**: Type-safe infrastructure configuration
- **SecretumVault**: Secrets management integration
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
## Workspace-First Approach
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
Provisioning uses workspaces as the default organizational unit. A workspace contains:
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
- Infrastructure definitions (Nickel schemas)
- Environment-specific settings
- Custom extensions and providers
- Deployment state and metadata
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
All operations work within workspace context, providing isolation and consistency.
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
## Support and Community
2026-01-14 04:53:21 +00:00
2026-01-17 03:58:28 +00:00
- **Issues**: Report bugs and request features on GitHub
- **Documentation**: This documentation site
- **Examples**: See the [Examples](examples/README.md) section
2026-01-14 04:53:21 +00:00
## License
2026-01-17 03:58:28 +00:00
See project LICENSE file for details.