misc_pterodactyl-panel/app/Http/Controllers/Api/Application/Nodes/NodeConfigurationController.php

29 lines
944 B
PHP
Raw Normal View History

2020-04-13 00:20:09 +00:00
<?php
namespace Pterodactyl\Http\Controllers\Api\Application\Nodes;
use Pterodactyl\Models\Node;
use Illuminate\Http\JsonResponse;
use Pterodactyl\Http\Requests\Api\Application\Nodes\GetNodeRequest;
use Pterodactyl\Http\Controllers\Api\Application\ApplicationApiController;
class NodeConfigurationController extends ApplicationApiController
{
/**
* Returns the configuration information for a node. This allows for automated deployments
* to remote machines so long as an API key is provided to the machine to make the request
* with, and the node is known.
*
2021-02-25 01:28:24 +00:00
* @return string
* @throws \Illuminate\Contracts\Container\BindingResolutionException
2020-04-13 00:20:09 +00:00
*/
public function __invoke(GetNodeRequest $request, Node $node)
{
2021-02-25 01:28:24 +00:00
if ($request->query('format') === 'yaml') {
return $node->getYamlConfiguration();
}
return new JsonResponse($node->getConfiguration());
2020-04-13 00:20:09 +00:00
}
}