data = $data; } /** * Execute the job. * * @return void */ public function handle() { $fileDisk = FileDisk::find($this->data['file_disk_id']); $fileDisk->setConfig(); $prefix = env('DYNAMIC_DISK_PREFIX', 'temp_'); config(['backup.backup.destination.disks' => [$prefix . $fileDisk->driver]]); $backupJob = BackupJobFactory::createFromArray(config('backup')); if ($this->data['option'] === 'only-db') { $backupJob->dontBackupFilesystem(); } if ($this->data['option'] === 'only-files') { $backupJob->dontBackupDatabases(); } if (! empty($this->data['option'])) { $prefix = str_replace('_', '-', $this->data['option']).'-'; $backupJob->setFilename($prefix.date('Y-m-d-H-i-s').'.zip'); } $backupJob->run(); } }