The module is a rename (97% similar); everything else in the diff follows from the move: - stored_secret.rs: private `chain()` helper, the 8-line copy of the queue crate's `chain` the module called as `crate::chain`; the queue crate's public `chain` stays. - stored_secret.rs: `Duration::from_mins(5)` in `MAX_REREAD_DELAY` is unchanged moved code, not a new use. - swarm-secret-client Cargo.toml: gains futures-util, tokio and tracing as dependencies and tokio `test-util` plus tracing-subscriber as dev dependencies; the module and its tests use them. - swarm-queue-client Cargo.toml: drops futures-util and the tracing-subscriber dev dependency, which only the moved module used; its tokio dev comment is reworded to the tests that remain. - Cargo.lock: the same dependency moves, nothing else. - swarm-queue-client lib.rs: imports `swarm_secret_client::stored_secret`, and its tests use a small local `Store` in place of the moved module's test-only `Fake`, which is no longer reachable. - callers (hive-c0re, swarm-builder, swarm-ci-metrics, swarm-claude-login, swarm-controller, swarm-nats-auth, swarm-review-classifier): import path only; no re-export is left behind.
45 lines
1.7 KiB
TOML
45 lines
1.7 KiB
TOML
[package]
|
|
name = "swarm-secret-client"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
|
|
[dependencies]
|
|
# `Shared`, so every caller refused while a secret re-read runs waits on that
|
|
# one read (`stored_secret`).
|
|
futures-util.workspace = true
|
|
# `Identity` is re-exported by vaultrs, but the identity is built here (from
|
|
# the `BAO_*` files) rather than by its env defaults, so the dependency is
|
|
# direct rather than incidental.
|
|
reqwest.workspace = true
|
|
# vaultrs's own endpoint machinery, for the one endpoint it does not
|
|
# implement — see `client::WriteAclPolicy`.
|
|
rustify.workspace = true
|
|
rustify_derive.workspace = true
|
|
# `install_crypto_provider`, which the store client (reqwest, via vaultrs)
|
|
# needs before its first TLS handshake.
|
|
rustls.workspace = true
|
|
serde.workspace = true
|
|
# `read_versioned` decodes the data half of the response vaultrs hands back as
|
|
# a `serde_json::Value`.
|
|
serde_json.workspace = true
|
|
strum.workspace = true
|
|
thiserror.workspace = true
|
|
# `stored_secret` spawns its re-reads and times them out.
|
|
tokio.workspace = true
|
|
tracing.workspace = true
|
|
vaultrs.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
# `ring` as well, as every binary that links async-nats builds it: with one
|
|
# provider compiled in rustls picks it without an install, so the provider
|
|
# test would pass with `install_crypto_provider` doing nothing.
|
|
[dev-dependencies]
|
|
rustls = { workspace = true, features = ["ring"] }
|
|
# `test-util` for `#[tokio::test(start_paused = true)]`: the re-read backoff
|
|
# tests run on paused time.
|
|
tokio = { workspace = true, features = ["test-util"] }
|
|
# Capturing what a re-read logs, to check it names the client and never the
|
|
# secret.
|
|
tracing-subscriber.workspace = true
|