pub struct Deployment {
pub base: Option<String>,
pub volumes: BTreeMap<String, VolumeSpec>,
pub storages: BTreeMap<String, StorageSpec>,
}Expand description
The deployment file zenctl storage gen --deployment reads (#393).
Deliberately small: a base, the volumes, and one entry per storage naming
its class — the selector, the strip_prefix and the tombstone
lifespan are derived, because typing them is where a router that starts
happily and stores nothing comes from (RFC 09 §2). Backend parameters pass
through verbatim; this type validates the convention’s part and not the
backend’s.
base = "zensight" # optional; default = --base / context / ""
[volumes.fs]
plugin = "fs" # memory | fs | rocksdb | influxdb | redb | <other>
# history = "latest" # the plugin fixes it, except redb (per volume, RFC 09 §2.1)
dir = "/var/lib/zenoh/fs" # every other key passes through to the volume block
[volumes.influxdb]
plugin = "influxdb"
url = "http://localhost:8086"
[storages.latest]
class = "state" # state | telemetry | events | catalog | catalog-pdns
volume = "fs"
replication = true # or a table of RFC 09 §2.2 parameters
complete = true # honoured only where §2.2 allows it
params = { dir = "latest" } # merged into `volume: { id: …, … }`
[storages.timeseries]
class = "telemetry"
volume = "influxdb"
params = { db = "telemetry" }
gc_margin = 2.0 # lifespan = ceil(max ttl_s × margin); default 2.0Fields§
§base: Option<String>The deployment base (RFC 03 §1.1). None = take the observer’s
resolved --base, the empty base being the bus-root deployment.
volumes: BTreeMap<String, VolumeSpec>§storages: BTreeMap<String, StorageSpec>Trait Implementations§
Source§impl Clone for Deployment
impl Clone for Deployment
Source§fn clone(&self) -> Deployment
fn clone(&self) -> Deployment
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for Deployment
impl Debug for Deployment
Source§impl Default for Deployment
impl Default for Deployment
Source§fn default() -> Deployment
fn default() -> Deployment
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for Deployment
impl<'de> Deserialize<'de> for Deployment
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Deployment
impl RefUnwindSafe for Deployment
impl Send for Deployment
impl Sync for Deployment
impl Unpin for Deployment
impl UnsafeUnpin for Deployment
impl UnwindSafe for Deployment
Blanket Implementations§
Source§impl<Source> AccessAs for Source
impl<Source> AccessAs for Source
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more