2020-04-24 10:10:01 +00:00
|
|
|
[package]
|
|
|
|
name = "garage"
|
2024-01-16 15:28:17 +00:00
|
|
|
version = "0.9.1"
|
2020-04-24 10:10:01 +00:00
|
|
|
authors = ["Alex Auvolat <alex@adnab.me>"]
|
|
|
|
edition = "2018"
|
2021-03-18 20:59:17 +00:00
|
|
|
license = "AGPL-3.0"
|
2020-07-07 12:14:58 +00:00
|
|
|
description = "Garage, an S3-compatible distributed object store for self-hosted deployments"
|
|
|
|
repository = "https://git.deuxfleurs.fr/Deuxfleurs/garage"
|
2021-11-09 11:24:04 +00:00
|
|
|
readme = "../../README.md"
|
2020-04-24 10:10:01 +00:00
|
|
|
|
2022-02-02 15:07:26 +00:00
|
|
|
autotests = false
|
|
|
|
|
2020-04-24 10:10:01 +00:00
|
|
|
[[bin]]
|
|
|
|
name = "garage"
|
|
|
|
path = "main.rs"
|
|
|
|
|
2022-02-02 14:35:52 +00:00
|
|
|
[[test]]
|
|
|
|
name = "integration"
|
|
|
|
path = "tests/lib.rs"
|
|
|
|
|
2020-04-24 10:10:01 +00:00
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
|
|
|
|
[dependencies]
|
2023-05-17 11:01:37 +00:00
|
|
|
format_table.workspace = true
|
2023-05-07 16:12:01 +00:00
|
|
|
garage_db.workspace = true
|
|
|
|
garage_api.workspace = true
|
|
|
|
garage_block.workspace = true
|
|
|
|
garage_model.workspace = true
|
|
|
|
garage_rpc.workspace = true
|
|
|
|
garage_table.workspace = true
|
|
|
|
garage_util.workspace = true
|
|
|
|
garage_web.workspace = true
|
2020-04-24 10:10:01 +00:00
|
|
|
|
2024-02-05 12:02:02 +00:00
|
|
|
backtrace.workspace = true
|
|
|
|
bytes.workspace = true
|
|
|
|
bytesize.workspace = true
|
|
|
|
timeago.workspace = true
|
|
|
|
parse_duration.workspace = true
|
|
|
|
hex.workspace = true
|
|
|
|
tracing.workspace = true
|
|
|
|
tracing-subscriber.workspace = true
|
|
|
|
rand.workspace = true
|
|
|
|
async-trait.workspace = true
|
|
|
|
sodiumoxide.workspace = true
|
|
|
|
structopt.workspace = true
|
|
|
|
git-version.workspace = true
|
|
|
|
|
|
|
|
serde.workspace = true
|
|
|
|
serde_bytes.workspace = true
|
|
|
|
toml.workspace = true
|
|
|
|
|
|
|
|
futures.workspace = true
|
|
|
|
futures-util.workspace = true
|
|
|
|
tokio.workspace = true
|
|
|
|
|
|
|
|
netapp.workspace = true
|
|
|
|
|
|
|
|
opentelemetry.workspace = true
|
|
|
|
opentelemetry-prometheus = { workspace = true, optional = true }
|
|
|
|
opentelemetry-otlp = { workspace = true, optional = true }
|
|
|
|
prometheus = { workspace = true, optional = true }
|
2022-05-24 10:16:39 +00:00
|
|
|
|
2022-02-02 14:35:52 +00:00
|
|
|
[dev-dependencies]
|
2024-02-05 12:02:02 +00:00
|
|
|
aws-config.workspace = true
|
|
|
|
aws-sdk-s3.workspace = true
|
|
|
|
chrono.workspace = true
|
|
|
|
http.workspace = true
|
|
|
|
hmac.workspace = true
|
2024-02-05 18:57:35 +00:00
|
|
|
http-body-util.workspace = true
|
2024-02-05 12:02:02 +00:00
|
|
|
hyper.workspace = true
|
2024-02-05 18:57:35 +00:00
|
|
|
hyper-util.workspace = true
|
2024-02-05 12:02:02 +00:00
|
|
|
mktemp.workspace = true
|
|
|
|
sha2.workspace = true
|
|
|
|
|
|
|
|
static_init.workspace = true
|
|
|
|
assert-json-diff.workspace = true
|
|
|
|
serde_json.workspace = true
|
|
|
|
base64.workspace = true
|
2022-05-10 11:16:57 +00:00
|
|
|
|
2023-05-19 10:52:14 +00:00
|
|
|
k2v-client.workspace = true
|
|
|
|
|
2022-05-10 11:16:57 +00:00
|
|
|
|
|
|
|
[features]
|
2023-05-17 12:30:53 +00:00
|
|
|
default = [ "bundled-libs", "metrics", "sled", "lmdb", "sqlite", "k2v" ]
|
2022-09-06 15:09:43 +00:00
|
|
|
|
2022-05-10 11:16:57 +00:00
|
|
|
k2v = [ "garage_util/k2v", "garage_api/k2v" ]
|
2022-09-06 15:09:43 +00:00
|
|
|
|
|
|
|
# Database engines, Sled is still our default even though we don't like it
|
|
|
|
sled = [ "garage_model/sled" ]
|
|
|
|
lmdb = [ "garage_model/lmdb" ]
|
|
|
|
sqlite = [ "garage_model/sqlite" ]
|
|
|
|
|
2022-10-18 16:38:20 +00:00
|
|
|
# Automatic registration and discovery via Consul API
|
|
|
|
consul-discovery = [ "garage_rpc/consul-discovery" ]
|
2022-09-06 15:09:43 +00:00
|
|
|
# Automatic registration and discovery via Kubernetes API
|
|
|
|
kubernetes-discovery = [ "garage_rpc/kubernetes-discovery" ]
|
2022-09-03 22:43:48 +00:00
|
|
|
# Prometheus exporter (/metrics endpoint).
|
|
|
|
metrics = [ "garage_api/metrics", "opentelemetry-prometheus", "prometheus" ]
|
2022-09-03 21:40:44 +00:00
|
|
|
# Exporter for the OpenTelemetry Collector.
|
2022-09-06 15:25:44 +00:00
|
|
|
telemetry-otlp = [ "opentelemetry-otlp" ]
|
2022-09-03 17:05:32 +00:00
|
|
|
|
|
|
|
# NOTE: bundled-libs and system-libs should be treat as mutually exclusive;
|
|
|
|
# exactly one of them should be enabled.
|
|
|
|
|
|
|
|
# Use bundled libsqlite instead of linking against system-provided.
|
|
|
|
bundled-libs = [ "garage_db/bundled-libs" ]
|
|
|
|
# Link against system-provided libsodium and libzstd.
|
2022-09-03 16:37:24 +00:00
|
|
|
system-libs = [ "garage_block/system-libs", "garage_rpc/system-libs", "sodiumoxide/use-pkg-config" ]
|