[package]
edition = "2024"
name = "gruezi"
version = "0.1.2"
authors = ["Nicolas Embriz <nbari@tequila.io>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Service Discovery & Distributed Key-Value Store"
readme = "README.md"
keywords = [
"service-discovery",
"distributed",
"raft",
"key-value",
"consensus",
]
categories = [
"command-line-utilities",
"network-programming",
]
license = "BSD-3-Clause"
repository = "https://github.com/gruezi-io/gruezi"
[[package.metadata.generate-rpm.assets]]
source = "target/release/gruezi"
dest = "/usr/bin/gruezi"
mode = "0755"
[[package.metadata.generate-rpm.assets]]
source = "contrib/systemd/gruezi.service"
dest = "/etc/systemd/system/gruezi.service"
mode = "0644"
[[package.metadata.generate-rpm.assets]]
source = "contrib/systemd/gruezi.env.example"
dest = "/etc/gruezi/gruezi.env"
mode = "0640"
[package.metadata.deb]
assets = [
[
"target/release/gruezi",
"/usr/bin/gruezi",
"755",
],
[
"contrib/systemd/gruezi.service",
"/etc/systemd/system/gruezi.service",
"644",
],
[
"contrib/systemd/gruezi.env.example",
"/etc/gruezi/gruezi.env",
"640",
],
]
depends = ""
maintainer-scripts = "contrib/debian"
[lib]
name = "gruezi"
path = "src/lib.rs"
[[bin]]
name = "gruezi"
path = "src/bin/gruezi.rs"
[[test]]
name = "ha_addresses"
path = "tests/ha_addresses.rs"
[[test]]
name = "ha_hooks"
path = "tests/ha_hooks.rs"
[[test]]
name = "ha_mode"
path = "tests/ha_mode.rs"
[dependencies.anyhow]
version = "1"
[dependencies.axum]
version = "0.8"
[dependencies.base64]
version = "0.22"
[dependencies.chrono]
version = "0.4"
[dependencies.clap]
version = "4.5"
features = ["derive"]
[dependencies.once_cell]
version = "1.21"
[dependencies.opentelemetry]
version = "0.31.0"
[dependencies.opentelemetry-otlp]
version = "0.31.0"
features = [
"grpc-tonic",
"gzip-tonic",
"tls",
"tls-roots",
"trace",
]
[dependencies.opentelemetry_sdk]
version = "0.31.0"
features = ["rt-tokio"]
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_yaml]
version = "0.9"
[dependencies.socket2]
version = "0.6"
[dependencies.tokio]
version = "1.50.0"
features = ["full"]
[dependencies.tonic]
version = "0.14.5"
features = ["tls-native-roots"]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-futures]
version = "0.2.5"
[dependencies.tracing-opentelemetry]
version = "0.32.1"
[dependencies.tracing-subscriber]
version = "0.3.22"
features = ["env-filter"]
[dependencies.ulid]
version = "1.2.1"
[build-dependencies.built]
version = "0.8.0"
features = ["git2"]
[lints.clippy]
all = "deny"
await_holding_lock = "deny"
complexity = "deny"
correctness = "deny"
expect_used = "deny"
indexing_slicing = "deny"
large_stack_arrays = "deny"
needless_borrow = "deny"
needless_collect = "deny"
panic = "deny"
pedantic = "deny"
perf = "deny"
suspicious = "deny"
unwrap_used = "deny"
[lints.clippy.nursery]
level = "allow"
priority = -1
[lints.rust]
warnings = "deny"
[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
panic = "abort"
strip = true