You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

370 lines
13 KiB

# Generated with protoc-gen-openapi
# https://github.com/google/gnostic/tree/master/cmd/protoc-gen-openapi
openapi: 3.0.3
info:
title: ResourcePool API
version: 0.0.1
paths:
/v1/available/nodes:
get:
tags:
- ResourcePool
operationId: ResourcePool_GetAvailableNodes
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AvailableNodesResponse'
default:
description: Default error response
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
/v1/resource/pool/create:
post:
tags:
- ResourcePool
operationId: ResourcePool_Create
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ResourcePoolCreateRequest'
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/BaseResponse'
default:
description: Default error response
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
/v1/resource/pool/delete:
post:
tags:
- ResourcePool
operationId: ResourcePool_Delete
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ResourcePoolDeleteRequest'
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/BaseResponse'
default:
description: Default error response
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
/v1/resource/pool/detail:
post:
tags:
- ResourcePool
operationId: ResourcePool_GetDetail
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ResourcePoolDetailRequest'
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ResourcePoolDetailResponse'
default:
description: Default error response
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
/v1/resource/pool/list:
get:
tags:
- ResourcePool
operationId: ResourcePool_List
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ResourcePoolListResponse'
default:
description: Default error response
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
/v1/resource/pool/removeNode:
post:
tags:
- ResourcePool
operationId: ResourcePool_RemoveNode
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RemoveNodeRequest'
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/BaseResponse'
default:
description: Default error response
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
/v1/resource/pool/update:
post:
tags:
- ResourcePool
operationId: ResourcePool_Update
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ResourcePoolUpdateRequest'
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/BaseResponse'
default:
description: Default error response
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
components:
schemas:
AvailableNodesInfo:
type: object
properties:
nodeName:
type: string
cpuCores:
type: string
gpuNum:
type: string
gpuMemory:
type: string
totalMemory:
type: string
diskSize:
type: string
nodeIp:
type: string
AvailableNodesResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/AvailableNodesInfo'
BaseResponse:
type: object
properties:
code:
type: integer
format: int32
message:
type: string
data:
type: object
GoogleProtobufAny:
type: object
properties:
'@type':
type: string
description: The type of the serialized message.
additionalProperties: true
description: Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
Nodes:
type: object
properties:
nodeIp:
type: string
nodeName:
type: string
PoolNodeReply:
type: object
properties:
ip:
type: string
isSchedulable:
type: boolean
isReady:
type: boolean
type:
type: array
items:
type: string
vgpuUsed:
type: integer
format: int32
vgpuTotal:
type: integer
format: int32
coreUsed:
type: integer
format: int32
coreTotal:
type: integer
format: int32
memoryUsed:
type: integer
format: int32
memoryTotal:
type: integer
format: int32
uid:
type: string
name:
type: string
cardCnt:
type: integer
format: int32
osImage:
type: string
operatingSystem:
type: string
kernelVersion:
type: string
containerRuntimeVersion:
type: string
kubeletVersion:
type: string
kubeProxyVersion:
type: string
architecture:
type: string
creationTimestamp:
type: string
diskSize:
type: string
nodeId:
type: string
cpuCores:
type: string
totalMemory:
type: string
RemoveNodeRequest:
type: object
properties:
nodeId:
type: string
ResourcePoolCreateRequest:
type: object
properties:
poolName:
type: string
nodes:
type: array
items:
$ref: '#/components/schemas/Nodes'
ResourcePoolDeleteRequest:
type: object
properties:
poolId:
type: string
ResourcePoolDetailRequest:
type: object
properties:
poolId:
type: string
ResourcePoolDetailResponse:
type: object
properties:
list:
type: array
items:
$ref: '#/components/schemas/PoolNodeReply'
ResourcePoolListData:
type: object
properties:
poolId:
type: string
poolName:
type: string
cpuCores:
type: string
nodeNum:
type: string
gpuNum:
type: string
availableMemory:
type: string
totalMemory:
type: string
diskSize:
type: string
nodeList:
type: array
items:
$ref: '#/components/schemas/Nodes'
linkUrl:
type: string
ResourcePoolListResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/ResourcePoolListData'
ResourcePoolUpdateRequest:
type: object
properties:
poolId:
type: string
poolName:
type: string
nodes:
type: array
items:
$ref: '#/components/schemas/Nodes'
Status:
type: object
properties:
code:
type: integer
description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
format: int32
message:
type: string
description: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
details:
type: array
items:
$ref: '#/components/schemas/GoogleProtobufAny'
description: A list of messages that carry the error details. There is a common set of message types for APIs to use.
description: 'The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).'
tags:
- name: ResourcePool