Infrastructure

BackupStore

Defines where backups are stored. Translates to a Velero BackupStorageLocation resource. Referenced by LatticeClusterBackup and LatticeService via storeRef. One BackupStore can be marked as the default.

group: lattice.dev version: v1alpha1 scope: namespaced

Examples

s3-store.yaml
apiVersion: lattice.dev/v1alpha1
kind: BackupStore
metadata:
  name: production-s3
  namespace: lattice-system
spec:
  default: true
  storage:
    provider: s3
    s3:
      bucket: lattice-backups
      region: us-east-1
    cloudProviderRef: aws-prod
minio-store.yaml
apiVersion: lattice.dev/v1alpha1
kind: BackupStore
metadata:
  name: local-minio
  namespace: lattice-system
spec:
  default: false
  storage:
    provider: s3Compatible
    s3:
      bucket: backups
      endpoint: "http://minio.minio-system.svc:9000"
      forcePathStyle: true
    credentialsSecretRef: minio-creds

Spec

BackupStore spec fields
Field Type Description
default bool Whether this is the default backup store. Used when no explicit storeRef is specified. Default: false.
storage BackupStorageSpec Storage provider configuration. Configures the Velero BackupStorageLocation.

BackupStorageSpec

BackupStorageSpec fields
Field Type Description
provider BackupStorageProvider Storage provider type.
s3 S3StorageConfig? S3 or S3-compatible storage configuration.
gcs GcsStorageConfig? Google Cloud Storage configuration.
azure AzureStorageConfig? Azure Blob Storage configuration.
cloudProviderRef string? Reference to a CloudProvider resource for credentials.
credentialsSecretRef string? Direct reference to a Kubernetes Secret containing storage credentials.

S3StorageConfig

S3StorageConfig fields
Field Type Description
bucket string S3 bucket name.
region string? AWS region (e.g., us-east-1). Required for native S3.
endpoint string? Custom endpoint URL for S3-compatible providers (e.g., MinIO).
forcePathStyle bool? Use path-style addressing instead of virtual-hosted-style. Required for most S3-compatible providers.

GcsStorageConfig

GcsStorageConfig fields
Field Type Description
bucket string GCS bucket name.

AzureStorageConfig

AzureStorageConfig fields
Field Type Description
container string Azure Blob Storage container name.
storageAccount string? Azure storage account name.

BackupStorageProvider

s3 Amazon S3. Requires bucket, region, and AWS credentials.
gcs Google Cloud Storage. Requires bucket and GCP credentials.
azure Azure Blob Storage. Requires container and Azure credentials.
s3Compatible S3-compatible storage (MinIO, Ceph, etc.). Requires endpoint and forcePathStyle.

Status

BackupStore status fields
Field Type Description
phase BackupStorePhase Current lifecycle phase of the backup store.
veleroBslName string? Name of the underlying Velero BackupStorageLocation resource.
conditions []Condition Standard Kubernetes conditions.
message string? Human-readable status message.
observedGeneration i64? Last spec generation processed by the controller.

BackupStorePhase

Pending Waiting for Velero BackupStorageLocation to be created.
Ready Velero BackupStorageLocation is created and available.
Failed Has encountered an error creating or managing the Velero BackupStorageLocation.