pub struct WorkloadIdentity {
pub namespace: String,
pub name: String,
pub writer_uids: BTreeSet<i64>,
pub has_unpinned_writer: bool,
pub file_groups: BTreeSet<i64>,
pub primary_uid: Option<i64>,
pub fs_group: Option<i64>,
}Expand description
A workload pod’s identity, for comparing against a mover. One per consuming pod.
Fields§
§namespace: StringPod namespace — for deterministic selection + messages.
name: StringPod name — for deterministic selection + messages.
writer_uids: BTreeSet<i64>Effective UIDs of every writer (init + main containers, with pod fallback), pinned values only. A file could be owned by any of these.
has_unpinned_writer: boolTrue if any container’s effective UID is image-determined (unpinned) — then the
true writer set is unknowable and the workload can never be ExactUidMatch.
file_groups: BTreeSet<i64>Candidate file group IDs: the pod fsGroup (setgid file group on the workload’s
volume), every container/pod runAsGroup, and supplementalGroups. Sorted.
primary_uid: Option<i64>Effective runAsUser of the primary (first non-init) container, with pod
fallback; None when unpinned. Used as the restore “future consumer” UID.
fs_group: Option<i64>The pod’s fsGroup, if set — used as the restore “future consumer” group.
Trait Implementations§
Source§impl Clone for WorkloadIdentity
impl Clone for WorkloadIdentity
Source§fn clone(&self) -> WorkloadIdentity
fn clone(&self) -> WorkloadIdentity
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for WorkloadIdentity
impl Debug for WorkloadIdentity
Source§impl PartialEq for WorkloadIdentity
impl PartialEq for WorkloadIdentity
Source§fn eq(&self, other: &WorkloadIdentity) -> bool
fn eq(&self, other: &WorkloadIdentity) -> bool
self and other values to be equal, and is used by ==.impl Eq for WorkloadIdentity
impl StructuralPartialEq for WorkloadIdentity
Auto Trait Implementations§
impl Freeze for WorkloadIdentity
impl RefUnwindSafe for WorkloadIdentity
impl Send for WorkloadIdentity
impl Sync for WorkloadIdentity
impl Unpin for WorkloadIdentity
impl UnsafeUnpin for WorkloadIdentity
impl UnwindSafe for WorkloadIdentity
Blanket Implementations§
§impl<T> AnyExt for T
impl<T> AnyExt for T
§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
T behind reference§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
T behind mutable reference§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
T behind Rc pointer§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
T behind Arc pointer§fn downcast_box<T>(this: Box<Self>) -> Result<Box<T>, Box<Self>>where
T: Any,
fn downcast_box<T>(this: Box<Self>) -> Result<Box<T>, Box<Self>>where
T: Any,
T behind Box pointer§fn downcast_move<T>(this: Self) -> Option<T>
fn downcast_move<T>(this: Self) -> Option<T>
Self to T,
useful only in generic context as a workaround for specializationSource§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, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
fn coerce_rc_to(self: Rc<X>) -> Rc<T>
fn coerce_box_to(self: Box<X>) -> Box<T>
fn coerce_ref_to(&self) -> &T
fn coerce_mut_to(&mut self) -> &mut T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§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