mirror of
https://git.proxmox.com/git/pve-manager
synced 2025-07-25 15:42:27 +00:00
Jobs/VZDump: encode/decode 'prune-backups' where needed
we want to write it out to the config as propertyString, but want it as object in the api (for compatiblity) Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
This commit is contained in:
parent
20d15804f6
commit
b34220461d
@ -52,6 +52,21 @@ sub parse_config {
|
|||||||
return $cfg;
|
return $cfg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# call the plugin specific decode/encode code
|
||||||
|
sub decode_value {
|
||||||
|
my ($class, $type, $key, $value) = @_;
|
||||||
|
|
||||||
|
my $plugin = __PACKAGE__->lookup($type);
|
||||||
|
return $plugin->decode_value($type, $key, $value);
|
||||||
|
}
|
||||||
|
|
||||||
|
sub encode_value {
|
||||||
|
my ($class, $type, $key, $value) = @_;
|
||||||
|
|
||||||
|
my $plugin = __PACKAGE__->lookup($type);
|
||||||
|
return $plugin->encode_value($type, $key, $value);
|
||||||
|
}
|
||||||
|
|
||||||
sub run {
|
sub run {
|
||||||
my ($class, $cfg) = @_;
|
my ($class, $cfg) = @_;
|
||||||
# implement in subclass
|
# implement in subclass
|
||||||
|
@ -7,6 +7,7 @@ use PVE::INotify;
|
|||||||
use PVE::VZDump::Common;
|
use PVE::VZDump::Common;
|
||||||
use PVE::API2::VZDump;
|
use PVE::API2::VZDump;
|
||||||
use PVE::Cluster;
|
use PVE::Cluster;
|
||||||
|
use PVE::JSONSchema;
|
||||||
|
|
||||||
use base qw(PVE::Jobs::Plugin);
|
use base qw(PVE::Jobs::Plugin);
|
||||||
|
|
||||||
@ -36,6 +37,32 @@ sub options {
|
|||||||
return $options;
|
return $options;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub decode_value {
|
||||||
|
my ($class, $type, $key, $value) = @_;
|
||||||
|
|
||||||
|
if ($key eq 'prune-backups' && !ref($value)) {
|
||||||
|
$value = PVE::JSONSchema::parse_property_string(
|
||||||
|
'prune-backups',
|
||||||
|
$value,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub encode_value {
|
||||||
|
my ($class, $type, $key, $value) = @_;
|
||||||
|
|
||||||
|
if ($key eq 'prune-backups' && ref($value) eq 'HASH') {
|
||||||
|
$value = PVE::JSONSchema::print_property_string(
|
||||||
|
$value,
|
||||||
|
'prune-backups',
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $value;
|
||||||
|
}
|
||||||
|
|
||||||
sub run {
|
sub run {
|
||||||
my ($class, $conf) = @_;
|
my ($class, $conf) = @_;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user