fix(migration): store subjectAlternativeNames as a json array in the db

This commit is contained in:
peaklabs-dev
2025-02-03 22:35:00 +01:00
parent f871c1067b
commit fba95c3729
3 changed files with 3 additions and 2 deletions

View File

@@ -107,7 +107,7 @@ class SslHelper
'valid_until' => CarbonImmutable::now()->addDays($validityDays),
'is_ca_certificate' => $isCaCertificate,
'common_name' => $commonName,
'subject_alternative_names' => implode(', ', array_merge(["DNS:$commonName"], $subjectAlternativeNames)),
'subject_alternative_names' => $subjectAlternativeNames,
]);
} catch (\Throwable $e) {
throw new \RuntimeException('SSL Certificate generation failed: '.$e->getMessage(), 0, $e);

View File

@@ -21,6 +21,7 @@ class SslCertificate extends Model
protected $casts = [
'ssl_certificate' => 'encrypted',
'ssl_private_key' => 'encrypted',
'subject_alternative_names' => 'array',
'valid_until' => 'datetime',
];

View File

@@ -16,7 +16,7 @@ return new class extends Migration
$table->unsignedBigInteger('resource_id')->nullable();
$table->unsignedBigInteger('server_id');
$table->text('common_name');
$table->text('subject_alternative_names')->nullable();
$table->json('subject_alternative_names')->nullable();
$table->timestamp('valid_until');
$table->boolean('is_ca_certificate')->default(false);
$table->timestamps();