Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
djjudas21 opened this issue May 4, 2022 · 6 comments
Open

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

djjudas21 opened this issue May 4, 2022 · 6 comments
Labels
enhancement Adding additional functionality or improvements pinned Prevents stalebot from removing

Comments

@djjudas21
Copy link

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 🙂

@sudermanjr sudermanjr added the enhancement Adding additional functionality or improvements label May 4, 2022
@sudermanjr
Copy link
Member

Seems like a good idea to me. @rbren do you have any thoughts?

@rbren
Copy link
Contributor

rbren commented May 4, 2022

Yeah this seems like a great idea! We have had other requests to be able to reuse schedules, this would take care of both.

Will add it to the backlog. @djjudas21 you're welcome to open a PR as well if you want this in the near-term

@djjudas21
Copy link
Author

Thanks both. I'm no developer and I have no experience with golang, so I'll sit this one out and wait until it's ready 😀 happy to help with testing etc though

@github-actions github-actions bot added the stale Marked as stale by stalebot label Jul 4, 2022
@anhqqt
Copy link

anhqqt commented Jul 8, 2022

Great request. The concern from @djjudas21 is actually the same as mine. It should be great if we can config the SnapshotGroup using annotation inside PVC.

@github-actions github-actions bot removed the stale Marked as stale by stalebot label Jul 9, 2022
@github-actions github-actions bot added the stale Marked as stale by stalebot label Sep 7, 2022
@rbren rbren reopened this Sep 14, 2022
@rbren rbren added pinned Prevents stalebot from removing and removed stale Marked as stale by stalebot labels Sep 14, 2022
@djjudas21
Copy link
Author

Hey, has there been any movement on this one yet? Thanks!

@rbren
Copy link
Contributor

rbren commented Feb 6, 2023

Sorry, no movement here. Priority right now is 1.25 support.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Adding additional functionality or improvements pinned Prevents stalebot from removing
Projects
None yet
Development

No branches or pull requests

4 participants