diff --git a/app/Livewire/Project/Database/Mariadb/General.php b/app/Livewire/Project/Database/Mariadb/General.php index ac6e79140..63bfd16cd 100644 --- a/app/Livewire/Project/Database/Mariadb/General.php +++ b/app/Livewire/Project/Database/Mariadb/General.php @@ -158,10 +158,9 @@ class General extends Component public function regenerateSslCertificate() { try { - $server = $this->database->destination->server; - $existingCert = SslCertificate::where('resource_type', $this->database->getMorphClass()) ->where('resource_id', $this->database->id) + ->where('server_id', $this->server->id) ->first(); if (! $existingCert) { @@ -170,7 +169,10 @@ class General extends Component return; } - $caCert = SslCertificate::where('server_id', $server->id)->firstOrFail(); + $caCertificate = SslCertificate::where('server_id', $this->server->id) + ->where('resource_type', null) + ->where('resource_id', null) + ->first(); SslHelper::generateSslCertificate( commonName: $existingCert->common_name, @@ -178,9 +180,10 @@ class General extends Component resourceType: $existingCert->resource_type, resourceId: $existingCert->resource_id, serverId: $existingCert->server_id, - caCert: $caCert->ssl_certificate, - caKey: $caCert->ssl_private_key, + caCert: $caCertificate->ssl_certificate, + caKey: $caCertificate->ssl_private_key, configurationDir: $existingCert->configuration_dir, + mountPath: '/var/lib/mysql/certs', ); $this->dispatch('success', 'SSL certificates have been regenerated. Please restart the database for changes to take effect.'); diff --git a/app/Livewire/Project/Database/Mysql/General.php b/app/Livewire/Project/Database/Mysql/General.php index 9ae54e60a..d7d34c2e1 100644 --- a/app/Livewire/Project/Database/Mysql/General.php +++ b/app/Livewire/Project/Database/Mysql/General.php @@ -158,10 +158,9 @@ class General extends Component public function regenerateSslCertificate() { try { - $server = $this->database->destination->server; - $existingCert = SslCertificate::where('resource_type', $this->database->getMorphClass()) ->where('resource_id', $this->database->id) + ->where('server_id', $this->server->id) ->first(); if (! $existingCert) { @@ -170,7 +169,10 @@ class General extends Component return; } - $caCert = SslCertificate::where('server_id', $server->id)->firstOrFail(); + $caCertificate = SslCertificate::where('server_id', $this->server->id) + ->where('resource_type', null) + ->where('resource_id', null) + ->first(); SslHelper::generateSslCertificate( commonName: $existingCert->common_name, @@ -178,9 +180,10 @@ class General extends Component resourceType: $existingCert->resource_type, resourceId: $existingCert->resource_id, serverId: $existingCert->server_id, - caCert: $caCert->ssl_certificate, - caKey: $caCert->ssl_private_key, + caCert: $caCertificate->ssl_certificate, + caKey: $caCertificate->ssl_private_key, configurationDir: $existingCert->configuration_dir, + mountPath: '/var/lib/mysql/certs', ); $this->dispatch('success', 'SSL certificates have been regenerated. Please restart the database for changes to take effect.'); diff --git a/app/Livewire/Project/Database/Postgresql/General.php b/app/Livewire/Project/Database/Postgresql/General.php index cb8cefc76..534b66a6d 100644 --- a/app/Livewire/Project/Database/Postgresql/General.php +++ b/app/Livewire/Project/Database/Postgresql/General.php @@ -122,10 +122,9 @@ class General extends Component public function regenerateSslCertificate() { try { - $server = $this->database->destination->server; - $existingCert = SslCertificate::where('resource_type', $this->database->getMorphClass()) ->where('resource_id', $this->database->id) + ->where('server_id', $this->server->id) ->first(); if (! $existingCert) { @@ -134,7 +133,10 @@ class General extends Component return; } - $caCert = SslCertificate::where('server_id', $server->id)->firstOrFail(); + $caCertificate = SslCertificate::where('server_id', $this->server->id) + ->where('resource_type', null) + ->where('resource_id', null) + ->first(); SslHelper::generateSslCertificate( commonName: $existingCert->common_name, @@ -142,9 +144,10 @@ class General extends Component resourceType: $existingCert->resource_type, resourceId: $existingCert->resource_id, serverId: $existingCert->server_id, - caCert: $caCert->ssl_certificate, - caKey: $caCert->ssl_private_key, + caCert: $caCertificate->ssl_certificate, + caKey: $caCertificate->ssl_private_key, configurationDir: $existingCert->configuration_dir, + mountPath: '/var/lib/postgresql/certs', ); $this->dispatch('success', 'SSL certificates have been regenerated. Please restart the database for changes to take effect.');