* [pve-devel] [PATCH storage v3 1/2] DirPlugin: update_volume_attribute: don't use update_volume_notes
@ 2022-06-02 8:52 Dominik Csapak
2022-06-02 8:52 ` [pve-devel] [PATCH storage v3 2/2] BTRFSPlugin: reuse DirPlugin update/get_volume_attribute Dominik Csapak
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Dominik Csapak @ 2022-06-02 8:52 UTC (permalink / raw)
To: pve-devel
by refactoring it into a helper and use that.
With this, we can omit the 'update_volume_notes' in subclasses
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
PVE/Storage/DirPlugin.pm | 28 ++++++++++++++++++++--------
1 file changed, 20 insertions(+), 8 deletions(-)
diff --git a/PVE/Storage/DirPlugin.pm b/PVE/Storage/DirPlugin.pm
index 53eb642..8715a9d 100644
--- a/PVE/Storage/DirPlugin.pm
+++ b/PVE/Storage/DirPlugin.pm
@@ -94,9 +94,8 @@ sub parse_is_mountpoint {
return $is_mp; # contains a path
}
-# FIXME remove on the next APIAGE reset.
-# Deprecated, use get_volume_attribute instead.
-sub get_volume_notes {
+# FIXME move into 'get_volume_attribute' when removing 'get_volume_notes'
+my $get_volume_notes_impl = sub {
my ($class, $scfg, $storeid, $volname, $timeout) = @_;
my ($vtype) = $class->parse_volname($volname);
@@ -111,11 +110,17 @@ sub get_volume_notes {
}
return '';
-}
+};
# FIXME remove on the next APIAGE reset.
-# Deprecated, use update_volume_attribute instead.
-sub update_volume_notes {
+# Deprecated, use get_volume_attribute instead.
+sub get_volume_notes {
+ my ($class, $scfg, $storeid, $volname, $timeout) = @_;
+ return $get_volume_notes_impl->($class, $scfg, $storeid, $volname, $timeout);
+}
+
+# FIXME move into 'update_volume_attribute' when removing 'update_volume_notes'
+my $update_volume_notes_impl = sub {
my ($class, $scfg, $storeid, $volname, $notes, $timeout) = @_;
my ($vtype) = $class->parse_volname($volname);
@@ -131,13 +136,20 @@ sub update_volume_notes {
unlink $path or $! == ENOENT or die "could not delete notes - $!\n";
}
return;
+};
+
+# FIXME remove on the next APIAGE reset.
+# Deprecated, use update_volume_attribute instead.
+sub update_volume_notes {
+ my ($class, $scfg, $storeid, $volname, $notes, $timeout) = @_;
+ return $update_volume_notes_impl->($class, $scfg, $storeid, $volname, $notes, $timeout);
}
sub get_volume_attribute {
my ($class, $scfg, $storeid, $volname, $attribute) = @_;
if ($attribute eq 'notes') {
- return $class->get_volume_notes($scfg, $storeid, $volname);
+ return $get_volume_notes_impl->($class, $scfg, $storeid, $volname);
}
my ($vtype) = $class->parse_volname($volname);
@@ -155,7 +167,7 @@ sub update_volume_attribute {
my ($class, $scfg, $storeid, $volname, $attribute, $value) = @_;
if ($attribute eq 'notes') {
- return $class->update_volume_notes($scfg, $storeid, $volname, $value);
+ return $update_volume_notes_impl->($class, $scfg, $storeid, $volname, $value);
}
my ($vtype) = $class->parse_volname($volname);
--
2.30.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* [pve-devel] [PATCH storage v3 2/2] BTRFSPlugin: reuse DirPlugin update/get_volume_attribute
2022-06-02 8:52 [pve-devel] [PATCH storage v3 1/2] DirPlugin: update_volume_attribute: don't use update_volume_notes Dominik Csapak
@ 2022-06-02 8:52 ` Dominik Csapak
2022-07-01 12:12 ` [pve-devel] [PATCH storage v3 1/2] DirPlugin: update_volume_attribute: don't use update_volume_notes Dominik Csapak
2022-07-05 9:35 ` [pve-devel] applied-series: " Wolfgang Bumiller
2 siblings, 0 replies; 4+ messages in thread
From: Dominik Csapak @ 2022-06-02 8:52 UTC (permalink / raw)
To: pve-devel
this allows setting notes+protected for backups on btrfs
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Acked-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
---
changes from v2:
* parameter style fix
* added Acked-by
PVE/Storage/BTRFSPlugin.pm | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/PVE/Storage/BTRFSPlugin.pm b/PVE/Storage/BTRFSPlugin.pm
index be613f4..1db4e4f 100644
--- a/PVE/Storage/BTRFSPlugin.pm
+++ b/PVE/Storage/BTRFSPlugin.pm
@@ -138,9 +138,22 @@ sub status {
return PVE::Storage::DirPlugin::status($class, $storeid, $scfg, $cache);
}
-# TODO: sub get_volume_attribute {}
+sub get_volume_attribute {
+ my ($class, $scfg, $storeid, $volname, $attribute) = @_;
+ return PVE::Storage::DirPlugin::get_volume_attribute($class, $scfg, $storeid, $volname, $attribute);
+}
-# TODO: sub update_volume_attribute {}
+sub update_volume_attribute {
+ my ($class, $scfg, $storeid, $volname, $attribute, $value) = @_;
+ return PVE::Storage::DirPlugin::update_volume_attribute(
+ $class,
+ $scfg,
+ $storeid,
+ $volname,
+ $attribute,
+ $value,
+ );
+}
# croak would not include the caller from within this module
sub __error {
--
2.30.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [pve-devel] [PATCH storage v3 1/2] DirPlugin: update_volume_attribute: don't use update_volume_notes
2022-06-02 8:52 [pve-devel] [PATCH storage v3 1/2] DirPlugin: update_volume_attribute: don't use update_volume_notes Dominik Csapak
2022-06-02 8:52 ` [pve-devel] [PATCH storage v3 2/2] BTRFSPlugin: reuse DirPlugin update/get_volume_attribute Dominik Csapak
@ 2022-07-01 12:12 ` Dominik Csapak
2022-07-05 9:35 ` [pve-devel] applied-series: " Wolfgang Bumiller
2 siblings, 0 replies; 4+ messages in thread
From: Dominik Csapak @ 2022-07-01 12:12 UTC (permalink / raw)
To: pve-devel
ping?
^ permalink raw reply [flat|nested] 4+ messages in thread
* [pve-devel] applied-series: [PATCH storage v3 1/2] DirPlugin: update_volume_attribute: don't use update_volume_notes
2022-06-02 8:52 [pve-devel] [PATCH storage v3 1/2] DirPlugin: update_volume_attribute: don't use update_volume_notes Dominik Csapak
2022-06-02 8:52 ` [pve-devel] [PATCH storage v3 2/2] BTRFSPlugin: reuse DirPlugin update/get_volume_attribute Dominik Csapak
2022-07-01 12:12 ` [pve-devel] [PATCH storage v3 1/2] DirPlugin: update_volume_attribute: don't use update_volume_notes Dominik Csapak
@ 2022-07-05 9:35 ` Wolfgang Bumiller
2 siblings, 0 replies; 4+ messages in thread
From: Wolfgang Bumiller @ 2022-07-05 9:35 UTC (permalink / raw)
To: Dominik Csapak; +Cc: pve-devel
applied series, thanks
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-07-05 9:35 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-02 8:52 [pve-devel] [PATCH storage v3 1/2] DirPlugin: update_volume_attribute: don't use update_volume_notes Dominik Csapak
2022-06-02 8:52 ` [pve-devel] [PATCH storage v3 2/2] BTRFSPlugin: reuse DirPlugin update/get_volume_attribute Dominik Csapak
2022-07-01 12:12 ` [pve-devel] [PATCH storage v3 1/2] DirPlugin: update_volume_attribute: don't use update_volume_notes Dominik Csapak
2022-07-05 9:35 ` [pve-devel] applied-series: " Wolfgang Bumiller
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal