[pve-devel] [PATCH storage 0/6] partially fix #2649: Introduce prune-backups for storages supporting backups

Fabian Ebner f.ebner at proxmox.com
Thu Jun 4 11:08:32 CEST 2020


What's still missing is to use this setting when executing backups
as we do with 'maxfiles' at the moment, and also GUI integration.

archive_info has been extended to include more information, mainly
for being able to tell when a backup doesn't use a standard name.
But the information might be useful elsewhere as well.

I also included a few tests and updated the archive_info tests.

Non-standard backups are ignored when pruning. I chose 'protected'
to mark those, 'ignore' could also be used.

The information from directory-storage backups and from PBS
backups don't fully match up, e.g. I created volid for PBS
by using backup group + ctime and translate backup type
ct->lxc, vm->qemu, so that the possible values don't depend
on the backend.

Regarding the API endpoints: there's a regex below '{storage}/content',
namely '{volume}', so it's not possible to create endpoints like
'{storage}/content/prunebackups'. Instead, I introduced '{storage}/prunebackups'.

Fabian Ebner (6):
  PBSPlugin: list_volumes: filter by vmid if specified
  Expand archive_info to include ctime, vmid and is_std_name
  Introduce prune-backups property for directory-based storages
  Add prune_backups to storage API
  Whitespace cleanup
  Add API and pvesm calls for prune_backups

 PVE/API2/Storage/Makefile        |   2 +-
 PVE/API2/Storage/PruneBackups.pm | 153 ++++++++++++++++++++
 PVE/API2/Storage/Status.pm       |  72 +++++-----
 PVE/CLI/pvesm.pm                 |  27 ++++
 PVE/Storage.pm                   |  44 +++++-
 PVE/Storage/CIFSPlugin.pm        |   1 +
 PVE/Storage/CephFSPlugin.pm      |   1 +
 PVE/Storage/DirPlugin.pm         |   5 +-
 PVE/Storage/GlusterfsPlugin.pm   |   5 +-
 PVE/Storage/NFSPlugin.pm         |   5 +-
 PVE/Storage/PBSPlugin.pm         |  52 +++++++
 PVE/Storage/Plugin.pm            | 190 +++++++++++++++++++++++--
 test/archive_info_test.pm        |  10 ++
 test/prune_backups_test.pm       | 237 +++++++++++++++++++++++++++++++
 test/run_plugin_tests.pl         |   1 +
 15 files changed, 752 insertions(+), 53 deletions(-)
 create mode 100644 PVE/API2/Storage/PruneBackups.pm
 create mode 100644 test/prune_backups_test.pm

-- 
2.20.1





More information about the pve-devel mailing list