Skip to content

Commit f2584d0

Browse files
committed
feat: artisan commands in bundles
1 parent 35ab017 commit f2584d0

File tree

5 files changed

+34
-10
lines changed

5 files changed

+34
-10
lines changed

src/ChildProcess.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ public function start(
8080
* @param string|string[] $cmd
8181
* @return $this
8282
*/
83-
public function php(string|array $cmd, string $alias, ?array $env = null, ?bool $persistent = false): self
83+
public function php(string|array $cmd, string $alias, ?array $env = null, ?bool $persistent = false, ?array $iniSettings = null): self
8484
{
8585
$cmd = is_array($cmd) ? array_values($cmd) : [$cmd];
8686

@@ -90,6 +90,7 @@ public function php(string|array $cmd, string $alias, ?array $env = null, ?bool
9090
'cwd' => base_path(),
9191
'env' => $env,
9292
'persistent' => $persistent,
93+
'iniSettings' => $iniSettings,
9394
])->json();
9495

9596
return $this->fromRuntimeProcess($process);
@@ -99,13 +100,13 @@ public function php(string|array $cmd, string $alias, ?array $env = null, ?bool
99100
* @param string|string[] $cmd
100101
* @return $this
101102
*/
102-
public function artisan(string|array $cmd, string $alias, ?array $env = null, ?bool $persistent = false): self
103+
public function artisan(string|array $cmd, string $alias, ?array $env = null, ?bool $persistent = false, ?array $iniSettings = null): self
103104
{
104105
$cmd = is_array($cmd) ? array_values($cmd) : [$cmd];
105106

106107
$cmd = ['artisan', ...$cmd];
107108

108-
return $this->php($cmd, $alias, env: $env, persistent: $persistent);
109+
return $this->php($cmd, $alias, env: $env, persistent: $persistent, iniSettings: $iniSettings);
109110
}
110111

111112
public function stop(?string $alias = null): void

src/Contracts/ChildProcess.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ public function start(
1616
bool $persistent = false
1717
): self;
1818

19-
public function php(string|array $cmd, string $alias, ?array $env = null, ?bool $persistent = false): self;
19+
public function php(string|array $cmd, string $alias, ?array $env = null, ?bool $persistent = false, ?array $iniSettings = null): self;
2020

21-
public function artisan(string|array $cmd, string $alias, ?array $env = null, ?bool $persistent = false): self;
21+
public function artisan(string|array $cmd, string $alias, ?array $env = null, ?bool $persistent = false, ?array $iniSettings = null): self;
2222

2323
public function stop(?string $alias = null): void;
2424

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<?php
2+
3+
namespace Native\Laravel\Events\ChildProcess;
4+
5+
use Illuminate\Broadcasting\Channel;
6+
use Illuminate\Contracts\Broadcasting\ShouldBroadcastNow;
7+
use Illuminate\Foundation\Events\Dispatchable;
8+
use Illuminate\Queue\SerializesModels;
9+
10+
class StartupError implements ShouldBroadcastNow
11+
{
12+
use Dispatchable, SerializesModels;
13+
14+
public function __construct(public string $alias, public string $error) {}
15+
16+
public function broadcastOn()
17+
{
18+
return [
19+
new Channel('nativephp'),
20+
];
21+
}
22+
}

src/Fakes/ChildProcessFake.php

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,13 +77,15 @@ public function php(
7777
array|string $cmd,
7878
string $alias,
7979
?array $env = null,
80-
?bool $persistent = false
80+
?bool $persistent = false,
81+
?array $iniSettings = null
8182
): self {
8283
$this->phps[] = [
8384
'cmd' => $cmd,
8485
'alias' => $alias,
8586
'env' => $env,
8687
'persistent' => $persistent,
88+
'iniSettings' => $iniSettings,
8789
];
8890

8991
return $this;
@@ -93,13 +95,15 @@ public function artisan(
9395
array|string $cmd,
9496
string $alias,
9597
?array $env = null,
96-
?bool $persistent = false
98+
?bool $persistent = false,
99+
?array $iniSettings = null
97100
): self {
98101
$this->artisans[] = [
99102
'cmd' => $cmd,
100103
'alias' => $alias,
101104
'env' => $env,
102105
'persistent' => $persistent,
106+
'iniSettings' => $iniSettings,
103107
];
104108

105109
return $this;

src/QueueWorker.php

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,6 @@ public function up(string|QueueConfig $config): void
2626

2727
$this->childProcess->artisan(
2828
[
29-
// '-d',
30-
// "memory_limit={$config->memoryLimit}M",
31-
// 'artisan',
3229
'queue:work',
3330
"--name={$config->alias}",
3431
'--queue='.implode(',', $config->queuesToConsume),

0 commit comments

Comments
 (0)