[pve-devel] [PATCH manager 2/2] api: ceph ec pools: make add_storages overridable default
Aaron Lauterer
a.lauterer at proxmox.com
Fri Apr 29 11:28:59 CEST 2022
The behavior of always adding the storage config was lost in commit
e039e85. But it is more sensible to make it a default that can be
changed if needed.
Signed-off-by: Aaron Lauterer <a.lauterer at proxmox.com>
---
Moved the ec checks further up so we can then check storage permissions
if needed
PVE/API2/Ceph/Pools.pm | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/PVE/API2/Ceph/Pools.pm b/PVE/API2/Ceph/Pools.pm
index 4e28453c..adc2de1d 100644
--- a/PVE/API2/Ceph/Pools.pm
+++ b/PVE/API2/Ceph/Pools.pm
@@ -381,10 +381,10 @@ __PACKAGE__->register_method ({
properties => {
node => get_standard_option('pve-node'),
add_storages => {
- description => "Configure VM and CT storage using the new pool. ".
- "Always enabled for erasure coded pools.",
+ description => "Configure VM and CT storage using the new pool.",
type => 'boolean',
optional => 1,
+ default => "0; for erasure coded pools: 1",
},
'erasure-coding' => {
description => "Create an erasure coded pool for RBD with an ".
@@ -409,6 +409,10 @@ __PACKAGE__->register_method ({
my $rpcenv = PVE::RPCEnvironment::get();
my $user = $rpcenv->get_user();
+ my $rados = PVE::RADOS->new();
+
+ my $ec = ec_parse_and_check(extract_param($param, 'erasure-coding'), $rados);
+ $add_storages = 1 if $ec && !defined $add_storages;
# Ceph uses target_size_bytes
if (defined($param->{'target_size'})) {
@@ -429,10 +433,6 @@ __PACKAGE__->register_method ({
$param->{application} //= 'rbd';
$param->{pg_autoscale_mode} //= 'warn';
- my $rados = PVE::RADOS->new();
-
- my $ec = ec_parse_and_check(extract_param($param, 'erasure-coding'), $rados);
-
my $worker = sub {
# reopen with longer timeout
$rados = PVE::RADOS->new(timeout => PVE::Ceph::Tools::get_config('long_rados_timeout'));
--
2.30.2
More information about the pve-devel
mailing list