Merge pull request #4379 from SierraJC/fix/misc-server-api-fixes

Fix: `/servers` API invalid responses / OpenAPI schema
This commit is contained in:
Andras Bacsai
2024-11-25 13:41:28 +01:00
committed by GitHub
5 changed files with 49 additions and 29 deletions

View File

@@ -567,6 +567,9 @@ class ServersController extends Controller
['bearerAuth' => []],
],
tags: ['Servers'],
parameters: [
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Server UUID', schema: new OA\Schema(type: 'string')),
],
requestBody: new OA\RequestBody(
required: true,
description: 'Server updated.',
@@ -596,8 +599,7 @@ class ServersController extends Controller
new OA\MediaType(
mediaType: 'application/json',
schema: new OA\Schema(
type: 'array',
items: new OA\Items(ref: '#/components/schemas/Server')
ref: '#/components/schemas/Server'
)
),
]),
@@ -678,9 +680,7 @@ class ServersController extends Controller
ValidateServer::dispatch($server);
}
return response()->json([
])->setStatusCode(201);
return response()->json(serializeApiResponse($server))->setStatusCode(201);
}
#[OA\Delete(

View File

@@ -42,8 +42,7 @@ use Symfony\Component\Yaml\Yaml;
'validation_logs' => ['type' => 'string', 'description' => 'The validation logs.'],
'log_drain_notification_sent' => ['type' => 'boolean', 'description' => 'The flag to indicate if the log drain notification has been sent.'],
'swarm_cluster' => ['type' => 'string', 'description' => 'The swarm cluster configuration.'],
'delete_unused_volumes' => ['type' => 'boolean', 'description' => 'The flag to indicate if the unused volumes should be deleted.'],
'delete_unused_networks' => ['type' => 'boolean', 'description' => 'The flag to indicate if the unused networks should be deleted.'],
'settings' => ['$ref' => '#/components/schemas/ServerSetting'],
]
)]
@@ -814,7 +813,7 @@ $schema://$host {
{
return Attribute::make(
get: function ($value) {
return preg_replace('/[^0-9]/', '', $value);
return (int) preg_replace('/[^0-9]/', '', $value);
}
);
}

View File

@@ -45,6 +45,8 @@ use OpenApi\Attributes as OA;
'wildcard_domain' => ['type' => 'string'],
'created_at' => ['type' => 'string'],
'updated_at' => ['type' => 'string'],
'delete_unused_volumes' => ['type' => 'boolean', 'description' => 'The flag to indicate if the unused volumes should be deleted.'],
'delete_unused_networks' => ['type' => 'boolean', 'description' => 'The flag to indicate if the unused networks should be deleted.'],
]
)]
class ServerSetting extends Model

View File

@@ -1,5 +1,5 @@
{
"openapi": "3.0.0",
"openapi": "3.1.0",
"info": {
"title": "Coolify",
"version": "0.1"
@@ -5391,6 +5391,17 @@
"summary": "Update",
"description": "Update Server.",
"operationId": "update-server-by-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"description": "Server UUID",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "Server updated.",
"required": true,
@@ -5451,10 +5462,7 @@
"content": {
"application\/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#\/components\/schemas\/Server"
}
"$ref": "#\/components\/schemas\/Server"
}
}
}
@@ -7441,13 +7449,8 @@
"type": "string",
"description": "The swarm cluster configuration."
},
"delete_unused_volumes": {
"type": "boolean",
"description": "The flag to indicate if the unused volumes should be deleted."
},
"delete_unused_networks": {
"type": "boolean",
"description": "The flag to indicate if the unused networks should be deleted."
"settings": {
"$ref": "#\/components\/schemas\/ServerSetting"
}
},
"type": "object"
@@ -7556,6 +7559,14 @@
},
"updated_at": {
"type": "string"
},
"delete_unused_volumes": {
"type": "boolean",
"description": "The flag to indicate if the unused volumes should be deleted."
},
"delete_unused_networks": {
"type": "boolean",
"description": "The flag to indicate if the unused networks should be deleted."
}
},
"type": "object"

View File

@@ -3671,6 +3671,14 @@ paths:
summary: Update
description: 'Update Server.'
operationId: update-server-by-uuid
parameters:
-
name: uuid
in: path
description: 'Server UUID'
required: true
schema:
type: string
requestBody:
description: 'Server updated.'
required: true
@@ -3713,9 +3721,7 @@ paths:
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Server'
$ref: '#/components/schemas/Server'
'401':
$ref: '#/components/responses/401'
'400':
@@ -4967,12 +4973,8 @@ components:
swarm_cluster:
type: string
description: 'The swarm cluster configuration.'
delete_unused_volumes:
type: boolean
description: 'The flag to indicate if the unused volumes should be deleted.'
delete_unused_networks:
type: boolean
description: 'The flag to indicate if the unused networks should be deleted.'
settings:
$ref: '#/components/schemas/ServerSetting'
type: object
ServerSetting:
description: 'Server Settings model'
@@ -5045,6 +5047,12 @@ components:
type: string
updated_at:
type: string
delete_unused_volumes:
type: boolean
description: 'The flag to indicate if the unused volumes should be deleted.'
delete_unused_networks:
type: boolean
description: 'The flag to indicate if the unused networks should be deleted.'
type: object
Service:
description: 'Service model'