pub struct SiteBackend {
pub backend: StaticBackendDispatcher,
pub shasta_base_url: String,
pub shasta_root_cert: Vec<u8>,
pub socks5_proxy: Option<String>,
pub vault_base_url: Option<String>,
pub gitea_base_url: String,
pub k8s_api_url: Option<String>,
}Expand description
All per-site connection data the server needs to talk to backend APIs.
Built once at startup from a [sites.X] block in server.toml,
then owned by ServerState::sites inside a HashMap keyed by
the site name. The matching [sites.X] block is selected per
request from the X-Manta-Site header.
Borrowed per request as an common::app_context::InfraContext
via ServerState::infra_context so the service layer can pass
the per-site bundle around without taking ownership.
Fields§
§backend: StaticBackendDispatcherDispatches API calls to the configured CSM or OpenCHAMI backend.
shasta_base_url: StringBase URL for the CSM/OpenCHAMI API (e.g. https://api.cluster/apis).
shasta_root_cert: Vec<u8>PEM-encoded root CA certificate for the backend; empty vec skips verification.
socks5_proxy: Option<String>SOCKS5 proxy URL; None means direct connections.
vault_base_url: Option<String>HashiCorp Vault base URL; None means features requiring vault return 501.
gitea_base_url: StringGitea VCS base URL derived from the site base URL.
k8s_api_url: Option<String>Kubernetes API URL; None means console and log-streaming endpoints return 501.
Auto Trait Implementations§
impl Freeze for SiteBackend
impl !RefUnwindSafe for SiteBackend
impl Send for SiteBackend
impl Sync for SiteBackend
impl Unpin for SiteBackend
impl !UnwindSafe for SiteBackend
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