88 lines
2.3 KiB
TOML
88 lines
2.3 KiB
TOML
[package]
|
|
name = "provisioning-orchestrator"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
authors.workspace = true
|
|
description = "Cloud-native infrastructure orchestrator with Nushell integration"
|
|
|
|
[dependencies]
|
|
# ============================================================================
|
|
# WORKSPACE DEPENDENCIES - Core async runtime and traits
|
|
# ============================================================================
|
|
tokio = { workspace = true, features = ["rt", "rt-multi-thread", "process", "io-util", "time", "fs"] }
|
|
futures = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
|
|
# Serialization and data handling
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
toml = { workspace = true }
|
|
chrono = { workspace = true }
|
|
uuid = { workspace = true }
|
|
|
|
# Error handling
|
|
anyhow = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
|
|
# Graph algorithms (for dependency resolution)
|
|
petgraph = { workspace = true }
|
|
|
|
# Logging framework (used throughout)
|
|
tracing = { workspace = true }
|
|
|
|
# Web server and API
|
|
axum = { workspace = true }
|
|
tower = { workspace = true, features = ["util"] }
|
|
tower-http = { workspace = true, features = ["cors", "trace"] }
|
|
hyper = { workspace = true }
|
|
|
|
# CLI interface
|
|
clap = { workspace = true }
|
|
|
|
# Logging configuration and output (binary-only)
|
|
tracing-subscriber = { workspace = true }
|
|
tracing-appender = { workspace = true }
|
|
|
|
# Docker/Container management
|
|
bollard = "0.17"
|
|
|
|
# HTTP client for DNS/OCI/services
|
|
reqwest = { workspace = true }
|
|
|
|
# LRU cache for OCI manifests
|
|
lru = "0.12"
|
|
|
|
# ============================================================================
|
|
# FEATURE-GATED OPTIONAL DEPENDENCIES
|
|
# ============================================================================
|
|
|
|
# SurrealDB storage backend (optional)
|
|
surrealdb = { workspace = true, optional = true }
|
|
|
|
[features]
|
|
default = []
|
|
surrealdb = ["dep:surrealdb"]
|
|
|
|
[dev-dependencies]
|
|
tokio-test = { workspace = true }
|
|
tempfile = { workspace = true }
|
|
assert_matches = { workspace = true }
|
|
criterion = { workspace = true, features = ["html_reports", "async_tokio"] }
|
|
|
|
# Library target for tests and external use
|
|
[lib]
|
|
name = "provisioning_orchestrator"
|
|
path = "src/lib.rs"
|
|
|
|
# Binary target
|
|
[[bin]]
|
|
name = "provisioning-orchestrator"
|
|
path = "src/main.rs"
|
|
|
|
[[bench]]
|
|
name = "storage_benchmarks"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "migration_benchmarks"
|
|
harness = false |