Refactoring: extract process handling from async job.
This commit is contained in:
parent
cf121062a1
commit
34c9265aa9
@ -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");
|
||||
}
|
||||
|
||||
|
19
app/Data/RemoteProcessArgs.php
Normal file
19
app/Data/RemoteProcessArgs.php
Normal 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,
|
||||
){}
|
||||
}
|
@ -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",
|
||||
|
Loading…
Reference in New Issue
Block a user