coolify/database/seeders/SentinelSeeder.php

33 lines
1 KiB
PHP
Raw Permalink Normal View History

2024-10-15 11:39:19 +00:00
<?php
namespace Database\Seeders;
use App\Models\Server;
use Illuminate\Database\Seeder;
2024-11-06 11:39:37 +00:00
use Illuminate\Support\Facades\Log;
2024-10-15 11:39:19 +00:00
2024-10-15 13:43:53 +00:00
class SentinelSeeder extends Seeder
2024-10-15 11:39:19 +00:00
{
public function run()
{
2024-10-17 12:56:36 +00:00
Server::chunk(100, function ($servers) {
foreach ($servers as $server) {
try {
2024-10-15 11:39:19 +00:00
if (str($server->settings->sentinel_token)->isEmpty()) {
2024-11-08 09:39:02 +00:00
$server->settings->generateSentinelToken(ignoreEvent: true);
2024-10-15 11:39:19 +00:00
}
2024-10-15 13:43:53 +00:00
if (str($server->settings->sentinel_custom_url)->isEmpty()) {
2024-11-08 09:39:02 +00:00
$url = $server->settings->generateSentinelUrl(ignoreEvent: true);
2024-10-17 12:56:36 +00:00
if (str($url)->isEmpty()) {
$server->settings->is_sentinel_enabled = false;
$server->settings->save();
}
2024-10-15 13:43:53 +00:00
}
2024-10-17 12:56:36 +00:00
} catch (\Throwable $e) {
2024-11-06 11:39:37 +00:00
Log::error('Error seeding sentinel: '.$e->getMessage());
2024-10-15 11:39:19 +00:00
}
2024-10-17 12:56:36 +00:00
}
});
2024-10-15 11:39:19 +00:00
}
}