[package]
edition = "2024"
name = "secretspec"
version = "0.17.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Declarative secrets, every environment, any provider"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/cachix/secretspec"
resolver = "2"
[features]
age = ["dep:age"]
akv = [
"dep:azure_core",
"dep:azure_identity",
"dep:azure_security_keyvault_secrets",
]
awssm = [
"dep:aws-config",
"dep:aws-sdk-secretsmanager",
]
bws = []
cli = ["dep:toml_edit"]
default = [
"cli",
"keyring",
"kdbx",
"gcsm",
"awssm",
"vault",
"openbao",
"bws",
"akv",
"infisical",
"age",
"scaleway",
"sops",
]
gcsm = ["dep:google-cloud-secretmanager-v1"]
infisical = [
"dep:reqwest",
"tokio/sync",
]
kdbx = ["dep:keepass"]
keyring = [
"dep:keyring",
"dep:whoami",
]
openbao = [
"dep:reqwest",
"tokio/sync",
]
scaleway = ["dep:reqwest"]
sops = []
vault = [
"dep:reqwest",
"tokio/sync",
]
vendored-dbus = ["keyring?/vendored"]
[lib]
name = "secretspec"
path = "src/lib.rs"
[[bin]]
name = "secretspec"
path = "src/bin/secretspec.rs"
required-features = ["cli"]
[[test]]
name = "typed_scope_env"
path = "tests/typed_scope_env.rs"
[dependencies.age]
version = "0.12"
features = [
"armor",
"plugin",
"ssh",
]
optional = true
[dependencies.aws-config]
version = "1"
optional = true
[dependencies.aws-sdk-secretsmanager]
version = "1"
optional = true
[dependencies.azure_core]
version = "1.0.0"
optional = true
[dependencies.azure_identity]
version = "1.0.0"
optional = true
[dependencies.azure_security_keyvault_secrets]
version = "1.0.0"
optional = true
[dependencies.clap]
version = "4.0"
features = [
"derive",
"env",
]
[dependencies.colored]
version = "3.0"
[dependencies.data-encoding]
version = "2"
[dependencies.detect-coding-agent]
version = "0.1"
[dependencies.dotenvy]
version = "0.15"
[dependencies.etcetera]
version = "0.11"
[dependencies.google-cloud-secretmanager-v1]
version = "1.2"
optional = true
[dependencies.inquire]
version = "0.9.4"
features = ["experimental-multiline-input"]
[dependencies.jiff]
version = "0.2"
[dependencies.keepass]
version = "0.13.17"
features = ["save_kdbx4"]
optional = true
[dependencies.keyring]
version = "3.6.2"
features = [
"sync-secret-service",
"windows-native",
"apple-native",
]
optional = true
[dependencies.linkme]
version = "0.3"
[dependencies.miette]
version = "7.6"
features = ["fancy"]
[dependencies.percent-encoding]
version = "2.3"
[dependencies.rand]
version = "0.9"
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls-native-roots",
]
optional = true
default-features = false
[dependencies.rsa]
version = "0.9"
features = ["pem"]
[dependencies.secrecy]
version = "0.10.3"
features = ["serde"]
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.tempfile]
version = "3.0"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1"
features = [
"rt",
"rt-multi-thread",
]
[dependencies.toml]
version = "0.9"
[dependencies.toml_edit]
version = "0.23"
optional = true
[dependencies.url]
version = "2.5.4"
[dependencies.uuid]
version = "1"
features = [
"serde",
"v4",
]
[dependencies.whoami]
version = "2.0"
optional = true
[dev-dependencies.jsonschema]
version = "0.48.5"
default-features = false