pub struct MoverIdentity {
pub uid: Option<i64>,
pub groups: BTreeSet<i64>,
pub fs_group: Option<i64>,
}Expand description
The mover’s effective identity for read reasoning (backup source), built from the resolved, post-invariant container + pod security contexts.
Fields§
§uid: Option<i64>Effective runAsUser (container ?? pod); None when image-determined.
groups: BTreeSet<i64>Groups the mover process holds: container/pod runAsGroup, pod
supplementalGroups, and pod fsGroup (the kubelet adds fsGroup to the pod’s
supplementary GIDs). Sorted for determinism. Used only to soften a UID mismatch.
fs_group: Option<i64>Effective pod fsGroup, kept separately from Self::groups (which folds it in
among the process’s GIDs and so cannot answer which one it was). Load-bearing
only on a read-write source mount, where the kubelet may recursively chgrp the
tree to it — on the read-only default it grants nothing. Symmetric with
MoverWriteIdentity::fs_group.
Trait Implementations§
Source§impl Clone for MoverIdentity
impl Clone for MoverIdentity
Source§fn clone(&self) -> MoverIdentity
fn clone(&self) -> MoverIdentity
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 MoverIdentity
impl Debug for MoverIdentity
Source§impl PartialEq for MoverIdentity
impl PartialEq for MoverIdentity
Source§fn eq(&self, other: &MoverIdentity) -> bool
fn eq(&self, other: &MoverIdentity) -> bool
self and other values to be equal, and is used by ==.impl Eq for MoverIdentity
impl StructuralPartialEq for MoverIdentity
Auto Trait Implementations§
impl Freeze for MoverIdentity
impl RefUnwindSafe for MoverIdentity
impl Send for MoverIdentity
impl Sync for MoverIdentity
impl Unpin for MoverIdentity
impl UnsafeUnpin for MoverIdentity
impl UnwindSafe for MoverIdentity
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