PVE::Storage::storage_can_replicate - hew helper

This commit is contained in:
Dietmar Maurer
2017-06-27 06:17:58 +02:00
parent 864341b853
commit 7118dd916b
4 changed files with 31 additions and 0 deletions

View File

@ -145,6 +145,17 @@ sub storage_check_enabled {
return storage_check_node($cfg, $storeid, $node, $noerr);
}
# storage_can_replicate:
# return true if storage supports replication
# (volumes alocated with vdisk_alloc() has replication feature)
sub storage_can_replicate {
my ($cfg, $storeid, $format) = @_;
my $scfg = storage_config($cfg, $storeid);
my $plugin = PVE::Storage::Plugin->lookup($scfg->{type});
return $plugin->storage_can_replicate($scfg, $storeid, $format);
}
sub storage_ids {
my ($cfg) = @_;

View File

@ -742,6 +742,12 @@ sub volume_snapshot_delete {
return undef;
}
sub storage_can_replicate {
my ($class, $scfg, $storeid, $format) = @_;
return 0;
}
sub volume_has_feature {
my ($class, $scfg, $feature, $storeid, $volname, $snapname, $running) = @_;

View File

@ -336,6 +336,12 @@ sub volume_snapshot_rollback {
$class->zfs_add_lun_mapping_entry($scfg, $volname);
}
sub storage_can_replicate {
my ($class, $scfg, $storeid, $format) = @_;
return 0;
}
sub volume_has_feature {
my ($class, $scfg, $feature, $storeid, $volname, $snapname, $running) = @_;

View File

@ -623,6 +623,14 @@ sub volume_resize {
return $new_size;
}
sub storage_can_replicate {
my ($class, $scfg, $storeid, $format) = @_;
return 1 if $format eq 'raw' || $format eq 'subvol';
return 0;
}
sub volume_has_feature {
my ($class, $scfg, $feature, $storeid, $volname, $snapname, $running) = @_;