init: scheduled backups

This commit is contained in:
Andras Bacsai
2023-08-08 17:28:36 +02:00
parent b4b1c671bd
commit 46909dca85
11 changed files with 159 additions and 4 deletions

View File

@@ -0,0 +1,24 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration {
public function up(): void
{
Schema::create('scheduled_database_backups', function (Blueprint $table) {
$table->id();
$table->boolean('enabled')->default(true);
$table->string('frequency');
$table->morphs('database');
$table->foreignId('team_id');
$table->timestamps();
});
}
public function down(): void
{
Schema::dropIfExists('scheduled_database_backups');
}
};

View File

@@ -0,0 +1,34 @@
<?php
namespace Database\Seeders;
use App\Models\ScheduledDatabaseBackup;
use Illuminate\Database\Seeder;
class ScheduledDatabaseBackupSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
ScheduledDatabaseBackup::create([
'frequency' => '* * * * *',
'database_id' => 1,
'database_type' => 'App\Models\StandalonePostgresql',
'team_id' => 0,
]);
ScheduledDatabaseBackup::create([
'frequency' => '*/2 * * * *',
'database_id' => 1,
'database_type' => 'App\Models\StandalonePostgresql',
'team_id' => 0,
]);
ScheduledDatabaseBackup::create([
'frequency' => '*/3 * * * *',
'database_id' => 1,
'database_type' => 'App\Models\StandalonePostgresql',
'team_id' => 0,
]);
}
}