[package]
edition = "2021"
rust-version = "1.85"
name = "draupnir"
version = "0.1.8"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Draupnir — the nordisk boot/provisioning library: fire up a runtime from one BootSpec across three backends (KVM via tunnr · OCI container · Redfish bare-metal virtual-media) and drive its power lifecycle. Odin's ring that drips eight identical copies → boot a fleet of identical machines from one ISO."
readme = "README.md"
keywords = [
"boot",
"provisioning",
"redfish",
"kvm",
"container",
]
categories = [
"virtualization",
"os",
]
license = "MIT OR Apache-2.0"
repository = "https://codeberg.org/nordisk/draupnir"
[features]
backend-oci = [
"dep:bollard",
"dep:tokio",
"dep:futures",
"dep:tar",
]
backend-redfish = [
"dep:ureq",
"dep:serde_json",
]
backend-tunnr = [
"dep:tunnr-vm",
"seed",
]
default = []
seed = ["dep:fatfs"]
testmatrix = [
"dep:nornir-testmatrix",
"nornir-testmatrix/testmatrix",
]
[lib]
name = "draupnir"
path = "src/lib.rs"
[[test]]
name = "live_oci_published_port"
path = "tests/live_oci_published_port.rs"
[[test]]
name = "testmatrix_rows"
path = "tests/testmatrix_rows.rs"
[[bench]]
name = "fleet_boot"
path = "benches/fleet_boot.rs"
harness = false
[dependencies.bollard]
version = "0.20"
optional = true
[dependencies.fatfs]
version = "0.3"
optional = true
[dependencies.futures]
version = "0.3"
optional = true
[dependencies.nornir-testmatrix]
version = "0.2"
optional = true
default-features = false
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.tar]
version = "0.4"
optional = true
[dependencies.tokio]
version = "1"
features = ["rt-multi-thread"]
optional = true
[dependencies.tunnr-vm]
version = "0.1"
optional = true
[dependencies.ureq]
version = "3"
features = [
"rustls",
"json",
"gzip",
]
optional = true
default-features = false
[dev-dependencies.criterion]
version = "0.5"
default-features = false