In some situations we do not want to abort if the Ceph API returns an error. For example if we run the 'osd ok-to-stop' or similar calls, we are interested in the status message in the error case.
Signed-off-by: Aaron Lauterer <a.laute...@proxmox.com> --- I split the adding of "noerr" into a separate patch for a clearly separated history PVE/RADOS.pm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/PVE/RADOS.pm b/PVE/RADOS.pm index bec5028..36b42ed 100644 --- a/PVE/RADOS.pm +++ b/PVE/RADOS.pm @@ -259,7 +259,9 @@ sub cluster_stat { # example1: { prefix => 'get_command_descriptions'}) # example2: { prefix => 'mon dump', format => 'json' } sub mon_command { - my ($self, $cmd) = @_; + my ($self, $cmd, $noerr) = @_; + + $noerr = 0 if !$noerr; $cmd->{format} = 'json' if !$cmd->{format}; @@ -271,7 +273,7 @@ sub mon_command { my $raw = decode_json($ret); die "error with '$cmd->{prefix}': mon_command failed - $raw->{status_message}\n" - if $raw->{return_code} < 0; + if !$noerr && $raw->{return_code} < 0; my $data = ''; if ($cmd->{format} && $cmd->{format} eq 'json') { -- 2.30.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel