From b02d9487ba16acee49197f5e905d74ee60003f82 Mon Sep 17 00:00:00 2001 From: "Ronald A. Richardson" Date: Wed, 7 Oct 2026 14:23:33 +0800 Subject: [PATCH] fix(backups): queue the manual backup through the bus dispatcher RunDatabaseBackup::dispatch() comes from the Dispatchable trait. Several test files define an empty Illuminate\Foundation\Bus\Dispatchable shim, so when one of them loads first the static dispatch() is missing and DatabaseBackupsTest fails depending on test order (PHP CI on release/v1.6.69 fails this way). Dispatching through the bus contract behaves the same at runtime and does not depend on the trait. --- src/Http/Controllers/Internal/v1/DatabaseBackupController.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Http/Controllers/Internal/v1/DatabaseBackupController.php b/src/Http/Controllers/Internal/v1/DatabaseBackupController.php index 2784d49a..4cf5bf68 100644 --- a/src/Http/Controllers/Internal/v1/DatabaseBackupController.php +++ b/src/Http/Controllers/Internal/v1/DatabaseBackupController.php @@ -7,6 +7,7 @@ use Fleetbase\Jobs\RunDatabaseBackup; use Fleetbase\Models\DatabaseBackup; use Fleetbase\Support\DatabaseBackupSettings; +use Illuminate\Contracts\Bus\Dispatcher; use Illuminate\Http\JsonResponse; use Illuminate\Validation\Rule; @@ -76,7 +77,7 @@ public function runs(AdminRequest $request): JsonResponse */ public function run(AdminRequest $request): JsonResponse { - RunDatabaseBackup::dispatch(DatabaseBackup::TRIGGER_MANUAL); + app(Dispatcher::class)->dispatch(new RunDatabaseBackup(DatabaseBackup::TRIGGER_MANUAL)); return response()->json(['status' => 'queued'], 202); }