[package]
name = "initium"
version = "1.1.0"
edition = "2021"
rust-version = "1.88"
authors = ["Kitstream <opensource@kitstream.io>"]
description = "Swiss-army toolbox for Kubernetes initContainers — wait-for, migrate, seed, render, fetch in a single static Rust binary"
license = "Apache-2.0"
repository = "https://github.com/KitStream/initium"
homepage = "https://github.com/KitStream/initium"
documentation = "https://docs.rs/initium"
keywords = ["kubernetes", "initcontainer", "sidecar", "container", "devops"]
categories = ["command-line-utilities", "development-tools"]
readme = "README.md"
exclude = ["tests/", "examples/", ".github/", "charts/", "docs/", ".claude/"]
[[bin]]
name = "initium"
path = "src/main.rs"
[features]
default = ["sqlite", "postgres", "mysql"]
sqlite = ["dep:rusqlite"]
postgres = ["dep:postgres"]
mysql = ["dep:mysql"]
[dependencies]
clap = { version = "4", features = ["derive", "env"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.9"
rand = "0.8"
ureq = { version = "2", features = ["tls"], default-features = false }
rustls = { version = "0.23", default-features = false, features = ["ring", "logging", "std", "tls12"] }
minijinja = "2"
sha2 = "0.10"
base64 = "0.22"
rusqlite = { version = "0.31", features = ["bundled"], optional = true }
postgres = { version = "0.19", optional = true }
mysql = { version = "25", optional = true }
[dev-dependencies]
tempfile = "3"
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
strip = true
panic = "abort"