feat: Root user envs and seeding

This commit is contained in:
peaklabs-dev
2025-01-16 17:19:38 +01:00
parent f997872738
commit b6633f083e
3 changed files with 35 additions and 0 deletions

View File

@@ -2,6 +2,10 @@ APP_ID=
APP_NAME=Coolify
APP_KEY=
ROOT_USER_NAME=
ROOT_USER_EMAIL=
ROOT_USER_PASSWORD=
DB_USERNAME=coolify
DB_PASSWORD=

View File

@@ -39,6 +39,9 @@ class ProductionSeeder extends Seeder
]);
}
}
// Seed root user first
$this->call(RootUserSeeder::class);
if (InstanceSettings::find(0) == null) {
InstanceSettings::create([
'id' => 0,

View File

@@ -0,0 +1,28 @@
<?php
namespace Database\Seeders;
use App\Models\User;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\Hash;
class RootUserSeeder extends Seeder
{
public function run(): void
{
// Only seed if we have the required environment variables
if (env('ROOT_USER_EMAIL') && env('ROOT_USER_PASSWORD')) {
User::updateOrCreate(
['id' => 0],
[
'name' => env('ROOT_USER_NAME', 'Root User'),
'email' => env('ROOT_USER_EMAIL'),
'password' => Hash::make(env('ROOT_USER_PASSWORD')),
]
);
echo " Root user created/updated successfully.\n";
} else {
echo " Warning: ROOT_USER_EMAIL and ROOT_USER_PASSWORD environment variables are required for root user creation.\n";
}
}
}