sub zfs_request {
my ($class, $scfg, $timeout, $method, @params) = @_;
- my $default_timeout = PVE::RPCEnvironment->is_worker() ? 60*60 : 5;
-
my $cmd = [];
if ($method eq 'zpool_list') {
} else {
push @$cmd, 'zfs', $method;
}
-
push @$cmd, @params;
-
- my $msg = '';
- my $output = sub {
- my $line = shift;
- $msg .= "$line\n";
- };
+ my $msg = '';
+ my $output = sub { $msg .= "$_[0]\n" };
- $timeout = $default_timeout if !$timeout;
+ $timeout = PVE::RPCEnvironment->is_worker() ? 60*60 : 5 if !$timeout;
run_command($cmd, errmsg => "zfs error", outfunc => $output, timeout => $timeout);