From 0b0952650e90cf969adaa4d3427e3d5ced33f03d Mon Sep 17 00:00:00 2001 From: notCharles Date: Sun, 2 Jun 2024 13:43:25 -0400 Subject: [PATCH] Remove labels/mounts if empty. --- .../ServerConfigurationStructureService.php | 27 ++++++++++++------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/app/Services/Servers/ServerConfigurationStructureService.php b/app/Services/Servers/ServerConfigurationStructureService.php index 29ea396c6..43fd9f76c 100644 --- a/app/Services/Servers/ServerConfigurationStructureService.php +++ b/app/Services/Servers/ServerConfigurationStructureService.php @@ -40,7 +40,7 @@ class ServerConfigurationStructureService */ protected function returnFormat(Server $server): array { - return [ + $response = [ 'uuid' => $server->uuid, 'meta' => [ 'name' => $server->name, @@ -50,7 +50,6 @@ class ServerConfigurationStructureService 'environment' => $this->environment->handle($server), 'invocation' => $server->startup, 'skip_egg_scripts' => $server->skip_scripts, - 'labels' => $server->docker_labels, 'build' => [ 'memory_limit' => $server->memory, 'swap' => $server->swap, @@ -72,17 +71,27 @@ class ServerConfigurationStructureService ], 'mappings' => $server->getAllocationMappings(), ], - 'mounts' => $server->mounts->map(function (Mount $mount) { - return [ - 'source' => $mount->source, - 'target' => $mount->target, - 'read_only' => $mount->read_only, - ]; - }), 'egg' => [ 'id' => $server->egg->uuid, 'file_denylist' => $server->egg->inherit_file_denylist, ], ]; + + if (!empty($server->docker_labels)) { + $response['labels'] = $server->docker_labels; + } + + if ($server->mounts->isNotEmpty()) { + $response['mounts'] = $server->mounts->map(function (Mount $mount) { + return [ + 'source' => $mount->source, + 'target' => $mount->target, + 'read_only' => $mount->read_only, + ]; + })->toArray(); + } + + return $response; } + }