You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
650 B
21 lines
650 B
<?php
|
|
|
|
namespace App\Domains\System\Actions\Backup;
|
|
|
|
use Illuminate\Http\UploadedFile;
|
|
use Livewire\Features\SupportFileUploads\TemporaryUploadedFile;
|
|
|
|
class UploadBackupFile
|
|
{
|
|
public function __construct(protected SyncBackupCatalog $syncBackupCatalog) {}
|
|
|
|
public function execute(UploadedFile|TemporaryUploadedFile $file): void
|
|
{
|
|
// Spatie configurations
|
|
$diskName = config('backup.backup.destination.disks')[0];
|
|
$backupDirectory = config('backup.backup.name');
|
|
|
|
$file->storeAs($backupDirectory, $file->getClientOriginalName(), ['disk' => $diskName]);
|
|
$this->syncBackupCatalog->execute();
|
|
}
|
|
}
|
|
|