diff --git a/app/Models/ScheduledJob.php b/app/Models/ScheduledJob.php new file mode 100644 index 000000000000..1ea55164386f --- /dev/null +++ b/app/Models/ScheduledJob.php @@ -0,0 +1,49 @@ + 'array', + 'scheduled_run' => 'date', + 'parameters' => 'array' + ]; +} diff --git a/app/Models/Scheduler.php b/app/Models/Scheduler.php new file mode 100644 index 000000000000..2954a1e47ecd --- /dev/null +++ b/app/Models/Scheduler.php @@ -0,0 +1,45 @@ +hasOne(ScheduledJob::class, 'scheduler_id', 'id'); + } +} diff --git a/database/migrations/2022_05_18_162152_create_scheduled_jobs_table.php b/database/migrations/2022_05_18_162152_create_scheduled_jobs_table.php new file mode 100644 index 000000000000..7b5b93465a69 --- /dev/null +++ b/database/migrations/2022_05_18_162152_create_scheduled_jobs_table.php @@ -0,0 +1,44 @@ +id(); + $table->string('action_name'); + $table->string('action_class'); + $table->json('parameters')->nullable(); + $table->foreignIdFor(\App\Models\Scheduler::class); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('scheduled_jobs'); + } +} diff --git a/database/migrations/2022_05_18_162443_create_schedulers_table.php b/database/migrations/2022_05_18_162443_create_schedulers_table.php new file mode 100644 index 000000000000..fbe3ebe6bba1 --- /dev/null +++ b/database/migrations/2022_05_18_162443_create_schedulers_table.php @@ -0,0 +1,45 @@ +id(); + $table->boolean('paused')->default(false); + $table->boolean('archived')->default(false); + $table->string('repeat_every'); + $table->timestamp('start_from'); + $table->timestamp('scheduled_run'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('schedulers'); + } +}