[pve-devel] [PATCH v3 storage 0/6] import/export api

Wolfgang Bumiller w.bumiller at proxmox.com
Fri May 12 09:50:08 CEST 2017


Changes to v2:
  * replaced `pvesm delsnapshot` with a -snapshot parameter for
    `pvesm free`.
  * stricter API parameter types
    Note that for snapshots we used a length-limited `pve-configid` in
    pve-container and qemu-server (which we should put into JSONSchema
    since they each define their own) - but for storage migration the
    '__migration__' snapshot name is not a valid pve-configid, so
    instead I just added a pattern representing a "limited enough"
    superset to cover it all.
  * volume_transfer_formats() now takes both source and
    destinationvolume ids
  * fixed typos

Still meditating on whether -with-snapshots is useful/required/worthless
in the import path... (but we can still remove it later...).

- Previous version:

Changes to v1:
  * rebased onto current master
  * export: don't unlink on success...

- Original cover letter:

This is a first (working) draft of an import/export interface.

The idea is to provide the storage-side functionality required and
implemented twice - both by storage_migrate() and the replication patch
set's volume_send() plugin call.

The third patch replaces storage_migrate()'s ZFS case with an almost
storage agnostic implementation. The patches following it add transfer
format queries and the 6th patch then turns this into a storage type
independent implementation.

Wolfgang Bumiller (6):
  pvesm: import/export commands
  free: added snapshot parameter
  migrate: use pvesm import/export for zfs
  migrate: snapshot parameter for incremental transfer
  api: add import/export format querying
  migrate: query transfer stream formats

 PVE/API2/Storage/Content.pm  |  13 +++-
 PVE/CLI/pvesm.pm             | 139 +++++++++++++++++++++++++++++++++++++++++++
 PVE/Storage.pm               | 131 +++++++++++++++++++++++++++++++++++-----
 PVE/Storage/Plugin.pm        |  21 +++++++
 PVE/Storage/ZFSPoolPlugin.pm |  77 ++++++++++++++++++++++++
 5 files changed, 364 insertions(+), 17 deletions(-)

-- 
2.11.0





More information about the pve-devel mailing list