Skip to content

Ability to schedule a PVC for backup by setting an annotation #72

@djjudas21

Description

@djjudas21

Is your feature request related to a problem? Please describe.
I'm new to Gemini, but it seems good and it's working for me. However I'm finding it a bit inconvenient to manually create SnapshotGroup resources, as lots of my apps are installed from Helm charts, and then I have to add the SnapshotGroup manifest.

Describe the solution you'd like
It would be cool if I could set an annotation on a PVC like

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  annotations:
    gemini.fairwinds.com/SnapshotSchedule: "my-hourly-routine"

Obviously there would need to be some defaults set, like the frequency and retention, so there could be a generic resource like:

apiVersion: gemini.fairwinds.com/v1beta1
kind: SnapshotSchedule
metadata:
  name: my-hourly-routine
spec:
  schedule:
    - every: hour
      keep: 12

There could be one or more SnapshotSchedule included with Gemini, and then it would only require setting a single annotation on a PVC (which can be done via most helm charts). For example, Bitnami charts would support this syntax:

postgresql:
  persistence:
    enabled: true
    storageClass: freenas-iscsi
    accessMode: ReadWriteOnce
    size: 1Gi
    annotations:
      gemini.fairwinds.com/SnapshotSchedule: "my-hourly-routine"

... and then you get backups from day zero 🙂

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementAdding additional functionality or improvementspinnedPrevents stalebot from removing

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions