2055 lines
70 KiB
JSON
2055 lines
70 KiB
JSON
{
|
||
"schemes": [
|
||
"http",
|
||
"https"
|
||
],
|
||
"swagger": "2.0",
|
||
"info": {
|
||
"description": "OCDP (Open Cloud Development Platform) Backend API\n\nRESTful API for managing Kubernetes clusters, OCI registries, and Helm deployments.",
|
||
"title": "OCDP Backend API",
|
||
"contact": {
|
||
"name": "API Support",
|
||
"email": "support@ocdp.io"
|
||
},
|
||
"license": {
|
||
"name": "Apache 2.0",
|
||
"url": "http://www.apache.org/licenses/LICENSE-2.0.html"
|
||
},
|
||
"version": "1.0"
|
||
},
|
||
"host": "localhost:8080",
|
||
"basePath": "/api/v1",
|
||
"paths": {
|
||
"/auth/login": {
|
||
"post": {
|
||
"description": "使用用户名和密码获取访问令牌",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Auth"
|
||
],
|
||
"summary": "用户登录",
|
||
"parameters": [
|
||
{
|
||
"description": "登录信息",
|
||
"name": "request",
|
||
"in": "body",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.LoginRequest"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.AuthResponse"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/auth/refresh": {
|
||
"post": {
|
||
"description": "使用刷新令牌获取新的访问令牌",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Auth"
|
||
],
|
||
"summary": "刷新访问令牌",
|
||
"parameters": [
|
||
{
|
||
"description": "刷新令牌",
|
||
"name": "request",
|
||
"in": "body",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RefreshTokenRequest"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.AuthResponse"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/auth/register": {
|
||
"post": {
|
||
"description": "创建一个新的后台用户",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Auth"
|
||
],
|
||
"summary": "用户注册",
|
||
"parameters": [
|
||
{
|
||
"description": "注册信息",
|
||
"name": "request",
|
||
"in": "body",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RegisterRequest"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"201": {
|
||
"description": "Created",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.UserResponse"
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "Bad Request",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/clusters": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Clusters"
|
||
],
|
||
"summary": "列出所有集群",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ClusterResponse"
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "Internal Server Error",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"description": "创建一个新的 Kubernetes 集群配置",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Clusters"
|
||
],
|
||
"summary": "创建集群",
|
||
"parameters": [
|
||
{
|
||
"description": "集群信息",
|
||
"name": "request",
|
||
"in": "body",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.CreateClusterRequest"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"201": {
|
||
"description": "Created",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ClusterResponse"
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "Bad Request",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/clusters/{cluster_id}": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Clusters"
|
||
],
|
||
"summary": "获取集群详情",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ClusterResponse"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Clusters"
|
||
],
|
||
"summary": "更新集群",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"description": "更新内容",
|
||
"name": "request",
|
||
"in": "body",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.UpdateClusterRequest"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ClusterResponse"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Clusters"
|
||
],
|
||
"summary": "删除集群",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"204": {
|
||
"description": "No Content",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/clusters/{cluster_id}/health": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Clusters"
|
||
],
|
||
"summary": "获取集群健康状态",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ClusterHealthResponse"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/clusters/{cluster_id}/instances": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Instances"
|
||
],
|
||
"summary": "列出实例",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceListResponse"
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "Internal Server Error",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"description": "在指定集群上部署一个 artifact",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Instances"
|
||
],
|
||
"summary": "创建实例",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"description": "实例配置",
|
||
"name": "request",
|
||
"in": "body",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.CreateInstanceRequest"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"201": {
|
||
"description": "Created",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceResponse"
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "Bad Request",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/clusters/{cluster_id}/instances/{instance_id}": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Instances"
|
||
],
|
||
"summary": "获取实例详情",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"type": "string",
|
||
"description": "实例 ID",
|
||
"name": "instance_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceResponse"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Instances"
|
||
],
|
||
"summary": "更新实例",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"type": "string",
|
||
"description": "实例 ID",
|
||
"name": "instance_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"description": "更新内容",
|
||
"name": "request",
|
||
"in": "body",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.UpdateInstanceRequest"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceResponse"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Instances"
|
||
],
|
||
"summary": "删除实例",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"type": "string",
|
||
"description": "实例 ID",
|
||
"name": "instance_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"204": {
|
||
"description": "No Content",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/clusters/{cluster_id}/instances/{instance_id}/entries": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Instances"
|
||
],
|
||
"summary": "获取实例 Service/Ingress 入口",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"type": "string",
|
||
"description": "实例 ID",
|
||
"name": "instance_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceEntryResponse"
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/monitoring/clusters": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Monitoring"
|
||
],
|
||
"summary": "列出集群监控",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ClusterMetricsResponse"
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "Internal Server Error",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/monitoring/clusters/{cluster_id}": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Monitoring"
|
||
],
|
||
"summary": "获取集群监控",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ClusterMetricsResponse"
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "Internal Server Error",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/monitoring/clusters/{cluster_id}/nodes": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Monitoring"
|
||
],
|
||
"summary": "获取节点指标",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "集群 ID",
|
||
"name": "cluster_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.NodeMetricsResponse"
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "Internal Server Error",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/monitoring/summary": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Monitoring"
|
||
],
|
||
"summary": "获取监控汇总",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.MonitoringSummaryResponse"
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "Internal Server Error",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/registries": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Registries"
|
||
],
|
||
"summary": "列出所有 Registries",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RegistryResponse"
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "Internal Server Error",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"description": "新增 OCI Registry 配置",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Registries"
|
||
],
|
||
"summary": "创建 Registry",
|
||
"parameters": [
|
||
{
|
||
"description": "Registry 信息",
|
||
"name": "request",
|
||
"in": "body",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.CreateRegistryRequest"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"201": {
|
||
"description": "Created",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RegistryResponse"
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "Bad Request",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/registries/{registry_id}": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Registries"
|
||
],
|
||
"summary": "获取 Registry",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "Registry ID",
|
||
"name": "registry_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RegistryResponse"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Registries"
|
||
],
|
||
"summary": "更新 Registry",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "Registry ID",
|
||
"name": "registry_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"description": "更新内容",
|
||
"name": "request",
|
||
"in": "body",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.UpdateRegistryRequest"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RegistryResponse"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Registries"
|
||
],
|
||
"summary": "删除 Registry",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "Registry ID",
|
||
"name": "registry_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"204": {
|
||
"description": "No Content",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/registries/{registry_id}/health": {
|
||
"get": {
|
||
"security": [
|
||
{
|
||
"BearerAuth": []
|
||
}
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Registries"
|
||
],
|
||
"summary": "检查 Registry 健康",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "Registry ID",
|
||
"name": "registry_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RegistryHealthResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/registries/{registry_id}/repositories": {
|
||
"get": {
|
||
"description": "列出指定 Registry 中的所有 Repository",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Artifacts"
|
||
],
|
||
"summary": "列出 Registry 中的所有 Repositories",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "Registry ID",
|
||
"name": "registry_id",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RepositoryListResponse"
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "Internal Server Error",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/registries/{registry_id}/repositories/{repository_name}/artifacts": {
|
||
"get": {
|
||
"description": "列出指定 Repository 中的所有 Artifact,支持按类型过滤",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Artifacts"
|
||
],
|
||
"summary": "列出 Repository 中的所有 Artifacts",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "Registry ID",
|
||
"name": "registry_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"type": "string",
|
||
"description": "Repository Name (URL encoded, e.g. charts%2Fnginx)",
|
||
"name": "repository_name",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"type": "string",
|
||
"default": "all",
|
||
"description": "过滤 Artifact 类型 (all, chart, image, other)",
|
||
"name": "media_type",
|
||
"in": "query"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.TagResponse"
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "Internal Server Error",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/registries/{registry_id}/repositories/{repository_name}/artifacts/{reference}": {
|
||
"get": {
|
||
"description": "获取指定 Artifact 的详细信息",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Artifacts"
|
||
],
|
||
"summary": "获取 Artifact 详情",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "Registry ID",
|
||
"name": "registry_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"type": "string",
|
||
"description": "Repository Name (URL encoded)",
|
||
"name": "repository_name",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"type": "string",
|
||
"description": "Artifact Reference (tag or digest)",
|
||
"name": "reference",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ArtifactResponse"
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/registries/{registry_id}/repositories/{repository_name}/artifacts/{reference}/values-schema": {
|
||
"get": {
|
||
"description": "获取 Helm Chart 的 values.schema.json (仅支持 Chart 类型)",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"application/json"
|
||
],
|
||
"tags": [
|
||
"Artifacts"
|
||
],
|
||
"summary": "获取 Helm Chart Values Schema",
|
||
"parameters": [
|
||
{
|
||
"type": "string",
|
||
"description": "Registry ID",
|
||
"name": "registry_id",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"type": "string",
|
||
"description": "Repository Name (URL encoded)",
|
||
"name": "repository_name",
|
||
"in": "path",
|
||
"required": true
|
||
},
|
||
{
|
||
"type": "string",
|
||
"description": "Artifact Reference (tag or digest)",
|
||
"name": "reference",
|
||
"in": "path",
|
||
"required": true
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ValuesSchemaResponse"
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "Internal Server Error",
|
||
"schema": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"definitions": {
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ArtifactResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"createdAt": {
|
||
"type": "string"
|
||
},
|
||
"digest": {
|
||
"type": "string"
|
||
},
|
||
"repositoryName": {
|
||
"type": "string"
|
||
},
|
||
"size": {
|
||
"type": "integer"
|
||
},
|
||
"tag": {
|
||
"type": "string"
|
||
},
|
||
"type": {
|
||
"description": "chart | image | other",
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.AuthResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"accessToken": {
|
||
"type": "string"
|
||
},
|
||
"refreshToken": {
|
||
"type": "string"
|
||
},
|
||
"userId": {
|
||
"type": "string"
|
||
},
|
||
"username": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ClusterHealthResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"healthy": {
|
||
"type": "boolean"
|
||
},
|
||
"message": {
|
||
"type": "string"
|
||
},
|
||
"version": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ClusterMetricsResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"clusterId": {
|
||
"type": "string"
|
||
},
|
||
"clusterName": {
|
||
"type": "string"
|
||
},
|
||
"cpuUsage": {
|
||
"type": "number"
|
||
},
|
||
"gpuUsage": {
|
||
"type": "number"
|
||
},
|
||
"lastCheck": {
|
||
"type": "string"
|
||
},
|
||
"maxNodeCpu": {
|
||
"type": "string"
|
||
},
|
||
"maxNodeCpuUsage": {
|
||
"type": "number"
|
||
},
|
||
"maxNodeGpu": {
|
||
"type": "integer"
|
||
},
|
||
"maxNodeGpuUsage": {
|
||
"type": "number"
|
||
},
|
||
"maxNodeMemUsage": {
|
||
"type": "number"
|
||
},
|
||
"maxNodeMemory": {
|
||
"type": "string"
|
||
},
|
||
"memoryUsage": {
|
||
"type": "number"
|
||
},
|
||
"nodeCount": {
|
||
"type": "integer"
|
||
},
|
||
"nodes": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.NodeMetricsResponse"
|
||
}
|
||
},
|
||
"podCount": {
|
||
"type": "integer"
|
||
},
|
||
"status": {
|
||
"type": "string"
|
||
},
|
||
"totalCpu": {
|
||
"type": "string"
|
||
},
|
||
"totalGpu": {
|
||
"type": "integer"
|
||
},
|
||
"totalMemory": {
|
||
"type": "string"
|
||
},
|
||
"uptime": {
|
||
"type": "string"
|
||
},
|
||
"usedCpu": {
|
||
"type": "string"
|
||
},
|
||
"usedGpu": {
|
||
"type": "integer"
|
||
},
|
||
"usedMemory": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ClusterResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"caData": {
|
||
"description": "脱敏数据(仅用于前端显示,实际值为掩码)",
|
||
"type": "string"
|
||
},
|
||
"certData": {
|
||
"description": "脱敏显示(••••••••)",
|
||
"type": "string"
|
||
},
|
||
"createdAt": {
|
||
"type": "string"
|
||
},
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"hasCaData": {
|
||
"description": "认证配置状态(不返回实际证书数据,仅返回是否已配置)",
|
||
"type": "boolean"
|
||
},
|
||
"hasCertData": {
|
||
"type": "boolean"
|
||
},
|
||
"hasKeyData": {
|
||
"type": "boolean"
|
||
},
|
||
"hasToken": {
|
||
"type": "boolean"
|
||
},
|
||
"host": {
|
||
"type": "string"
|
||
},
|
||
"id": {
|
||
"type": "string"
|
||
},
|
||
"keyData": {
|
||
"description": "脱敏显示(••••••••)",
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"token": {
|
||
"description": "脱敏显示(••••••••)",
|
||
"type": "string"
|
||
},
|
||
"updatedAt": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.CreateClusterRequest": {
|
||
"type": "object",
|
||
"required": [
|
||
"host",
|
||
"name"
|
||
],
|
||
"properties": {
|
||
"caData": {
|
||
"type": "string"
|
||
},
|
||
"certData": {
|
||
"type": "string"
|
||
},
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"host": {
|
||
"type": "string"
|
||
},
|
||
"keyData": {
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"token": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.CreateInstanceRequest": {
|
||
"type": "object",
|
||
"required": [
|
||
"name",
|
||
"namespace",
|
||
"registryId",
|
||
"repository",
|
||
"tag"
|
||
],
|
||
"properties": {
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"namespace": {
|
||
"type": "string"
|
||
},
|
||
"registryId": {
|
||
"type": "string"
|
||
},
|
||
"repository": {
|
||
"type": "string"
|
||
},
|
||
"tag": {
|
||
"type": "string"
|
||
},
|
||
"values": {
|
||
"type": "object",
|
||
"additionalProperties": true
|
||
},
|
||
"valuesYaml": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.CreateRegistryRequest": {
|
||
"type": "object",
|
||
"required": [
|
||
"name",
|
||
"url"
|
||
],
|
||
"properties": {
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"insecure": {
|
||
"type": "boolean"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"password": {
|
||
"type": "string"
|
||
},
|
||
"url": {
|
||
"type": "string"
|
||
},
|
||
"username": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ErrorResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer"
|
||
},
|
||
"error": {
|
||
"type": "string"
|
||
},
|
||
"message": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceEntryHostResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"host": {
|
||
"type": "string"
|
||
},
|
||
"paths": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceEntryPathResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceEntryPathResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"path": {
|
||
"type": "string"
|
||
},
|
||
"serviceName": {
|
||
"type": "string"
|
||
},
|
||
"servicePort": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceEntryPortResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"nodePort": {
|
||
"type": "integer"
|
||
},
|
||
"port": {
|
||
"type": "integer"
|
||
},
|
||
"protocol": {
|
||
"type": "string"
|
||
},
|
||
"targetPort": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceEntryResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"clusterIP": {
|
||
"type": "string"
|
||
},
|
||
"externalIPs": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"hosts": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceEntryHostResponse"
|
||
}
|
||
},
|
||
"kind": {
|
||
"type": "string"
|
||
},
|
||
"loadBalancerIngress": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"namespace": {
|
||
"type": "string"
|
||
},
|
||
"ports": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceEntryPortResponse"
|
||
}
|
||
},
|
||
"tls": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceEntryTLSResponse"
|
||
}
|
||
},
|
||
"type": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceEntryTLSResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"hosts": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"secretName": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceListResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"instances": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceResponse"
|
||
}
|
||
},
|
||
"total": {
|
||
"type": "integer"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.InstanceResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"chart": {
|
||
"type": "string"
|
||
},
|
||
"clusterId": {
|
||
"type": "string"
|
||
},
|
||
"createdAt": {
|
||
"type": "string"
|
||
},
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"id": {
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"namespace": {
|
||
"type": "string"
|
||
},
|
||
"registryId": {
|
||
"type": "string"
|
||
},
|
||
"repository": {
|
||
"type": "string"
|
||
},
|
||
"revision": {
|
||
"type": "integer"
|
||
},
|
||
"status": {
|
||
"type": "string"
|
||
},
|
||
"updatedAt": {
|
||
"type": "string"
|
||
},
|
||
"values": {
|
||
"type": "object",
|
||
"additionalProperties": true
|
||
},
|
||
"version": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.LoginRequest": {
|
||
"type": "object",
|
||
"required": [
|
||
"password",
|
||
"username"
|
||
],
|
||
"properties": {
|
||
"password": {
|
||
"type": "string"
|
||
},
|
||
"username": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.MonitoringSummaryResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"errorClusters": {
|
||
"type": "integer"
|
||
},
|
||
"healthyClusters": {
|
||
"type": "integer"
|
||
},
|
||
"lastUpdate": {
|
||
"type": "string"
|
||
},
|
||
"totalClusters": {
|
||
"type": "integer"
|
||
},
|
||
"totalNodes": {
|
||
"type": "integer"
|
||
},
|
||
"totalPods": {
|
||
"type": "integer"
|
||
},
|
||
"warningClusters": {
|
||
"type": "integer"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.NodeMetricsResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"age": {
|
||
"type": "string"
|
||
},
|
||
"containerRuntime": {
|
||
"type": "string"
|
||
},
|
||
"cpuAllocatable": {
|
||
"type": "string"
|
||
},
|
||
"cpuCapacity": {
|
||
"type": "string"
|
||
},
|
||
"cpuPercent": {
|
||
"type": "number"
|
||
},
|
||
"cpuUsage": {
|
||
"type": "string"
|
||
},
|
||
"gpuCapacity": {
|
||
"type": "integer"
|
||
},
|
||
"gpuPercent": {
|
||
"type": "number"
|
||
},
|
||
"gpuType": {
|
||
"type": "string"
|
||
},
|
||
"gpuUsage": {
|
||
"type": "integer"
|
||
},
|
||
"kernelVersion": {
|
||
"type": "string"
|
||
},
|
||
"kubeletVersion": {
|
||
"type": "string"
|
||
},
|
||
"memoryAllocatable": {
|
||
"type": "string"
|
||
},
|
||
"memoryCapacity": {
|
||
"type": "string"
|
||
},
|
||
"memoryPercent": {
|
||
"type": "number"
|
||
},
|
||
"memoryUsage": {
|
||
"type": "string"
|
||
},
|
||
"nodeName": {
|
||
"type": "string"
|
||
},
|
||
"osImage": {
|
||
"type": "string"
|
||
},
|
||
"podCount": {
|
||
"type": "integer"
|
||
},
|
||
"role": {
|
||
"type": "string"
|
||
},
|
||
"status": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RefreshTokenRequest": {
|
||
"type": "object",
|
||
"required": [
|
||
"refreshToken"
|
||
],
|
||
"properties": {
|
||
"refreshToken": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RegisterRequest": {
|
||
"type": "object",
|
||
"required": [
|
||
"password",
|
||
"username"
|
||
],
|
||
"properties": {
|
||
"password": {
|
||
"type": "string",
|
||
"minLength": 6
|
||
},
|
||
"username": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RegistryHealthResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"healthy": {
|
||
"type": "boolean"
|
||
},
|
||
"message": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RegistryResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"createdAt": {
|
||
"type": "string"
|
||
},
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"hasPassword": {
|
||
"description": "是否已设置密码",
|
||
"type": "boolean"
|
||
},
|
||
"id": {
|
||
"type": "string"
|
||
},
|
||
"insecure": {
|
||
"type": "boolean"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"password": {
|
||
"description": "脱敏显示(••••••••)",
|
||
"type": "string"
|
||
},
|
||
"updatedAt": {
|
||
"type": "string"
|
||
},
|
||
"url": {
|
||
"type": "string"
|
||
},
|
||
"username": {
|
||
"description": "明文返回用户名(不敏感)",
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.RepositoryListResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"catalogSupported": {
|
||
"description": "Whether _catalog API is supported",
|
||
"type": "boolean"
|
||
},
|
||
"message": {
|
||
"description": "User-friendly message",
|
||
"type": "string"
|
||
},
|
||
"registryId": {
|
||
"type": "string"
|
||
},
|
||
"registryUrl": {
|
||
"type": "string"
|
||
},
|
||
"repositories": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"source": {
|
||
"description": "Data source: \"catalog\" | \"preconfigured\" | \"unavailable\"",
|
||
"type": "string"
|
||
},
|
||
"total": {
|
||
"type": "integer"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.TagResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"mediaType": {
|
||
"type": "string"
|
||
},
|
||
"repositoryName": {
|
||
"description": "Repository name",
|
||
"type": "string"
|
||
},
|
||
"size": {
|
||
"description": "Artifact size (bytes)",
|
||
"type": "integer"
|
||
},
|
||
"tag": {
|
||
"description": "Tag name (e.g. \"1.0.0\", \"latest\")",
|
||
"type": "string"
|
||
},
|
||
"type": {
|
||
"description": "Artifact type: chart, image, other",
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.UpdateClusterRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"caData": {
|
||
"type": "string"
|
||
},
|
||
"certData": {
|
||
"type": "string"
|
||
},
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"host": {
|
||
"type": "string"
|
||
},
|
||
"keyData": {
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"token": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.UpdateInstanceRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"values": {
|
||
"type": "object",
|
||
"additionalProperties": true
|
||
},
|
||
"valuesYaml": {
|
||
"type": "string"
|
||
},
|
||
"version": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.UpdateRegistryRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"insecure": {
|
||
"type": "boolean"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"password": {
|
||
"type": "string"
|
||
},
|
||
"url": {
|
||
"type": "string"
|
||
},
|
||
"username": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.UserResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"createdAt": {
|
||
"type": "string"
|
||
},
|
||
"email": {
|
||
"type": "string"
|
||
},
|
||
"id": {
|
||
"type": "string"
|
||
},
|
||
"updatedAt": {
|
||
"type": "string"
|
||
},
|
||
"username": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"github_com_ocdp_cluster-service_internal_adapter_input_http_dto.ValuesSchemaResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"securityDefinitions": {
|
||
"BearerAuth": {
|
||
"description": "Type \"Bearer\" followed by a space and JWT token.",
|
||
"type": "apiKey",
|
||
"name": "Authorization",
|
||
"in": "header"
|
||
}
|
||
}
|
||
} |