Expand description
The Snapshot CRD — a single kopia snapshot as a Kubernetes object.
ADR-0001 §3.4, ADR-0003 §4.5.
Three origins (canonical value lives in status.origin):
scheduled— created by aSnapshotSchedule; spec carriespolicyRef.manual— created bykubectl create/ external automation; spec carriespolicyRef.discovered— materialized by the catalog scan; spec is empty/absent.
Structs§
- Cleanup
Status - One-shot markers for the cleanups a terminal
Snapshotperforms, mirroringHookExecutionStatus: the stamp IS the idempotence, so a stamped Snapshot’s steady-state reconcile is a no-op forever. - Hook
Execution Status - When each hook list completed.
- JobStatus
- The mover Job backing a scheduled/manual
Snapshot; absent for discovered. - Resolved
Snapshot - Frozen recipe values pinned at run time.
- Resolved
Source - One resolved source backed up by a run — a concrete PVC and its kopia path.
- Snapshot
- Auto-generated derived type for SnapshotSpec via
CustomResource - Snapshot
Info - Identifies the kopia snapshot a
SnapshotCR owns. - Snapshot
Spec - A single kopia snapshot represented as a Kubernetes object.
- Snapshot
Stats - Stats populated from kopia’s JSON output.
- Snapshot
Status - Observed state of a
Snapshot. - Snapshot
Timing - Timing of a snapshot run.
- Staged
Sources - The CSI staging objects a backup created so kopia reads a point-in-time copy of the source PVC.
Enums§
- Origin
- How a
Snapshotcame to exist. Canonical value mirrored from thekopiur.home-operations.com/originlabel. Origin drives the deletion-policy default:discoveredbackups are forced toRetainbecause the operator did not create those snapshots. - Pruned
By - Which operator lifecycle removed a Snapshot (the
pruned-byannotation). - Snapshot
Phase - Lifecycle phase of a
Snapshot.
Functions§
- repository_
ref_ for - Derive the repository a
Snapshotbelongs to: a produced snapshot pins it instatus.resolved.repository; a discovered snapshot carries itsRepository/ClusterRepositoryas the controllerownerReference(it has noresolvedblock). Pure. Shared by theRestorereconciler (spec.repositoryderivation forsnapshotRef) and thekubectl kopiurbrowse data-plane, so the derivation rule cannot fork.