mirror of
https://github.com/vitodeploy/vito.git
synced 2025-04-23 03:32:19 +00:00
- refactoring architecture - fix incomplete ssh logs - code editor for scripts in the app - remove Jobs and SSHCommands
33 lines
849 B
PHP
Executable File
33 lines
849 B
PHP
Executable File
<?php
|
|
|
|
namespace App\SSH\Services\Database;
|
|
|
|
use App\Models\Server;
|
|
use App\Models\Service;
|
|
use App\SSH\HasScripts;
|
|
use App\SSH\Services\ServiceInterface;
|
|
|
|
abstract class AbstractDatabase implements Database, ServiceInterface
|
|
{
|
|
use HasScripts;
|
|
|
|
protected Service $service;
|
|
|
|
protected Server $server;
|
|
|
|
public function __construct(Service $service)
|
|
{
|
|
$this->service = $service;
|
|
$this->server = $service->server;
|
|
}
|
|
|
|
public function install(): void
|
|
{
|
|
$version = $this->service->version;
|
|
$command = $this->getScript($this->service->name.'/install-'.$version.'.sh');
|
|
$this->server->ssh()->exec($command, 'install-'.$this->service->name.'-'.$version);
|
|
$status = $this->server->systemd()->status($this->service->unit);
|
|
$this->service->validateInstall($status);
|
|
}
|
|
}
|