Refactoring: extract process handling from async job.

This commit is contained in:
Joao Patricio 2023-03-21 10:02:16 +00:00
parent cf121062a1
commit 34c9265aa9
3 changed files with 29 additions and 9 deletions

View File

@ -2,6 +2,7 @@
namespace App\Actions\RemoteProcess;
use App\Data\RemoteProcessArgs;
use App\Enums\ActivityTypes;
use App\Enums\ProcessStatus;
use App\Jobs\ExecuteCoolifyProcess;
@ -19,15 +20,15 @@ public function __construct(
protected ?int $port = 22,
protected ?string $user = 'root',
){
$arguments = new RemoteProcessArgs(
destination: $this->destination,
command: $this->command,
port: $this->port,
user: $this->user,
);
$this->activity = activity()
->withProperties([
'type' => ActivityTypes::COOLIFY_PROCESS,
'status' => ProcessStatus::HOLDING,
'user' => $this->user,
'destination' => $this->destination,
'port' => $this->port,
'command' => $this->command,
])
->withProperties($arguments->toArray())
->log("Awaiting command to start...\n\n");
}

View File

@ -0,0 +1,19 @@
<?php
namespace App\Data;
use App\Enums\ActivityTypes;
use App\Enums\ProcessStatus;
use Spatie\LaravelData\Data;
class RemoteProcessArgs extends Data
{
public function __construct(
protected string $destination,
protected string $command,
protected int $port = 22,
protected string $user = 'root',
protected string $type = ActivityTypes::COOLIFY_PROCESS->value,
protected string $status = ProcessStatus::HOLDING->value,
){}
}

View File

@ -5,7 +5,7 @@
"keywords": ["framework", "laravel"],
"license": "MIT",
"require": {
"php": "^8.1",
"php": "^8.2",
"guzzlehttp/guzzle": "^7.2",
"laravel/framework": "^10.0",
"laravel/sanctum": "^3.2",