CluPilotCloud/routes/console.php

24 lines
796 B
PHP

<?php
use App\Console\TickProvisioning;
use Illuminate\Foundation\Inspiring;
use Illuminate\Support\Facades\Artisan;
use Illuminate\Support\Facades\Schedule;
Artisan::command('inspire', function () {
$this->comment(Inspiring::quote());
})->purpose('Display an inspiring quote');
// Advance every due provisioning run once a minute (runs in the scheduler service).
Schedule::call(fn () => app(TickProvisioning::class)())
->everyMinute()
->name('provisioning-tick')
->withoutOverlapping();
// Refresh the VPN peer state (handshakes, traffic) so the console does not go
// stale while nobody has it open. The job itself runs on the provisioning
// queue — that worker owns wg0.
Schedule::job(new \App\Provisioning\Jobs\SyncVpnPeers)
->everyMinute()
->name('vpn-sync');