fix: make sure important jobs/actions are running on high prio queue

This commit is contained in:
Andras Bacsai
2024-11-22 11:16:01 +01:00
parent ef629d5816
commit 7dc65dfd79
58 changed files with 167 additions and 75 deletions

View File

@@ -34,6 +34,7 @@ class DeploymentFailed extends Notification implements ShouldQueue
public function __construct(Application $application, string $deployment_uuid, ?ApplicationPreview $preview = null)
{
$this->onQueue('high');
$this->application = $application;
$this->deployment_uuid = $deployment_uuid;
$this->preview = $preview;

View File

@@ -34,6 +34,7 @@ class DeploymentSuccess extends Notification implements ShouldQueue
public function __construct(Application $application, string $deployment_uuid, ?ApplicationPreview $preview = null)
{
$this->onQueue('high');
$this->application = $application;
$this->deployment_uuid = $deployment_uuid;
$this->preview = $preview;

View File

@@ -27,6 +27,7 @@ class StatusChanged extends Notification implements ShouldQueue
public function __construct(public Application $resource)
{
$this->onQueue('high');
$this->resource_name = data_get($resource, 'name');
$this->project_uuid = data_get($resource, 'environment.project.uuid');
$this->environment_name = data_get($resource, 'environment.name');

View File

@@ -17,6 +17,6 @@ class DiscordChannel
if (! $webhookUrl) {
return;
}
dispatch(new SendMessageToDiscordJob($message, $webhookUrl))->onQueue('high');
SendMessageToDiscordJob::dispatch($message, $webhookUrl);
}
}

View File

@@ -41,6 +41,6 @@ class TelegramChannel
if (! $telegramToken || ! $chatId || ! $message) {
return;
}
dispatch(new SendMessageToTelegramJob($message, $buttons, $telegramToken, $chatId, $topicId))->onQueue('high');
SendMessageToTelegramJob::dispatch($message, $buttons, $telegramToken, $chatId, $topicId);
}
}

View File

@@ -15,7 +15,10 @@ class ContainerRestarted extends Notification implements ShouldQueue
public $tries = 1;
public function __construct(public string $name, public Server $server, public ?string $url = null) {}
public function __construct(public string $name, public Server $server, public ?string $url = null)
{
$this->onQueue('high');
}
public function via(object $notifiable): array
{

View File

@@ -15,7 +15,10 @@ class ContainerStopped extends Notification implements ShouldQueue
public $tries = 1;
public function __construct(public string $name, public Server $server, public ?string $url = null) {}
public function __construct(public string $name, public Server $server, public ?string $url = null)
{
$this->onQueue('high');
}
public function via(object $notifiable): array
{

View File

@@ -23,6 +23,7 @@ class BackupFailed extends Notification implements ShouldQueue
public function __construct(ScheduledDatabaseBackup $backup, public $database, public $output, public $database_name)
{
$this->onQueue('high');
$this->name = $database->name;
$this->frequency = $backup->frequency;
}

View File

@@ -23,6 +23,7 @@ class BackupSuccess extends Notification implements ShouldQueue
public function __construct(ScheduledDatabaseBackup $backup, public $database, public $database_name)
{
$this->onQueue('high');
$this->name = $database->name;
$this->frequency = $backup->frequency;
}

View File

@@ -15,7 +15,10 @@ class GeneralNotification extends Notification implements ShouldQueue
public $tries = 1;
public function __construct(public string $message) {}
public function __construct(public string $message)
{
$this->onQueue('high');
}
public function via(object $notifiable): array
{

View File

@@ -21,6 +21,7 @@ class TaskFailed extends Notification implements ShouldQueue
public function __construct(public ScheduledTask $task, public string $output)
{
$this->onQueue('high');
if ($task->application) {
$this->url = $task->application->failedTaskLink($task->uuid);
} elseif ($task->service) {

View File

@@ -16,7 +16,10 @@ class DockerCleanup extends Notification implements ShouldQueue
public $tries = 1;
public function __construct(public Server $server, public string $message) {}
public function __construct(public Server $server, public string $message)
{
$this->onQueue('high');
}
public function via(object $notifiable): array
{

View File

@@ -18,7 +18,10 @@ class ForceDisabled extends Notification implements ShouldQueue
public $tries = 1;
public function __construct(public Server $server) {}
public function __construct(public Server $server)
{
$this->onQueue('high');
}
public function via(object $notifiable): array
{

View File

@@ -18,7 +18,10 @@ class ForceEnabled extends Notification implements ShouldQueue
public $tries = 1;
public function __construct(public Server $server) {}
public function __construct(public Server $server)
{
$this->onQueue('high');
}
public function via(object $notifiable): array
{

View File

@@ -15,7 +15,10 @@ class HighDiskUsage extends Notification implements ShouldQueue
public $tries = 1;
public function __construct(public Server $server, public int $disk_usage, public int $server_disk_usage_notification_threshold) {}
public function __construct(public Server $server, public int $disk_usage, public int $server_disk_usage_notification_threshold)
{
$this->onQueue('high');
}
public function via(object $notifiable): array
{

View File

@@ -22,6 +22,7 @@ class Reachable extends Notification implements ShouldQueue
public function __construct(public Server $server)
{
$this->onQueue('high');
$this->isRateLimited = isEmailRateLimited(
limiterKey: 'server-reachable:'.$this->server->id,
);

View File

@@ -22,6 +22,7 @@ class Unreachable extends Notification implements ShouldQueue
public function __construct(public Server $server)
{
$this->onQueue('high');
$this->isRateLimited = isEmailRateLimited(
limiterKey: 'server-unreachable:'.$this->server->id,
);

View File

@@ -15,7 +15,10 @@ class Test extends Notification implements ShouldQueue
public $tries = 5;
public function __construct(public ?string $emails = null) {}
public function __construct(public ?string $emails = null)
{
$this->onQueue('high');
}
public function via(object $notifiable): array
{

View File

@@ -22,7 +22,10 @@ class InvitationLink extends Notification implements ShouldQueue
return [TransactionalEmailChannel::class];
}
public function __construct(public User $user) {}
public function __construct(public User $user)
{
$this->onQueue('high');
}
public function toMail(): MailMessage
{

View File

@@ -14,7 +14,10 @@ class Test extends Notification implements ShouldQueue
public $tries = 5;
public function __construct(public string $emails) {}
public function __construct(public string $emails)
{
$this->onQueue('high');
}
public function via(): array
{