This commit is contained in:
Saeed Vaziry
2023-07-02 12:47:50 +02:00
commit 5c72f12490
825 changed files with 41659 additions and 0 deletions

48
app/Jobs/Ssl/Deploy.php Normal file
View File

@ -0,0 +1,48 @@
<?php
namespace App\Jobs\Ssl;
use App\Enums\SiteType;
use App\Enums\SslStatus;
use App\Events\Broadcast;
use App\Jobs\Job;
use App\Models\Ssl;
class Deploy extends Job
{
protected Ssl $ssl;
public function __construct(Ssl $ssl)
{
$this->ssl = $ssl;
}
public function handle(): void
{
$this->ssl->site->server->webserver()->handler()->setupSSL($this->ssl);
$this->ssl->status = SslStatus::CREATED;
$this->ssl->save();
event(
new Broadcast('deploy-ssl-finished', [
'ssl' => $this->ssl,
])
);
if ($this->ssl->site->type == SiteType::WORDPRESS) {
$typeData = $this->ssl->site->type_data;
$typeData['url'] = $this->ssl->site->url;
$this->ssl->site->type_data = $typeData;
$this->ssl->site->save();
$this->ssl->site->type()->edit();
}
}
public function failed(): void
{
event(
new Broadcast('deploy-ssl-failed', [
'ssl' => $this->ssl,
])
);
$this->ssl->delete();
}
}

39
app/Jobs/Ssl/Remove.php Normal file
View File

@ -0,0 +1,39 @@
<?php
namespace App\Jobs\Ssl;
use App\Events\Broadcast;
use App\Jobs\Job;
use App\Models\Ssl;
class Remove extends Job
{
protected Ssl $ssl;
public function __construct(Ssl $ssl)
{
$this->ssl = $ssl;
}
public function handle(): void
{
$this->ssl->site->server->webserver()->handler()->removeSSL($this->ssl);
$this->ssl->delete();
event(
new Broadcast('remove-ssl-finished', [
'ssl' => $this->ssl,
])
);
}
public function failed(): void
{
$this->ssl->status = 'failed';
$this->ssl->save();
event(
new Broadcast('remove-ssl-failed', [
'ssl' => $this->ssl,
])
);
}
}