mirror of
https://github.com/kubevela/kubevela.git
synced 2026-05-14 13:26:44 +00:00
* Feat: add kubeapi and mongodb datastore implementation * Style: change kubeapi import code style * Style: change mongodb package import code style * Style: add some comment * Style: change databasePrefix to tableNamePrefix * Chore: install mongodb in unit-test job * Chore: install mongodb in compatibility-test job * Feat: add apiserver e2e test case * Docs: change developer guide doc * Feat: use common.Scheme Co-authored-by: barnettZQG <yiyun.pro>
2695 lines
50 KiB
JSON
2695 lines
50 KiB
JSON
{
|
|
"swagger": "2.0",
|
|
"info": {
|
|
"description": "Kubevela api doc",
|
|
"title": "Kubevela api doc",
|
|
"contact": {
|
|
"name": "kubevela",
|
|
"url": "https://kubevela.io/",
|
|
"email": "feedback@mail.kubevela.io"
|
|
},
|
|
"license": {
|
|
"name": "Apache License 2.0",
|
|
"url": "https://github.com/oam-dev/kubevela/blob/master/LICENSE"
|
|
},
|
|
"version": "v1beta1"
|
|
},
|
|
"paths": {
|
|
"/api/v1/applications": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "list all applications",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Fuzzy search based on name or description",
|
|
"name": "query",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Namespace-based search",
|
|
"name": "namespace",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Cluster-based search",
|
|
"name": "cluster",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "create one application",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/v1.CreateApplicationRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/applications/{name}": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "detail one application",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "delete one application",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/applications/{name}/components": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "gets the component topology of the application",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "list components that deployed in define cluster",
|
|
"name": "cluster",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "create component for application",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/v1.CreateComponentRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/applications/{name}/deploy": {
|
|
"post": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "deploy or update the application",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/applications/{name}/policies": {
|
|
"post": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "create policy for application",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/v1.CreatePolicyRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/applications/{name}/policies/{policyName}": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "detail policy for application",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application policy",
|
|
"name": "policyName",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "detail policy for application",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application policy",
|
|
"name": "policyName",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/applications/{name}/template": {
|
|
"post": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"application"
|
|
],
|
|
"summary": "create one application template",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the application",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/v1.CreateApplicationTemplateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/clusters": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"cluster"
|
|
],
|
|
"summary": "list all clusters",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Fuzzy search based on name or description",
|
|
"name": "query",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/map[string]string"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Bummer, something went wrong"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"cluster"
|
|
],
|
|
"summary": "create cluster",
|
|
"operationId": "createKubeCluster",
|
|
"parameters": [
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/*v1.CreateClusterRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/clusters/{clusterName}": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"cluster"
|
|
],
|
|
"summary": "detail cluster info",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the cluster",
|
|
"name": "clusterName",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/componentdefinitions": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"componentdefinition"
|
|
],
|
|
"summary": "list all componentdefinition",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "if specified, query the componentdefinition supported by the cluster where the application resides.",
|
|
"name": "appName",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "if specified, query the componentdefinition supported by the cluster.",
|
|
"name": "clusterName",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/namespaces": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"namespace"
|
|
],
|
|
"summary": "list all namespaces",
|
|
"operationId": "noop",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"namespace"
|
|
],
|
|
"summary": "create namespace",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/v1.CreateNamespaceRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/namespaces/{namespace}": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"namespace"
|
|
],
|
|
"summary": "get one namespace",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the namespace",
|
|
"name": "namespace",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/namespaces/{namespace}/applications/:appname": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"namespace"
|
|
],
|
|
"summary": "get the specified oam application in the specified namespace",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the namespace",
|
|
"name": "namespace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the oam application",
|
|
"name": "appname",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"namespace"
|
|
],
|
|
"summary": "create or update oam application in the specified namespace",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the namespace",
|
|
"name": "namespace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the oam application",
|
|
"name": "appname",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/v1.ApplicationRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"namespace"
|
|
],
|
|
"summary": "create or update oam application in the specified namespace",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the namespace",
|
|
"name": "namespace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the oam application",
|
|
"name": "appname",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/policydefinitions": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"policydefinition"
|
|
],
|
|
"summary": "list all policydefinition",
|
|
"operationId": "noop",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/workflows/{name}": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"cluster"
|
|
],
|
|
"summary": "detail application workflow",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the workflow, Currently, the application name is used.",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/map[string]string"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Bummer, something went wrong"
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"cluster"
|
|
],
|
|
"summary": "create or update application workflow config",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the workflow",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/v1.UpdateWorkflowRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/map[string]string"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Bummer, something went wrong"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/workflows/{name}/records": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"cluster"
|
|
],
|
|
"summary": "query application workflow execution record",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the workflow",
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Query the page number.",
|
|
"name": "page",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Query the page size number.",
|
|
"name": "pageSize",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/map[string]string"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Bummer, something went wrong"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/v1/catalogs": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"cluster"
|
|
],
|
|
"summary": "list all clusters",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Fuzzy search based on name or description",
|
|
"name": "query",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/map[string]string"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Bummer, something went wrong"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/v1/{namespace}/applications/:appname": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"oam"
|
|
],
|
|
"summary": "get the specified oam application in the specified namespace",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the namespace",
|
|
"name": "namespace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the oam application",
|
|
"name": "appname",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"oam"
|
|
],
|
|
"summary": "create or update oam application in the specified namespace",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the namespace",
|
|
"name": "namespace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the oam application",
|
|
"name": "appname",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/v1/{namespace}/applications/{appname}": {
|
|
"post": {
|
|
"consumes": [
|
|
"application/xml",
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json",
|
|
"application/xml"
|
|
],
|
|
"tags": [
|
|
"oam"
|
|
],
|
|
"summary": "create or update oam application in the specified namespace",
|
|
"operationId": "noop",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the namespace",
|
|
"name": "namespace",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "identifier of the oam application",
|
|
"name": "appname",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/v1.ApplicationRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"definitions": {
|
|
"common.AppRolloutStatus": {
|
|
"required": [
|
|
"rollingState",
|
|
"batchRollingState",
|
|
"currentBatch",
|
|
"upgradedReplicas",
|
|
"upgradedReadyReplicas",
|
|
"lastTargetAppRevision"
|
|
],
|
|
"properties": {
|
|
"LastSourceAppRevision": {
|
|
"type": "string"
|
|
},
|
|
"batchRollingState": {
|
|
"type": "string"
|
|
},
|
|
"conditions": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/condition.Condition"
|
|
}
|
|
},
|
|
"currentBatch": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"lastAppliedPodTemplateIdentifier": {
|
|
"type": "string"
|
|
},
|
|
"lastTargetAppRevision": {
|
|
"type": "string"
|
|
},
|
|
"rollingState": {
|
|
"type": "string"
|
|
},
|
|
"rolloutOriginalSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"rolloutTargetSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"targetGeneration": {
|
|
"type": "string"
|
|
},
|
|
"upgradedReadyReplicas": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"upgradedReplicas": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"common.AppStatus": {
|
|
"properties": {
|
|
"appliedResources": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.ClusterObjectReference"
|
|
}
|
|
},
|
|
"components": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.ObjectReference"
|
|
}
|
|
},
|
|
"conditions": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/condition.Condition"
|
|
}
|
|
},
|
|
"latestRevision": {
|
|
"$ref": "#/definitions/common.Revision"
|
|
},
|
|
"observedGeneration": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"resourceTracker": {
|
|
"$ref": "#/definitions/v1.ObjectReference"
|
|
},
|
|
"rollout": {
|
|
"$ref": "#/definitions/common.AppRolloutStatus"
|
|
},
|
|
"services": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.ApplicationComponentStatus"
|
|
}
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"workflow": {
|
|
"$ref": "#/definitions/common.WorkflowStatus"
|
|
}
|
|
}
|
|
},
|
|
"common.ApplicationComponent": {
|
|
"required": [
|
|
"name",
|
|
"type"
|
|
],
|
|
"properties": {
|
|
"externalRevision": {
|
|
"type": "string"
|
|
},
|
|
"inputs": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.inputItem"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"outputs": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.outputItem"
|
|
}
|
|
},
|
|
"properties": {
|
|
"type": "string"
|
|
},
|
|
"scopes": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"traits": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.ApplicationTrait"
|
|
}
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"common.ApplicationComponentStatus": {
|
|
"required": [
|
|
"name",
|
|
"healthy"
|
|
],
|
|
"properties": {
|
|
"env": {
|
|
"type": "string"
|
|
},
|
|
"healthy": {
|
|
"type": "boolean"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"scopes": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.ObjectReference"
|
|
}
|
|
},
|
|
"traits": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.ApplicationTraitStatus"
|
|
}
|
|
},
|
|
"workloadDefinition": {
|
|
"$ref": "#/definitions/common.WorkloadGVK"
|
|
}
|
|
}
|
|
},
|
|
"common.ApplicationTrait": {
|
|
"required": [
|
|
"type"
|
|
],
|
|
"properties": {
|
|
"properties": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"common.ApplicationTraitStatus": {
|
|
"required": [
|
|
"type",
|
|
"healthy"
|
|
],
|
|
"properties": {
|
|
"healthy": {
|
|
"type": "boolean"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"common.ClusterObjectReference": {
|
|
"description": "ObjectReference contains enough information to let you inspect or modify the referred object.",
|
|
"properties": {
|
|
"apiVersion": {
|
|
"description": "API version of the referent.",
|
|
"type": "string"
|
|
},
|
|
"cluster": {
|
|
"type": "string"
|
|
},
|
|
"creator": {
|
|
"type": "string"
|
|
},
|
|
"fieldPath": {
|
|
"description": "If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: \"spec.containers{name}\" (where \"name\" refers to the name of the container that triggered the event) or if no container name is specified \"spec.containers[2]\" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object.",
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"description": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": "string"
|
|
},
|
|
"namespace": {
|
|
"description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
|
|
"type": "string"
|
|
},
|
|
"resourceVersion": {
|
|
"description": "Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency",
|
|
"type": "string"
|
|
},
|
|
"uid": {
|
|
"description": "UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"common.Revision": {
|
|
"required": [
|
|
"name",
|
|
"revision"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"revision": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"revisionHash": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"common.SubStepsStatus": {
|
|
"properties": {
|
|
"mode": {
|
|
"type": "string"
|
|
},
|
|
"stepIndex": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"steps": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.WorkflowSubStepStatus"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"common.WorkflowStatus": {
|
|
"required": [
|
|
"mode",
|
|
"suspend",
|
|
"terminated"
|
|
],
|
|
"properties": {
|
|
"appRevision": {
|
|
"type": "string"
|
|
},
|
|
"contextBackend": {
|
|
"$ref": "#/definitions/v1.ObjectReference"
|
|
},
|
|
"mode": {
|
|
"type": "string"
|
|
},
|
|
"steps": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.WorkflowStepStatus"
|
|
}
|
|
},
|
|
"suspend": {
|
|
"type": "boolean"
|
|
},
|
|
"terminated": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"common.WorkflowStepStatus": {
|
|
"required": [
|
|
"id"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"phase": {
|
|
"type": "string"
|
|
},
|
|
"reason": {
|
|
"type": "string"
|
|
},
|
|
"subSteps": {
|
|
"$ref": "#/definitions/common.SubStepsStatus"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"common.WorkflowSubStepStatus": {
|
|
"required": [
|
|
"id"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"phase": {
|
|
"type": "string"
|
|
},
|
|
"reason": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"common.WorkloadGVK": {
|
|
"required": [
|
|
"apiVersion",
|
|
"kind"
|
|
],
|
|
"properties": {
|
|
"apiVersion": {
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"common.inputItem": {
|
|
"required": [
|
|
"parameterKey",
|
|
"from"
|
|
],
|
|
"properties": {
|
|
"from": {
|
|
"type": "string"
|
|
},
|
|
"parameterKey": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"common.outputItem": {
|
|
"required": [
|
|
"valueFrom",
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"valueFrom": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"condition.Condition": {
|
|
"required": [
|
|
"type",
|
|
"status",
|
|
"lastTransitionTime",
|
|
"reason"
|
|
],
|
|
"properties": {
|
|
"lastTransitionTime": {
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"reason": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"condition.ConditionedStatus": {
|
|
"properties": {
|
|
"conditions": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/condition.Condition"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"map[string]string": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"types.Parameter": {
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"alias": {
|
|
"type": "string"
|
|
},
|
|
"default": {
|
|
"$ref": "#/definitions/types.Parameter.default"
|
|
},
|
|
"ignore": {
|
|
"type": "boolean"
|
|
},
|
|
"jsonType": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"required": {
|
|
"type": "boolean"
|
|
},
|
|
"short": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"usage": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"types.Parameter.default": {},
|
|
"v1.ApplicationBase": {
|
|
"required": [
|
|
"name",
|
|
"namespace",
|
|
"description",
|
|
"createTime",
|
|
"updateTime",
|
|
"icon",
|
|
"status",
|
|
"gatewayRule"
|
|
],
|
|
"properties": {
|
|
"clusterList": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.ClusterBase"
|
|
}
|
|
},
|
|
"createTime": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"gatewayRule": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.GatewayRule"
|
|
}
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"namespace": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"updateTime": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"v1.ApplicationRequest": {
|
|
"required": [
|
|
"components"
|
|
],
|
|
"properties": {
|
|
"components": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.ApplicationComponent"
|
|
}
|
|
},
|
|
"policies": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1beta1.AppPolicy"
|
|
}
|
|
},
|
|
"workflow": {
|
|
"$ref": "#/definitions/v1beta1.Workflow"
|
|
}
|
|
}
|
|
},
|
|
"v1.ApplicationResourceInfo": {
|
|
"required": [
|
|
"componentNum"
|
|
],
|
|
"properties": {
|
|
"componentNum": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"v1.ApplicationResponse": {
|
|
"required": [
|
|
"apiVersion",
|
|
"kind",
|
|
"spec",
|
|
"status"
|
|
],
|
|
"properties": {
|
|
"apiVersion": {
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"type": "string"
|
|
},
|
|
"spec": {
|
|
"$ref": "#/definitions/v1beta1.ApplicationSpec"
|
|
},
|
|
"status": {
|
|
"$ref": "#/definitions/common.AppStatus"
|
|
}
|
|
}
|
|
},
|
|
"v1.ApplicationTemplateBase": {
|
|
"required": [
|
|
"templateName"
|
|
],
|
|
"properties": {
|
|
"templateName": {
|
|
"type": "string"
|
|
},
|
|
"versions": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.ApplicationTemplateVersion"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.ApplicationTemplateVersion": {
|
|
"required": [
|
|
"version",
|
|
"description",
|
|
"createUser",
|
|
"createTime",
|
|
"updateTime"
|
|
],
|
|
"properties": {
|
|
"createTime": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"createUser": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"updateTime": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"version": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.ClusterBase": {
|
|
"required": [
|
|
"name",
|
|
"description",
|
|
"icon",
|
|
"labels",
|
|
"status",
|
|
"reason"
|
|
],
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"reason": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.ClusterResourceInfo": {
|
|
"required": [
|
|
"workerNumber",
|
|
"masterNumber",
|
|
"memoryCapacity",
|
|
"cpuCapacity"
|
|
],
|
|
"properties": {
|
|
"cpuCapacity": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"gpuCapacity": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"masterNumber": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"memoryCapacity": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"storageClassList": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"workerNumber": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"v1.ComponentBase": {
|
|
"required": [
|
|
"name",
|
|
"description",
|
|
"componentType",
|
|
"bindClusters",
|
|
"dependsOn",
|
|
"deployVersion"
|
|
],
|
|
"properties": {
|
|
"bindClusters": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"componentType": {
|
|
"type": "string"
|
|
},
|
|
"creator": {
|
|
"type": "string"
|
|
},
|
|
"dependsOn": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"deployVersion": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.ComponentDefinitionBase": {
|
|
"required": [
|
|
"name",
|
|
"description",
|
|
"icon",
|
|
"requiredParams"
|
|
],
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"requiredParams": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/types.Parameter"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.ComponentListResponse": {
|
|
"required": [
|
|
"components"
|
|
],
|
|
"properties": {
|
|
"components": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.ComponentBase"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.CreateApplicationRequest": {
|
|
"required": [
|
|
"name",
|
|
"namespace",
|
|
"description",
|
|
"icon"
|
|
],
|
|
"properties": {
|
|
"clusterList": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"deploy": {
|
|
"type": "boolean"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"namespace": {
|
|
"type": "string"
|
|
},
|
|
"yamlConfig": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.CreateApplicationTemplateRequest": {
|
|
"required": [
|
|
"templateName",
|
|
"version",
|
|
"description"
|
|
],
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"templateName": {
|
|
"type": "string"
|
|
},
|
|
"version": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.CreateClusterRequest": {
|
|
"required": [
|
|
"name",
|
|
"icon",
|
|
"kubeConfig"
|
|
],
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"kubeConfig": {
|
|
"type": "string"
|
|
},
|
|
"kubeConfigSecret": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.CreateComponentRequest": {
|
|
"required": [
|
|
"appName",
|
|
"name",
|
|
"description",
|
|
"componentType",
|
|
"bindClusters"
|
|
],
|
|
"properties": {
|
|
"appName": {
|
|
"type": "string"
|
|
},
|
|
"bindClusters": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"componentType": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.CreateNamespaceRequest": {
|
|
"required": [
|
|
"name",
|
|
"description"
|
|
],
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.CreatePolicyRequest": {
|
|
"required": [
|
|
"name",
|
|
"type",
|
|
"properties"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.DetailApplicationResponse": {
|
|
"required": [
|
|
"updateTime",
|
|
"icon",
|
|
"status",
|
|
"gatewayRule",
|
|
"name",
|
|
"namespace",
|
|
"description",
|
|
"createTime",
|
|
"policies",
|
|
"status",
|
|
"resourceInfo",
|
|
"workflowStatus"
|
|
],
|
|
"properties": {
|
|
"clusterList": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.ClusterBase"
|
|
}
|
|
},
|
|
"createTime": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"gatewayRule": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.GatewayRule"
|
|
}
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"namespace": {
|
|
"type": "string"
|
|
},
|
|
"policies": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"resourceInfo": {
|
|
"$ref": "#/definitions/v1.ApplicationResourceInfo"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"updateTime": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"workflowStatus": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.WorkflowStepStatus"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.DetailClusterResponse": {
|
|
"required": [
|
|
"name",
|
|
"description",
|
|
"icon",
|
|
"labels",
|
|
"status",
|
|
"reason",
|
|
"resourceInfo"
|
|
],
|
|
"properties": {
|
|
"dashboardURL": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"reason": {
|
|
"type": "string"
|
|
},
|
|
"remoteManageURL": {
|
|
"type": "string"
|
|
},
|
|
"resourceInfo": {
|
|
"$ref": "#/definitions/v1.ClusterResourceInfo"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.DetailPolicyResponse": {
|
|
"required": [
|
|
"name",
|
|
"type",
|
|
"properties"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.DetailWorkflowResponse": {
|
|
"required": [
|
|
"enable",
|
|
"workflowRecord"
|
|
],
|
|
"properties": {
|
|
"enable": {
|
|
"type": "boolean"
|
|
},
|
|
"steps": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.WorkflowStep"
|
|
}
|
|
},
|
|
"workflowRecord": {
|
|
"$ref": "#/definitions/v1.WorkflowRecord"
|
|
}
|
|
}
|
|
},
|
|
"v1.GatewayRule": {
|
|
"required": [
|
|
"ruleType",
|
|
"address",
|
|
"protocol",
|
|
"componentName",
|
|
"componentPort"
|
|
],
|
|
"properties": {
|
|
"address": {
|
|
"type": "string"
|
|
},
|
|
"componentName": {
|
|
"type": "string"
|
|
},
|
|
"componentPort": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"protocol": {
|
|
"type": "string"
|
|
},
|
|
"ruleType": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.ListApplicationResponse": {
|
|
"required": [
|
|
"applications"
|
|
],
|
|
"properties": {
|
|
"applications": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.ApplicationBase"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.ListClusterResponse": {
|
|
"required": [
|
|
"clusters"
|
|
],
|
|
"properties": {
|
|
"clusters": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.ClusterBase"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.ListComponentDefinitionResponse": {
|
|
"required": [
|
|
"componentDefinitions"
|
|
],
|
|
"properties": {
|
|
"componentDefinitions": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.ComponentDefinitionBase"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.ListNamespaceResponse": {
|
|
"required": [
|
|
"namesapces"
|
|
],
|
|
"properties": {
|
|
"namesapces": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.NamesapceBase"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.ListPolicyDefinitionResponse": {
|
|
"required": [
|
|
"policyDefinitions"
|
|
],
|
|
"properties": {
|
|
"policyDefinitions": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.PolicyDefinition"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.ListWorkflowRecordsResponse": {
|
|
"required": [
|
|
"records",
|
|
"total"
|
|
],
|
|
"properties": {
|
|
"records": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.WorkflowRecord"
|
|
}
|
|
},
|
|
"total": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
},
|
|
"v1.NamesapceBase": {
|
|
"required": [
|
|
"name",
|
|
"description"
|
|
],
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.NamesapceDetailResponse": {
|
|
"required": [
|
|
"name",
|
|
"description",
|
|
"clusterBind"
|
|
],
|
|
"properties": {
|
|
"clusterBind": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.ObjectReference": {
|
|
"description": "ObjectReference contains enough information to let you inspect or modify the referred object.",
|
|
"properties": {
|
|
"apiVersion": {
|
|
"description": "API version of the referent.",
|
|
"type": "string"
|
|
},
|
|
"fieldPath": {
|
|
"description": "If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: \"spec.containers{name}\" (where \"name\" refers to the name of the container that triggered the event) or if no container name is specified \"spec.containers[2]\" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object.",
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"description": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": "string"
|
|
},
|
|
"namespace": {
|
|
"description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
|
|
"type": "string"
|
|
},
|
|
"resourceVersion": {
|
|
"description": "Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency",
|
|
"type": "string"
|
|
},
|
|
"uid": {
|
|
"description": "UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.PolicyDefinition": {
|
|
"required": [
|
|
"name",
|
|
"description",
|
|
"parameters"
|
|
],
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"parameters": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/types.Parameter"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.UpdateWorkflowRequest": {
|
|
"required": [
|
|
"enable"
|
|
],
|
|
"properties": {
|
|
"enable": {
|
|
"type": "boolean"
|
|
},
|
|
"steps": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1.WorkflowStep"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1.WorkflowRecord": {},
|
|
"v1.WorkflowStep": {
|
|
"required": [
|
|
"name",
|
|
"type"
|
|
],
|
|
"properties": {
|
|
"inputs": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.inputItem"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"outputs": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.outputItem"
|
|
}
|
|
},
|
|
"properties": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1.WorkflowStepStatus": {
|
|
"required": [
|
|
"name",
|
|
"status",
|
|
"takeTime"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"takeTime": {
|
|
"type": "integer",
|
|
"format": "integer"
|
|
}
|
|
}
|
|
},
|
|
"v1alpha1.CanaryMetric": {
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"interval": {
|
|
"type": "string"
|
|
},
|
|
"metricsRange": {
|
|
"$ref": "#/definitions/v1alpha1.MetricsExpectedRange"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"templateRef": {
|
|
"$ref": "#/definitions/v1.ObjectReference"
|
|
}
|
|
}
|
|
},
|
|
"v1alpha1.MetricsExpectedRange": {
|
|
"properties": {
|
|
"max": {
|
|
"type": "string"
|
|
},
|
|
"min": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1alpha1.RolloutBatch": {
|
|
"properties": {
|
|
"batchRolloutWebhooks": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1alpha1.RolloutWebhook"
|
|
}
|
|
},
|
|
"canaryMetric": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1alpha1.CanaryMetric"
|
|
}
|
|
},
|
|
"instanceInterval": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"maxUnavailable": {
|
|
"type": "string"
|
|
},
|
|
"podList": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"replicas": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1alpha1.RolloutPlan": {
|
|
"properties": {
|
|
"batchPartition": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"canaryMetric": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1alpha1.CanaryMetric"
|
|
}
|
|
},
|
|
"numBatches": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"paused": {
|
|
"type": "boolean"
|
|
},
|
|
"rolloutBatches": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1alpha1.RolloutBatch"
|
|
}
|
|
},
|
|
"rolloutStrategy": {
|
|
"type": "string"
|
|
},
|
|
"rolloutWebhooks": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1alpha1.RolloutWebhook"
|
|
}
|
|
},
|
|
"targetSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"v1alpha1.RolloutStatus": {
|
|
"required": [
|
|
"rollingState",
|
|
"batchRollingState",
|
|
"currentBatch",
|
|
"upgradedReplicas",
|
|
"upgradedReadyReplicas"
|
|
],
|
|
"properties": {
|
|
"batchRollingState": {
|
|
"type": "string"
|
|
},
|
|
"conditions": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/condition.Condition"
|
|
}
|
|
},
|
|
"currentBatch": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"lastAppliedPodTemplateIdentifier": {
|
|
"type": "string"
|
|
},
|
|
"rollingState": {
|
|
"type": "string"
|
|
},
|
|
"rolloutOriginalSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"rolloutTargetSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"targetGeneration": {
|
|
"type": "string"
|
|
},
|
|
"upgradedReadyReplicas": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"upgradedReplicas": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"v1alpha1.RolloutWebhook": {
|
|
"required": [
|
|
"type",
|
|
"name",
|
|
"url"
|
|
],
|
|
"properties": {
|
|
"expectedStatus": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"metadata": {
|
|
"$ref": "#/definitions/v1alpha1.RolloutWebhook.metadata"
|
|
},
|
|
"method": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1alpha1.RolloutWebhook.metadata": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"v1beta1.AppPolicy": {
|
|
"required": [
|
|
"name",
|
|
"type"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"v1beta1.ApplicationSpec": {
|
|
"required": [
|
|
"components"
|
|
],
|
|
"properties": {
|
|
"components": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.ApplicationComponent"
|
|
}
|
|
},
|
|
"policies": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1beta1.AppPolicy"
|
|
}
|
|
},
|
|
"rolloutPlan": {
|
|
"$ref": "#/definitions/v1alpha1.RolloutPlan"
|
|
},
|
|
"workflow": {
|
|
"$ref": "#/definitions/v1beta1.Workflow"
|
|
}
|
|
}
|
|
},
|
|
"v1beta1.Workflow": {
|
|
"properties": {
|
|
"steps": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/v1beta1.WorkflowStep"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"v1beta1.WorkflowStep": {
|
|
"required": [
|
|
"name",
|
|
"type"
|
|
],
|
|
"properties": {
|
|
"inputs": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.inputItem"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"outputs": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/common.outputItem"
|
|
}
|
|
},
|
|
"properties": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |