mirror of
https://github.com/tiennm99/coolify.git
synced 2026-10-13 18:15:24 +00:00
fix(queue): route cloud jobs to dedicated queues
Use config-based queue selection for deployment and scheduled jobs so cloud dispatches deployments to `deployments` and scheduled jobs to `crons`, while self-hosted keeps using `high`. Add coverage for deployment queue helper, start action routing, and scheduled job manager routing.
This commit is contained in:
1 parent
11dbcfcfe8
commit
e2199f1223
8 files changed
+109
-20
No files matched your search
@@ -40,14 +40,15 @@ class ScheduledJobManager implements ShouldQueue
|
||||
$this->onQueue($this->determineQueue());
|
||||
}
|
||||
|
||||
/**
|
||||
* On cloud this job runs on a dedicated `crons` queue so it can be drained by an isolated
|
||||
* Horizon worker pool; self-hosted keeps it on the shared `high` queue. Routing is decided
|
||||
* by `isCloud()` (config-based), so the dispatching process needs no special env — only
|
||||
* the worker must be configured to drain `crons` via `HORIZON_QUEUES`.
|
||||
*/
|
||||
private function determineQueue(): string
|
||||
{
|
||||
$preferredQueue = 'crons';
|
||||
$fallbackQueue = 'high';
|
||||
|
||||
$configuredQueues = explode(',', env('HORIZON_QUEUES', 'high,default'));
|
||||
|
||||
return in_array($preferredQueue, $configuredQueues) ? $preferredQueue : $fallbackQueue;
|
||||
return isCloud() ? 'crons' : 'high';
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in new issue
Block a user