vito/app/SSHCommands/Website/CloneRepositoryCommand.php
2023-08-04 18:28:04 +02:00

34 lines
881 B
PHP
Executable File

<?php
namespace App\SSHCommands\Website;
use App\SSHCommands\Command;
use Illuminate\Support\Facades\File;
class CloneRepositoryCommand extends Command
{
public function __construct(
protected string $repository,
protected string $path,
protected string $branch,
protected string $privateKeyPath
) {
}
public function file(): string
{
return File::get(resource_path('commands/website/clone-repository.sh'));
}
public function content(): string
{
return str($this->file())
->replace('__repo__', $this->repository)
->replace('__host__', str($this->repository)->after('@')->before('-'))
->replace('__branch__', $this->branch)
->replace('__path__', $this->path)
->replace('__key__', $this->privateKeyPath)
->toString();
}
}