pub(crate) struct Args {Show 17 fields
pub(crate) addr: SocketAddr,
pub(crate) fleet_backend: FleetBackend,
pub(crate) k8s_caliband_ca_file: Option<PathBuf>,
pub(crate) k8s_caliband_token_file: Option<PathBuf>,
pub(crate) k8s_caliband_server_name: String,
pub(crate) kubeconfig: Option<PathBuf>,
pub(crate) data_dir: Option<PathBuf>,
pub(crate) host: String,
pub(crate) poll_interval_ms: u64,
pub(crate) no_autostart: bool,
pub(crate) caliband_bin: String,
pub(crate) default_env: Vec<(String, String)>,
pub(crate) retention_days: u64,
pub(crate) database_url: Option<String>,
pub(crate) replica_id: Option<String>,
pub(crate) lease_ttl_secs: f64,
pub(crate) heartbeat_interval_ms: Option<u64>,
}Expand description
Prospero control-plane daemon.
Fields§
§addr: SocketAddrAddress to bind the HTTP API + dashboard on.
fleet_backend: FleetBackendFleet control-plane backend: local (caliband over Unix) or k8s
(CalibanTask CRs; requires a build with --features k8s). See
docs/container.md “Fleet backends”.
k8s_caliband_ca_file: Option<PathBuf>k8s only: PEM CA bundle trusting caliband’s session-plane serving cert. When set, per-agent dials use TLS; unset ⇒ plaintext (unchanged).
k8s_caliband_token_file: Option<PathBuf>k8s only: file holding the session-plane bearer token (contents trimmed). When set, per-agent dials present the token; unset ⇒ no token.
k8s_caliband_server_name: Stringk8s only: SNI / cert-validation name for the session-plane TLS check.
kubeconfig: Option<PathBuf>k8s only: explicit kubeconfig file. Unset ⇒ infer (in-cluster, then ambient kubeconfig).
data_dir: Option<PathBuf>Directory for the registry and event store.
host: StringHost identity reported in fleet snapshots.
poll_interval_ms: u64Poll interval in milliseconds.
no_autostart: boolDo not auto-start caliband daemons for registered repos.
caliband_bin: StringPath/name of the caliban daemon binary used for autostart.
default_env: Vec<(String, String)>Default env var applied under every repo’s resolved config (repeatable).
retention_days: u64Delete events older than this many days on an hourly loop. 0 disables.
database_url: Option<String>Postgres connection URL. When set, prosperod runs in CLUSTERED mode (Postgres store/config + LISTEN/NOTIFY bus + leased ownership); when unset, it runs STANDALONE (sqlite + in-process bus + self-owns-all).
replica_id: Option<String>Clustered only: this replica’s identity for lease ownership. Defaults to the HOSTNAME env (the pod name under k8s). MUST be unique per replica.
lease_ttl_secs: f64Clustered only: lease time-to-live in seconds. A stream’s owner must heartbeat within this window or a peer may take the stream over.
heartbeat_interval_ms: Option<u64>Clustered only: how often (ms) to renew held leases. Defaults to a third of the lease TTL.
Trait Implementations§
Source§impl Args for Args
impl Args for Args
Source§fn group_id() -> Option<Id>
fn group_id() -> Option<Id>
ArgGroup::id][crate::ArgGroup::id] for this set of argumentsSource§fn augment_args<'b>(__clap_app: Command) -> Command
fn augment_args<'b>(__clap_app: Command) -> Command
Source§fn augment_args_for_update<'b>(__clap_app: Command) -> Command
fn augment_args_for_update<'b>(__clap_app: Command) -> Command
Command] so it can instantiate self via
[FromArgMatches::update_from_arg_matches_mut] Read moreSource§impl FromArgMatches for Args
impl FromArgMatches for Args
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§impl Parser for Args
impl Parser for Args
§fn parse_from<I, T>(itr: I) -> Self
fn parse_from<I, T>(itr: I) -> Self
§fn try_parse_from<I, T>(itr: I) -> Result<Self, Error>
fn try_parse_from<I, T>(itr: I) -> Result<Self, Error>
§fn update_from<I, T>(&mut self, itr: I)
fn update_from<I, T>(&mut self, itr: I)
§fn try_update_from<I, T>(&mut self, itr: I) -> Result<(), Error>
fn try_update_from<I, T>(&mut self, itr: I) -> Result<(), Error>
Auto Trait Implementations§
impl Freeze for Args
impl RefUnwindSafe for Args
impl Send for Args
impl Sync for Args
impl Unpin for Args
impl UnsafeUnpin for Args
impl UnwindSafe for Args
Blanket Implementations§
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
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>
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