[pve-devel] [PATCH v6 storage 1/1] add disk reassign feature

Thomas Lamprecht t.lamprecht at proxmox.com
Thu Apr 15 14:20:40 CEST 2021

On 15.04.21 13:53, Aaron Lauterer wrote:
> Just adding the functionality on the top level Plugin.pm could have some
> potential ugly side effects for 3rd party plugins that do not yet handle that
> call themselves. So to be on the safe side, by default we rather fail right
> there (was discussed a versions ago).

I may have forgotten the old discussion, but I do not think that this is a problem.

External plugins can detect if they require it and implement it, and actually,
we could just check the ABI version a plugin provides on calling the base method
and error out if it's less than the one where we introduced this method.

> IMHO it would be nice though to change the structure of the storage plugins a
> bit. E.g. instead of assuming dir/file storages for Plugin.pm, having a basic
> abstraction specifically for any directory/file based storage which handles
> all the common tasks and further down the hierarchy the specific
> implementations regarding mounting and such. But that would mean a hard break
> of the current approach, especially for 3rd party plugins.

That sounds actually quite like what we already have, rather the base plugin
module should just provide the set of methods with a `die "implement me"`, and
probably only that, i.e., be a plain abstract interface.

But that's quite some change involved and requires a ABI version break as all
plugins would need to adapt to that one, and the benefit is meh, at least for
our internal ones; and after all those are the ones we actually support.

More information about the pve-devel mailing list