From 2a864e237e3dc0194844d05d78d2ce475760bc29 Mon Sep 17 00:00:00 2001 From: Victor R <39545521+viicslen@users.noreply.github.com> Date: Wed, 1 Oct 2025 13:32:59 -0400 Subject: [PATCH] Refactor forgetDisks to handle scoped disks --- .../FilesystemTenancyBootstrapper.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/Bootstrappers/FilesystemTenancyBootstrapper.php b/src/Bootstrappers/FilesystemTenancyBootstrapper.php index d5088c5c..f1891d8d 100644 --- a/src/Bootstrappers/FilesystemTenancyBootstrapper.php +++ b/src/Bootstrappers/FilesystemTenancyBootstrapper.php @@ -113,7 +113,19 @@ class FilesystemTenancyBootstrapper implements TenancyBootstrapper protected function forgetDisks(): void { - Storage::forgetDisk($this->app['config']['tenancy.filesystem.disks']); + $tenantDisks = $this->app['config']['tenancy.filesystem.disks']; + $scopedDisks = []; + + foreach ($this->app['config']['filesystems.disks'] as $name => $disk) { + if (isset($disk['driver'], $disk['disk']) + && $disk['driver'] === 'scoped' + && in_array($disk['disk'], $tenantDisks, true) + && ! in_array($disk['disk'], $scopedDisks, true)) { + $scopedDisks[] = $name; + } + } + + Storage::forgetDisk([...$tenantDisks, ...$scopedDisks]); } protected function diskRoot(string $disk, Tenant|false $tenant): void