mailwolt/app/Jobs/ClamavEnable.php

26 lines
723 B
PHP

<?php
namespace App\Jobs;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class ClamavEnable implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public int $timeout = 120;
public function handle(): void
{
exec('sudo -n /usr/local/sbin/mailwolt-clamav enable 2>&1', $out, $rc);
\Log::info('ClamavEnable job', ['rc' => $rc, 'out' => $out]);
if ($rc !== 0) {
throw new \RuntimeException('mailwolt-clamav enable failed (rc=' . $rc . '): ' . implode(' ', $out));
}
}
}