pub struct KubernetesOrchestrator {
pub(crate) client: Client,
pub(crate) kubernetes_namespace: String,
pub(crate) config: KubernetesOrchestratorConfig,
pub(crate) secret_api: Api<Secret>,
pub(crate) vpc_endpoint_api: Api<VpcEndpoint>,
pub(crate) namespaces: Mutex<BTreeMap<String, Arc<dyn NamespacedOrchestrator>>>,
pub(crate) resource_reader: Arc<KubernetesResourceReader>,
}
Expand description
An orchestrator backed by Kubernetes.
Fields§
§client: Client
§kubernetes_namespace: String
§config: KubernetesOrchestratorConfig
§secret_api: Api<Secret>
§vpc_endpoint_api: Api<VpcEndpoint>
§namespaces: Mutex<BTreeMap<String, Arc<dyn NamespacedOrchestrator>>>
§resource_reader: Arc<KubernetesResourceReader>
Implementations§
source§impl KubernetesOrchestrator
impl KubernetesOrchestrator
sourcepub async fn new(
config: KubernetesOrchestratorConfig,
) -> Result<KubernetesOrchestrator, Error>
pub async fn new( config: KubernetesOrchestratorConfig, ) -> Result<KubernetesOrchestrator, Error>
Creates a new Kubernetes orchestrator from the provided configuration.
Trait Implementations§
source§impl CloudResourceController for KubernetesOrchestrator
impl CloudResourceController for KubernetesOrchestrator
source§fn ensure_vpc_endpoint<'life0, 'async_trait>(
&'life0 self,
id: CatalogItemId,
config: VpcEndpointConfig,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn ensure_vpc_endpoint<'life0, 'async_trait>(
&'life0 self,
id: CatalogItemId,
config: VpcEndpointConfig,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Creates or updates the specified
VpcEndpoint
Kubernetes object.source§fn delete_vpc_endpoint<'life0, 'async_trait>(
&'life0 self,
id: CatalogItemId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_vpc_endpoint<'life0, 'async_trait>(
&'life0 self,
id: CatalogItemId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Deletes the specified
VpcEndpoint
Kubernetes object.source§fn list_vpc_endpoints<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<CatalogItemId, VpcEndpointStatus>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_vpc_endpoints<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<CatalogItemId, VpcEndpointStatus>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Lists existing
VpcEndpoint
Kubernetes objects.source§fn watch_vpc_endpoints<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = BoxStream<'static, VpcEndpointEvent>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn watch_vpc_endpoints<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = BoxStream<'static, VpcEndpointEvent>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Lists existing
VpcEndpoint
Kubernetes objects.source§fn reader(&self) -> Arc<dyn CloudResourceReader>
fn reader(&self) -> Arc<dyn CloudResourceReader>
Returns a reader for the resources managed by this controller.
source§impl Debug for KubernetesOrchestrator
impl Debug for KubernetesOrchestrator
source§impl SecretsController for KubernetesOrchestrator
impl SecretsController for KubernetesOrchestrator
source§fn ensure<'life0, 'life1, 'async_trait>(
&'life0 self,
id: CatalogItemId,
contents: &'life1 [u8],
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn ensure<'life0, 'life1, 'async_trait>(
&'life0 self,
id: CatalogItemId,
contents: &'life1 [u8],
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Creates or updates the specified secret with the specified binary
contents.
source§fn delete<'life0, 'async_trait>(
&'life0 self,
id: CatalogItemId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete<'life0, 'async_trait>(
&'life0 self,
id: CatalogItemId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Deletes the specified secret.
source§fn list<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<CatalogItemId>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<CatalogItemId>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Lists known secrets. Unrecognized secret objects do not produce an error
and are ignored.
source§fn reader(&self) -> Arc<dyn SecretsReader>
fn reader(&self) -> Arc<dyn SecretsReader>
Returns a reader for the secrets managed by this controller.
Auto Trait Implementations§
impl !Freeze for KubernetesOrchestrator
impl !RefUnwindSafe for KubernetesOrchestrator
impl Send for KubernetesOrchestrator
impl Sync for KubernetesOrchestrator
impl Unpin for KubernetesOrchestrator
impl !UnwindSafe for KubernetesOrchestrator
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
Mutably borrows from an owned value. Read more
source§impl<T> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request
source§impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See
RustType::into_proto
.source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
The method of
std::ops::AddAssign
, for types that do not implement AddAssign
.