Convert the single binary crate into a Cargo workspace with two members: sunbeam-sdk (library) and sunbeam (thin binary). Moves build.rs to the SDK with adjusted .git/HEAD path for the nested layout.
66 lines
1.4 KiB
TOML
66 lines
1.4 KiB
TOML
[package]
|
|
name = "sunbeam-sdk"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
description = "Sunbeam SDK — reusable library for cluster management"
|
|
|
|
[features]
|
|
default = []
|
|
cli = ["clap"]
|
|
|
|
[dependencies]
|
|
# Core
|
|
thiserror = "2"
|
|
tokio = { version = "1", features = ["full"] }
|
|
clap = { version = "4", features = ["derive"], optional = true }
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
serde_yaml = "0.9"
|
|
tracing = "0.1"
|
|
|
|
# Kubernetes
|
|
kube = { version = "0.99", features = ["client", "runtime", "derive", "ws"] }
|
|
k8s-openapi = { version = "0.24", features = ["v1_32"] }
|
|
|
|
# HTTP + TLS
|
|
reqwest = { version = "0.12", features = ["json", "rustls-tls", "blocking"] }
|
|
|
|
# SSH
|
|
russh = "0.46"
|
|
russh-keys = "0.46"
|
|
|
|
# Crypto
|
|
rsa = "0.9"
|
|
pkcs8 = { version = "0.10", features = ["pem"] }
|
|
pkcs1 = { version = "0.7", features = ["pem"] }
|
|
sha2 = "0.10"
|
|
hmac = "0.12"
|
|
base64 = "0.22"
|
|
rand = "0.8"
|
|
|
|
# Certificate generation
|
|
rcgen = "0.14"
|
|
|
|
# SMTP
|
|
lettre = { version = "0.11", default-features = false, features = ["smtp-transport", "tokio1-rustls-tls", "builder", "hostname"] }
|
|
|
|
# Archive handling
|
|
flate2 = "1"
|
|
tar = "0.4"
|
|
|
|
# Async
|
|
futures = "0.3"
|
|
tokio-stream = "0.1"
|
|
|
|
# Utility
|
|
tempfile = "3"
|
|
dirs = "5"
|
|
chrono = { version = "0.4", features = ["serde"] }
|
|
|
|
[build-dependencies]
|
|
reqwest = { version = "0.12", features = ["blocking", "rustls-tls"] }
|
|
sha2 = "0.10"
|
|
flate2 = "1"
|
|
tar = "0.4"
|
|
chrono = "0.4"
|