}});
+__PACKAGE__->register_method ({
+ name => 'delete_all_queues',
+ path => 'queue',
+ method => 'DELETE',
+ description => "Delete all mails in all posfix queues.",
+ proxyto => 'node',
+ permissions => { check => [ 'admin' ] },
+ protected => 1,
+ parameters => {
+ additionalProperties => 0,
+ properties => {
+ node => get_standard_option('pve-node'),
+ },
+ },
+ returns => { type => 'null' },
+ code => sub {
+ my ($param) = @_;
+
+ PMG::Postfix::delete_queue();
+
+ return undef;
+ }});
+
__PACKAGE__->register_method ({
name => 'delete_queue',
path => 'queue/{queue}',
return $res;
}
-# flush all queues
+# flush all queuespostconf -d|grep enable_long_queue_ids
sub flush_queues {
PVE::Tools::run_command(['/usr/sbin/postqueue', '-f']);
}
sub delete_queue {
my ($queue) = @_;
- PVE::Tools::run_command(['/usr/sbin/postsuper', '-d', 'ALL', $queue]);
+ my $cmd = ['/usr/sbin/postsuper', '-d', 'ALL'];
+ push @$cmd, $queue if defined($queue);
+
+ PVE::Tools::run_command($cmd);
}
sub discard_verify_cache {