vito/app/Jobs/Site/ComposerInstall.php
2023-08-04 18:28:04 +02:00

35 lines
660 B
PHP
Executable File

<?php
namespace App\Jobs\Site;
use App\Exceptions\ComposerInstallFailed;
use App\Jobs\Job;
use App\Models\Site;
use App\SSHCommands\Website\ComposerInstallCommand;
use Throwable;
class ComposerInstall extends Job
{
protected Site $site;
public function __construct(Site $site)
{
$this->site = $site;
}
/**
* @throws ComposerInstallFailed
* @throws Throwable
*/
public function handle(): void
{
$this->site->server->ssh()->exec(
new ComposerInstallCommand(
$this->site->path
),
'composer-install',
$this->site->id
);
}
}