Skip to main content

Module common

Module common 

Source
Expand description

Shared sub-objects reused across multiple CRDs.

Per ADR-0003 §2.2 (principle 10) and §4.11, every credential, policy, and identity surface is modeled as a sub-object so future fields slot in without API breakage. Leaf Kubernetes types (LabelSelector, ResourceRequirements, PodSecurityContext) are reused from k8s-openapi rather than re-invented.

Structs§

CacheDefaults
Cache defaults inherited by Backup/Restore movers unless overridden. ADR §3.1.
CatalogBounds
Bounds on materialization of origin: discovered Backup CRs. ADR §3.1 catalog.
CatalogRetain
Bounds on the number of discovered Backup CRs kept materialized. ADR §3.1 catalog.retain.
ConfigMapKeyRef
Reference to a key within a ConfigMap (e.g. a CA bundle). ADR §3.1 tls.caBundleRef.
ConfigRef
Reference to a BackupConfig CR (used by Backup.spec.configRef and BackupSchedule.spec.configRef). May cross namespaces, subject to RBAC. ADR §3.4/§3.5.
CreateBehavior
Behavior when the repository does not yet exist. ADR §3.1 create.
CronSpec
A single cron entry with optional deterministic jitter. Shared by Maintenance’s quick/full schedules. ADR §3.7. jitter is a Go-style duration string (e.g. 30m).
Encryption
Repository encryption settings. A sub-object so future rotation fields (rotation, previousPasswords) slot in without breakage (ADR §4.11).
FailurePolicy
Per-run failure controls passed through to the mover Job. ADR §3.4/§4.10 (G6).
Identity
Identity overrides — what kopia records as username@hostname:path. ADR §3.3/§4.2.
MoverSpec
Per-recipe mover overrides (resources, cache, security context). ADR §3.3.
ObjectRef
Generic name/namespace reference to another namespaced object — e.g. a Backup CR (Restore.spec.source.backupRef) or a PVC (Restore.spec.target.pvcRef). ADR §3.6.
PodSelector
Selects workload pods by label. Reuses k8s-openapi LabelSelector. ADR §3.3 hooks.
RepositoryRef
Discriminated reference from a consumer CR (BackupConfig, Backup, Restore, Maintenance) to a Repository or ClusterRepository. ADR §3.2.
ResolvedIdentity
Fully-resolved identity pinned into status; never re-rendered after admission. ADR §4.2.
Retention
GFS retention policy. The single successful-retention driver (ADR §4.4).
SecretKeyRef
Reference to a key within a Secret in the same namespace as the referrer, unless namespace is given (required for cluster-scoped CRs — ADR §3.2).
SecretRef
Reference to an entire Secret (the operator reads well-known keys from it, e.g. AWS_ACCESS_KEY_ID). See ADR §3.1 backend auth.secretRef.
TlsConfig
TLS settings for object-store backends. ADR §3.1.

Enums§

DeletionPolicy
Lifecycle of the underlying kopia snapshot when its Backup CR is deleted. Shared by BackupConfig.spec.defaultDeletionPolicy and Backup.spec.deletionPolicy. ADR-0003 §4.5 / ADR-0001 §4.5.
RepositoryKind
Which kind of repository a consumer CR references. ADR §3.2/§3.3.

Traits§

PhaseLabel
A lifecycle-phase enum that can be rendered as a metric label.