Skip to content

Commit 6ee8780

Browse files
committed
Fix rebuild to pass things that are needed.
1 parent 891fd13 commit 6ee8780

File tree

1 file changed

+20
-4
lines changed

1 file changed

+20
-4
lines changed

app/Console/Commands/RebuildServer.php

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,11 +65,11 @@ public function __construct()
6565
public function handle()
6666
{
6767
if ($this->option('all')) {
68-
$servers = Server::with('node')->get();
68+
$servers = Server::with('node', 'option.variables')->get();
6969
} elseif ($this->option('node')) {
70-
$servers = Server::with('node')->where('node_id', $this->option('node'))->get();
70+
$servers = Server::with('node', 'option.variables')->where('node_id', $this->option('node'))->get();
7171
} elseif ($this->option('server')) {
72-
$servers = Server::with('node')->where('id', $this->option('server'))->get();
72+
$servers = Server::with('node', 'option.variables')->where('id', $this->option('server'))->get();
7373
} else {
7474
$this->error('You must pass a flag to determine which server(s) to rebuild.');
7575
return;
@@ -80,10 +80,26 @@ public function handle()
8080
$results = collect([]);
8181
foreach($servers as $server) {
8282
try {
83+
$environment = $server->option->variables->map(function ($item, $key) use ($server) {
84+
$display = $server->variables->where('variable_id', $item->id)->pluck('variable_value')->first();
85+
86+
return [
87+
'variable' => $item->env_variable,
88+
'value' => (! is_null($display)) ? $display : $item->default_value,
89+
];
90+
});
91+
8392
$server->node->guzzleClient([
8493
'X-Access-Server' => $server->uuid,
8594
'X-Access-Token' => $server->node->daemonSecret,
86-
])->request('POST', '/server/rebuild');
95+
])->request('PATCH', '/server', [
96+
'json' => [
97+
'build' => [
98+
'image' => $server->image,
99+
'env|overwrite' => $environment->pluck('value', 'variable')->merge(['STARTUP' => $server->startup]),
100+
],
101+
],
102+
]);
87103

88104
$results = $results->merge([
89105
$server->uuid => [

0 commit comments

Comments
 (0)