[package]
edition = "2024"
name = "ferroclass"
version = "0.12.0"
authors = ["Michael Jansen <ferroclass@michael-jansen.biz>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Hierarchical inventory management tool (reclass compatible)"
homepage = "https://github.com/jansenm/ferroclass"
documentation = "https://docs.rs/ferroclass"
readme = "README.md"
keywords = [
"reclass",
"inventory",
"ansible",
"salt",
"configuration",
]
categories = [
"command-line-utilities",
"config",
]
license = "MPL-2.0"
repository = "https://github.com/jansenm/ferroclass"
[features]
default = []
manpages = ["clap_mangen"]
python = ["pyo3"]
[lib]
name = "ferroclass"
crate-type = [
"cdylib",
"rlib",
]
path = "src/lib.rs"
[[bin]]
name = "ferroclass"
path = "src/bin/reclass/main.rs"
[[bin]]
name = "ferroclass-ansible"
path = "src/bin/reclass-ansible/main.rs"
[[bin]]
name = "ferroclass-salt"
path = "src/bin/reclass-salt/main.rs"
[[bin]]
name = "generate-manpages"
path = "src/bin/generate-manpages/main.rs"
required-features = ["manpages"]
[[test]]
name = "class_merge"
path = "tests/class_merge.rs"
[[test]]
name = "e2e"
path = "tests/e2e.rs"
[[test]]
name = "inventory_merge"
path = "tests/inventory_merge.rs"
[[test]]
name = "inventory_yaml_file"
path = "tests/inventory_yaml_file.rs"
[[test]]
name = "inventory_yaml_fs"
path = "tests/inventory_yaml_fs.rs"
[[test]]
name = "output_snapshot"
path = "tests/output_snapshot.rs"
[[test]]
name = "repository"
path = "tests/repository.rs"
[[test]]
name = "value_merge"
path = "tests/value_merge.rs"
[dependencies.chrono]
version = "0.4.44"
[dependencies.clap]
version = "4.5.50"
features = ["derive"]
[dependencies.clap_mangen]
version = "0.2.33"
optional = true
[dependencies.globset]
version = "0.4"
[dependencies.hashlink]
version = "0.11"
features = ["serde_impl"]
[dependencies.indoc]
version = "2.0.7"
[dependencies.pyo3]
version = "0.23"
features = ["extension-module"]
optional = true
[dependencies.regex]
version = "1"
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.149"
[dependencies.serde_yml]
version = "0.0.12"
[dependencies.shellexpand]
version = "3.1.1"
[dependencies.snafu]
version = "0.9.0"
[dependencies.tracing]
version = "0.1.41"
[dependencies.tracing-subscriber]
version = "0.3.20"
[dependencies.walkdir]
version = "2.5.0"
[dependencies.yaml-rust2]
version = "0.11.0"
[dev-dependencies.insta]
version = "1.42"
features = ["yaml"]
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(tarpaulin_include)"]