Details
-
New Feature
-
Status: Done
-
High
-
Resolution: Fixed
-
None
-
Yes
-
Yes
-
Server Features
Description
User story:
As a PMM user, I need to be able to schedule a backup so it will be executed at a specific time.
UI/UX:
see Figma
Acceptance criteria
- User able to specify the Service/cluster to make a backup (same as for on-demand)
- User able to specify the type of backup (same as for on-demand)
- User able to specify on the UI time or day of the week and interval between backups
- Backup Documentation updated with a new feature
Out of scope:
- The retention period for the scheduled backup
- User able to specify by API/CLI the time for scheduled backups in "crontab" format
- Inventing our own "scheduler"
Suggested implementation:
Implement scheduler inside pmm-managed: probably https://github.com/go-co-op/gocron / https://github.com/robfig/cron
Store scheduled jobs inside postgres:
- frequency as cron expression
- start at
- last run
- retry attempts
- ...
TBD: store backup schedule in own table or inside generic schedule table (parameters can be as JSONB)
How to test:
TBD
Details:
TBD