Mini Shell
#!/usr/local/cpanel/3rdparty/bin/perl
# cpanel - scripts/email_hold_maintenance Copyright 2022 cPanel, L.L.C.
# All rights reserved.
# copyright@cpanel.net http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited
package scripts::email_hold_maintenance;
use strict;
use warnings;
use Cpanel::PIDFile ();
use Cpanel::Email::Accounts::HoldMaintenance ();
use Cpanel::Email::Accounts::Paths ();
use Cpanel::FileUtils::Dir ();
=encoding utf-8
=head1 NAME
scripts::email_hold_maintenance
=head1 SYNOPSIS
email_hold_maintenance --help
This script will remove the tracking file for email holds that have been released or
deleted from the mail queue.
=cut
use constant PIDFILE => '/var/run/email_hold_maintenance.pid';
use parent qw( Cpanel::HelpfulScript );
__PACKAGE__->new(@ARGV)->script() unless caller();
sub script {
my ($self) = @_;
return Cpanel::PIDFile->do(
PIDFILE,
sub {
$self->run();
}
);
}
sub _OPTIONS { }
sub run {
return if !-e $Cpanel::Email::Accounts::Paths::EMAIL_HOLDS_BASE_PATH;
foreach my $sender ( @{ Cpanel::FileUtils::Dir::get_directory_nodes($Cpanel::Email::Accounts::Paths::EMAIL_HOLDS_BASE_PATH) } ) {
Cpanel::Email::Accounts::HoldMaintenance::remove_hold_files_for_sender($sender);
}
return;
}
1;
Zerion Mini Shell 1.0