[pve-devel] [RFC pve-storage 21/36] plugin: nfs: remove dependency on directory plugin
Max Carrara
m.carrara at proxmox.com
Wed Jul 17 11:40:19 CEST 2024
As with the BTRFS plugin, the dependency on the directory plugin is
removed by using the helpers from the `Common` module instead of
calling the dir plugin's methods.
Deprecation warnings for the `get_volume_notes` and
`update_volume_notes` methods are also added.
Signed-off-by: Max Carrara <m.carrara at proxmox.com>
---
src/PVE/Storage/NFSPlugin.pm | 41 ++++++++++++++++++++++++++++++------
1 file changed, 35 insertions(+), 6 deletions(-)
diff --git a/src/PVE/Storage/NFSPlugin.pm b/src/PVE/Storage/NFSPlugin.pm
index f2e4c0d..0d02b49 100644
--- a/src/PVE/Storage/NFSPlugin.pm
+++ b/src/PVE/Storage/NFSPlugin.pm
@@ -9,6 +9,13 @@ use File::Path;
use PVE::Network;
use PVE::Tools qw(run_command);
use PVE::ProcFSTools;
+use PVE::Storage::Common qw(
+ get_deprecation_warning
+ storage_dir_get_volume_notes
+ storage_dir_update_volume_notes
+ storage_dir_get_volume_attribute
+ storage_dir_update_volume_attribute
+);
use PVE::Storage::Plugin;
use PVE::JSONSchema qw(get_standard_option);
@@ -204,23 +211,45 @@ sub check_connection {
# FIXME remove on the next APIAGE reset.
# Deprecated, use get_volume_attribute instead.
sub get_volume_notes {
- my $class = shift;
- PVE::Storage::DirPlugin::get_volume_notes($class, @_);
+ warn get_deprecation_warning(
+ "PVE::Storage::Common::storage_dir_get_volume_notes"
+ );
+
+ my ($class, $scfg, $storeid, $volname, $timeout) = @_;
+
+ return storage_dir_get_volume_notes(
+ $class, $scfg, $storeid, $volname, $timeout
+ );
}
# FIXME remove on the next APIAGE reset.
# Deprecated, use update_volume_attribute instead.
sub update_volume_notes {
- my $class = shift;
- PVE::Storage::DirPlugin::update_volume_notes($class, @_);
+ warn get_deprecation_warning(
+ "PVE::Storage::Common::storage_dir_update_volume_notes"
+ );
+
+ my ($class, $scfg, $storeid, $volname, $notes, $timeout) = @_;
+
+ return storage_dir_update_volume_notes(
+ $class, $scfg, $storeid, $volname, $notes, $timeout
+ );
}
sub get_volume_attribute {
- return PVE::Storage::DirPlugin::get_volume_attribute(@_);
+ my ($class, $scfg, $storeid, $volname, $attribute) = @_;
+
+ return storage_dir_get_volume_attribute(
+ $class, $scfg, $storeid, $volname, $attribute
+ );
}
sub update_volume_attribute {
- return PVE::Storage::DirPlugin::update_volume_attribute(@_);
+ my ($class, $scfg, $storeid, $volname, $attribute, $value) = @_;
+
+ return storage_dir_update_volume_attribute(
+ $class, $scfg, $storeid, $volname, $attribute, $value
+ );
}
1;
--
2.39.2
More information about the pve-devel
mailing list