getClient(); } catch (Error $e) { // if s3 is not configured or enabled, bail $this->error( 'S3 is not configured or not selected as storage method in settings page.', ); return 0; } $data = $client->listMultipartUploads([ 'Bucket' => $this->getBucket(), ]); $uploads = $data['Uploads'] ?: []; foreach ($uploads as $upload) { $createdAt = Carbon::parse($upload['Initiated']); if ($createdAt->lessThanOrEqualTo(Carbon::now()->subDay())) { $client->abortMultipartUpload([ 'Bucket' => $this->getBucket(), 'Key' => $upload['Key'], 'UploadId' => $upload['UploadId'], ]); } } $this->info('Expired uploads deleted from S3'); return Command::SUCCESS; } protected function getDiskName(): string { if (Storage::disk('uploads') instanceof AwsS3V3Adapter) { return 'uploads'; } return 'public'; } }