pub struct BackupConfigSpec {
pub repository: RepositoryRef,
pub identity: Option<Identity>,
pub sources: Vec<Source>,
pub copy_method: Option<CopyMethod>,
pub volume_snapshot_class_name: Option<String>,
pub group_by: Option<GroupBy>,
pub retention: Option<Retention>,
pub default_deletion_policy: Option<DeletionPolicy>,
pub policy: Option<Policy>,
pub hooks: Option<Hooks>,
pub mover: Option<MoverSpec>,
}Expand description
What to back up: sources, identity, retention, policy, hooks. ADR §3.3.
Not Eq: transitively embeds k8s-openapi types via mover and hooks (JobSpec).
Fields§
§repository: RepositoryRefDiscriminated reference to a Repository or ClusterRepository. ADR §3.2.
identity: Option<Identity>Identity overrides — what kopia records as username@hostname:path. ADR §3.3/§4.2.
sources: Vec<Source>What to back up. At least one source; webhook-enforced. ADR §3.3.
copy_method: Option<CopyMethod>How the source volume is captured before kopia reads it: Snapshot
(point-in-time CSI snapshot, default), Clone, or Direct. ADR §3.3.
volume_snapshot_class_name: Option<String>VolumeSnapshotClass used when copyMethod snapshots/clones the source.
ADR §3.3.
group_by: Option<GroupBy>Default VolumeGroupSnapshot for multi-PVC sources; None opts into per-PVC. ADR §4.9.
retention: Option<Retention>GFS retention — enforced by the operator pruning Backup CRs. ADR §4.4.
default_deletion_policy: Option<DeletionPolicy>Default deletionPolicy for Backup CRs created against this config. ADR §3.3/§4.5.
policy: Option<Policy>Typed kopia policy + extraArgs escape hatch. ADR §3.3 (G12).
hooks: Option<Hooks>Pre/post snapshot hooks that run in the workload, not the mover. ADR §4.8 (G13).
mover: Option<MoverSpec>Per-recipe mover overrides (resources, cache, security context). ADR §3.3.
Trait Implementations§
Source§impl Clone for BackupConfigSpec
impl Clone for BackupConfigSpec
Source§fn clone(&self) -> BackupConfigSpec
fn clone(&self) -> BackupConfigSpec
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BackupConfigSpec
impl Debug for BackupConfigSpec
Source§impl<'de> Deserialize<'de> for BackupConfigSpec
impl<'de> Deserialize<'de> for BackupConfigSpec
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for BackupConfigSpec
impl JsonSchema for BackupConfigSpec
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for BackupConfigSpec
impl PartialEq for BackupConfigSpec
Source§impl Serialize for BackupConfigSpec
impl Serialize for BackupConfigSpec
impl StructuralPartialEq for BackupConfigSpec
Auto Trait Implementations§
impl Freeze for BackupConfigSpec
impl RefUnwindSafe for BackupConfigSpec
impl Send for BackupConfigSpec
impl Sync for BackupConfigSpec
impl Unpin for BackupConfigSpec
impl UnsafeUnpin for BackupConfigSpec
impl UnwindSafe for BackupConfigSpec
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