pub struct Stores {Show 13 fields
pub cluster_bind9_providers: Store<ClusterBind9Provider>,
pub bind9_clusters: Store<Bind9Cluster>,
pub bind9_instances: Store<Bind9Instance>,
pub bind9_deployments: Store<Deployment>,
pub dnszones: Store<DNSZone>,
pub a_records: Store<ARecord>,
pub aaaa_records: Store<AAAARecord>,
pub cname_records: Store<CNAMERecord>,
pub txt_records: Store<TXTRecord>,
pub mx_records: Store<MXRecord>,
pub ns_records: Store<NSRecord>,
pub srv_records: Store<SRVRecord>,
pub caa_records: Store<CAARecord>,
}Expand description
Collection of all reflector stores for cross-operator queries.
Each store is populated by a dedicated reflector task and provides in-memory access to resources without API calls.
Fields§
§cluster_bind9_providers: Store<ClusterBind9Provider>§bind9_clusters: Store<Bind9Cluster>§bind9_instances: Store<Bind9Instance>§bind9_deployments: Store<Deployment>§dnszones: Store<DNSZone>§a_records: Store<ARecord>§aaaa_records: Store<AAAARecord>§cname_records: Store<CNAMERecord>§txt_records: Store<TXTRecord>§mx_records: Store<MXRecord>§ns_records: Store<NSRecord>§srv_records: Store<SRVRecord>§caa_records: Store<CAARecord>Implementations§
Source§impl Stores
impl Stores
Sourcepub fn records_matching_selector(
&self,
selector: &LabelSelector,
namespace: &str,
) -> Vec<RecordRef>
pub fn records_matching_selector( &self, selector: &LabelSelector, namespace: &str, ) -> Vec<RecordRef>
Query all record stores and return matching records for a label selector.
This method searches across all 8 record type stores to find records that:
- Exist in the specified namespace
- Match the provided label selector
§Arguments
selector- The label selector to match against record labelsnamespace- The namespace to search within (namespace-isolated)
§Returns
A vector of RecordRef enums containing references to all matching records
Sourcepub fn dnszones_matching_selector(
&self,
selector: &LabelSelector,
namespace: &str,
) -> Vec<(String, String)>
pub fn dnszones_matching_selector( &self, selector: &LabelSelector, namespace: &str, ) -> Vec<(String, String)>
Sourcepub fn bind9instances_matching_selector(
&self,
selector: &LabelSelector,
namespace: &str,
) -> Vec<(String, String)>
pub fn bind9instances_matching_selector( &self, selector: &LabelSelector, namespace: &str, ) -> Vec<(String, String)>
Sourcepub fn dnszones_selecting_record(
&self,
record_labels: &BTreeMap<String, String>,
record_namespace: &str,
) -> Vec<(String, String)>
pub fn dnszones_selecting_record( &self, record_labels: &BTreeMap<String, String>, record_namespace: &str, ) -> Vec<(String, String)>
Find all DNSZones whose recordsFrom selector matches given record labels.
This is a “reverse lookup” - given a record’s labels, find which zones select it. Used by record watch mappers to determine which zones need reconciliation when a record changes.
§Arguments
record_labels- The labels of the record to matchrecord_namespace- The namespace of the record
§Returns
A vector of (name, namespace) tuples for zones that select this record
Sourcepub fn get_dnszone(&self, name: &str, namespace: &str) -> Option<Arc<DNSZone>>
pub fn get_dnszone(&self, name: &str, namespace: &str) -> Option<Arc<DNSZone>>
Get a specific DNSZone by name and namespace from the store.
§Arguments
name- The name of the zonenamespace- The namespace of the zone
§Returns
An Arc<DNSZone> if found, None otherwise
Sourcepub fn get_bind9instance(
&self,
name: &str,
namespace: &str,
) -> Option<Arc<Bind9Instance>>
pub fn get_bind9instance( &self, name: &str, namespace: &str, ) -> Option<Arc<Bind9Instance>>
Get a specific Bind9Instance by name and namespace from the store.
§Arguments
name- The name of the instancenamespace- The namespace of the instance
§Returns
An Arc<Bind9Instance> if found, None otherwise
Sourcepub fn get_deployment(
&self,
name: &str,
namespace: &str,
) -> Option<Arc<Deployment>>
pub fn get_deployment( &self, name: &str, namespace: &str, ) -> Option<Arc<Deployment>>
Get a specific Deployment by name and namespace from the store.
§Arguments
name- The name of the deploymentnamespace- The namespace of the deployment
§Returns
An Arc<Deployment> if found, None otherwise
Sourcepub fn create_bind9_manager_for_instance(
&self,
instance_name: &str,
instance_namespace: &str,
) -> Bind9Manager
pub fn create_bind9_manager_for_instance( &self, instance_name: &str, instance_namespace: &str, ) -> Bind9Manager
Create a Bind9Manager for a specific instance with deployment-aware auth.
This helper function looks up the deployment for the given instance and creates
a Bind9Manager with proper authentication detection. If the deployment is found,
it creates a manager that can determine auth status by inspecting the bindcar
container’s environment variables. If not found, it falls back to a basic manager
that assumes auth is enabled.
§Arguments
instance_name- Name of theBind9Instanceinstance_namespace- Namespace of the instance
§Returns
A Bind9Manager configured for the instance
§Examples
let manager = stores.create_bind9_manager_for_instance(
"my-instance",
"bindy-system"
);Trait Implementations§
Auto Trait Implementations§
impl Freeze for Stores
impl !RefUnwindSafe for Stores
impl Send for Stores
impl Sync for Stores
impl Unpin for Stores
impl !UnwindSafe for Stores
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].