Fix tasks to use proper cron syntax
This commit is contained in:
parent
51f4ea7d5d
commit
c1301c7190
5 changed files with 20 additions and 39 deletions
|
@ -30,6 +30,7 @@ use Illuminate\Contracts\Queue\ShouldQueue;
|
||||||
|
|
||||||
use DB;
|
use DB;
|
||||||
use Carbon;
|
use Carbon;
|
||||||
|
use Cron;
|
||||||
use Pterodactyl\Models;
|
use Pterodactyl\Models;
|
||||||
use Pterodactyl\Repositories\Daemon\CommandRepository;
|
use Pterodactyl\Repositories\Daemon\CommandRepository;
|
||||||
use Pterodactyl\Repositories\Daemon\PowerRepository;
|
use Pterodactyl\Repositories\Daemon\PowerRepository;
|
||||||
|
@ -94,9 +95,17 @@ class SendScheduledTask extends Job implements ShouldQueue
|
||||||
]);
|
]);
|
||||||
throw $ex;
|
throw $ex;
|
||||||
} finally {
|
} finally {
|
||||||
|
$cron = Cron::factory(sprintf('%s %s %s %s %s %s',
|
||||||
|
$this->task->minute,
|
||||||
|
$this->task->hour,
|
||||||
|
$this->task->day_of_month,
|
||||||
|
$this->task->month,
|
||||||
|
$this->task->day_of_week,
|
||||||
|
$this->task->year
|
||||||
|
));
|
||||||
$this->task->fill([
|
$this->task->fill([
|
||||||
'last_run' => $time,
|
'last_run' => $time,
|
||||||
'next_run' => $time->addMonths($this->task->month)->addWeeks($this->task->week)->addDays($this->task->day)->addHours($this->task->hour)->addMinutes($this->task->minute)->addSeconds($this->task->second),
|
'next_run' => $cron->getNextRunDate(),
|
||||||
'queued' => 0
|
'queued' => 0
|
||||||
]);
|
]);
|
||||||
$this->task->save();
|
$this->task->save();
|
||||||
|
|
|
@ -28,7 +28,8 @@
|
||||||
"s1lentium/iptools": "^1.0",
|
"s1lentium/iptools": "^1.0",
|
||||||
"edvinaskrucas/settings": "^2.0",
|
"edvinaskrucas/settings": "^2.0",
|
||||||
"igaster/laravel-theme": "^1.1",
|
"igaster/laravel-theme": "^1.1",
|
||||||
"nesbot/carbon": "^1.21"
|
"nesbot/carbon": "^1.21",
|
||||||
|
"mtdowling/cron-expression": "^1.1"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"fzaninotto/faker": "~1.4",
|
"fzaninotto/faker": "~1.4",
|
||||||
|
|
|
@ -183,6 +183,7 @@ return [
|
||||||
'Carbon' => Carbon\Carbon::class,
|
'Carbon' => Carbon\Carbon::class,
|
||||||
'Config' => Illuminate\Support\Facades\Config::class,
|
'Config' => Illuminate\Support\Facades\Config::class,
|
||||||
'Cookie' => Illuminate\Support\Facades\Cookie::class,
|
'Cookie' => Illuminate\Support\Facades\Cookie::class,
|
||||||
|
'Cron' => Cron\CronExpression::class,
|
||||||
'Crypt' => Illuminate\Support\Facades\Crypt::class,
|
'Crypt' => Illuminate\Support\Facades\Crypt::class,
|
||||||
'DB' => Illuminate\Support\Facades\DB::class,
|
'DB' => Illuminate\Support\Facades\DB::class,
|
||||||
'Debugbar' => Barryvdh\Debugbar\Facade::class,
|
'Debugbar' => Barryvdh\Debugbar\Facade::class,
|
||||||
|
|
|
@ -15,15 +15,16 @@ class AddTasksTable extends Migration
|
||||||
Schema::create('tasks', function (Blueprint $table) {
|
Schema::create('tasks', function (Blueprint $table) {
|
||||||
$table->increments('id');
|
$table->increments('id');
|
||||||
$table->integer('server')->unsigned();
|
$table->integer('server')->unsigned();
|
||||||
|
$table->tinyInteger('active')->default(1);
|
||||||
$table->string('action');
|
$table->string('action');
|
||||||
$table->text('data');
|
$table->text('data');
|
||||||
$table->tinyInteger('queued')->unsigned()->default(0);
|
$table->tinyInteger('queued')->unsigned()->default(0);
|
||||||
$table->integer('month')->default(0);
|
$table->string('year')->default('*');
|
||||||
$table->integer('week')->default(0);
|
$table->string('day_of_week')->default('*');
|
||||||
$table->integer('day')->default(0);
|
$table->string('month')->default('*');
|
||||||
$table->integer('hour')->default(0);
|
$table->string('day_of_month')->default('*');
|
||||||
$table->integer('minute')->default(0);
|
$table->string('hour')->default('*');
|
||||||
$table->integer('second')->default(0);
|
$table->string('minute')->default('*');
|
||||||
$table->timestamp('last_run');
|
$table->timestamp('last_run');
|
||||||
$table->timestamp('next_run');
|
$table->timestamp('next_run');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
|
||||||
use Illuminate\Database\Migrations\Migration;
|
|
||||||
|
|
||||||
class AddActiveTaskOption extends Migration
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Run the migrations.
|
|
||||||
*
|
|
||||||
* @return void
|
|
||||||
*/
|
|
||||||
public function up()
|
|
||||||
{
|
|
||||||
Schema::table('tasks', function (Blueprint $table) {
|
|
||||||
$table->tinyInteger('active')->default(1)->after('server');
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Reverse the migrations.
|
|
||||||
*
|
|
||||||
* @return void
|
|
||||||
*/
|
|
||||||
public function down()
|
|
||||||
{
|
|
||||||
Schema::table('tasks', function (Blueprint $table) {
|
|
||||||
$table->dropColumn('active');
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in a new issue