mirror of
https://github.com/vitodeploy/vito.git
synced 2025-07-04 15:32:35 +00:00
#591 - backups
This commit is contained in:
@ -5,7 +5,10 @@
|
||||
use App\Enums\BackupFileStatus;
|
||||
use App\Models\BackupFile;
|
||||
use App\Models\Database;
|
||||
use App\Models\Server;
|
||||
use App\Models\Service;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
class RestoreBackup
|
||||
{
|
||||
@ -14,6 +17,8 @@ class RestoreBackup
|
||||
*/
|
||||
public function restore(BackupFile $backupFile, array $input): void
|
||||
{
|
||||
Validator::make($input, self::rules($backupFile->backup->server))->validate();
|
||||
|
||||
/** @var Database $database */
|
||||
$database = Database::query()->findOrFail($input['database']);
|
||||
$backupFile->status = BackupFileStatus::RESTORING;
|
||||
@ -38,12 +43,12 @@ public function restore(BackupFile $backupFile, array $input): void
|
||||
/**
|
||||
* @return array<string, array<string>>
|
||||
*/
|
||||
public static function rules(): array
|
||||
public static function rules(Server $server): array
|
||||
{
|
||||
return [
|
||||
'database' => [
|
||||
'required',
|
||||
'exists:databases,id',
|
||||
Rule::exists('databases', 'id')->where('server_id', $server->id),
|
||||
],
|
||||
];
|
||||
}
|
||||
|
Reference in New Issue
Block a user