Table of Contents
Introduction
These APIs provide services for manipulating ote-stack platform on AI Edge Blueprint. Table of Contents maxLevel 2
Introduction
These APIs provide services for manipulating ote-stack platform on AI Edge Blueprint.
API Definitions
User Management
Login
POST /v1/authorization
Description
...
Code Block | ||||
---|---|---|---|---|
| ||||
POST /v1/authorization Body: { "user": "u1", "password": "xxx" } Response: { "token": "eyxxxxxxxxxxxxxx", "code": 200, "message": "success" } |
Update Token
PUT /v1/authorization
Description
...
Code Block | ||||
---|---|---|---|---|
| ||||
PUT /v1/authorization Header: Authorization: eyxxxxxxxxxxxxxx Response: { "token": "eyyxxxxxxxxxxxx2", "code": 200, "message": "success" } |
Create User
POST /v1/user
Description
Create a user without access token authorization. This user will be available after system administrator approval.
...
Code Block | ||||
---|---|---|---|---|
| ||||
POST /v1/user body: { "user": "u1", "password": "xxX@1234", "phone": "12345678910", "realName": "hello" "isAdmin": true } Response: { "code": 200, "message": "success" } |
Update Password
PUT /v1/user
Description
Change the password of the logged-in user.
...
Code Block | ||||
---|---|---|---|---|
| ||||
PUT /v1/user body: { "oldPassword": "xxx0", "password": "xxx" } Response: { "code": 200, "message": "success" } |
Delete User
DELETE /v1/admin/user/[userid]
...
Code Block | ||||
---|---|---|---|---|
| ||||
DELETE /v1/admin/user/1 Response: { "code": 200, "message": "success" } |
Reset Password
PUT /v1/admin/user/[userId]/password
...
Code Block | ||||
---|---|---|---|---|
| ||||
PUT /v1/admin/user/1/password Body: { "password": "xxx" } Response: { "code": 200, "message": "success" } |
Get User List
GET /v1/admin/user
Description
...
Code Block | ||||
---|---|---|---|---|
| ||||
GET /v1/admin/user Response: { "data": [ {"id":1, "user":"user1", "status":3, "realName":"user1", "phone":"18923441163", "createTime":1551758321, "updateTime":1551758321 }, {"id":2, "user":"user2", "status":3, "realName":"user2", "phone":"18923441123", "createTime":1551758321, "updateTime":1551758321 } ], "total": 2, "code": 200, "message": "Success" } |
Audit User
PUT /v1/admin/user/[userId]
...
Code Block | ||||
---|---|---|---|---|
| ||||
PUT /v1/admin/user/1 body: { "status": 0 } Response: { "code": 200, "message": "success" } |
Logout
DELETE /v1/authorization
Description
...
Code Block | ||||
---|---|---|---|---|
| ||||
DELETE /v1/authorizations Header: Authorization: eyxxxxxxxxxxxxxx Response: { "code": 200, "message": "Success" } |
Get Authorization Information
GET /v1/authorization
Description
...
Code Block | ||||
---|---|---|---|---|
| ||||
GET /v1/authorization Response: { "data": { "displayName": "ote_test1", "hasRepoAccount": true, "role": 4, "privateProject": true, "enableIngress": false, "enableAlert": true, "enableAdminAutoDeploy": true }, "code": 200, "message": "Success" } |
Create Sub-User
POST /v1/admin/user
Description
...
Code | Description |
---|---|
200 | Success |
500 | Unexpected internal errors |
422 | Parameter validation error |
Business Management
Create Business
POST /v1/business
Description
...
Code Block | ||||
---|---|---|---|---|
| ||||
POST /v1/business { "name": "name", "introduce": "intrduce", "objective": "objective", "scale": "scale" } |
Get Business List
GET /v1/business
Description
...
Code Block | ||||
---|---|---|---|---|
| ||||
GET /v1/business { "data": [ { "name": "name", "userId": 123, "comment": "comment", "id": 1, "status": 0, "createTime": 1590062196, "updateTime": 1590062196 } ], "total": 1, "code":200, "message": "Success" } |
Get Business
GET /v1/business/id/[id]
Description
...
Code Block | ||
---|---|---|
| ||
GET /v1/business/id/1 { "data": { "name": "name", "userId": 123, "introduce": "introduce", "objective": "", "scale": "1400000000", "comment": "comment", "id": 1, "status": 0, "createTime": 1590062196, "updateTime": 1590062196 } "code":200, "message": "Success" } |
Audit Business
PUT /v1/business/id/[id]
Description
...
Code Block | ||
---|---|---|
| ||
PUT /v1/business/id/1 { "comment": "pass", "status": 1 } |
Cluster Management
Get Cluster List
GET /v1/cluster
Description
...
Code Block | ||||
---|---|---|---|---|
| ||||
GET /v1/cluster?clusterLabel=all&page=1&pageSize=10 Response: { "code" : 200, "message" : "success", "data": [ { "clusterName": "GuangZhou", "nodeCount": 1, "isReady": false}, { "clusterName": "BeiJing", "nodeCount": 2, "isReady": true} }, "total": 2 } |
Add Label to Cluster
POST /v1/cluster/label
Description
...
Code Block | ||||
---|---|---|---|---|
| ||||
POST /v1/cluster/label { "clusterLabel": "label1", "clusterName": ["GuangZhou", "BeiJing"] } Response { "code" : 200, "message" : "success" } |
Delete Label
DELETE /v1/cluster/label
Description
...
Code Block | ||
---|---|---|
| ||
DELETE /v1/cluster/label { "clusterLabel": "label1", "clusterName": ["GuangZhou", "BeiJing"] } Response { "code" : 200, "message" : "success" } |
Get Label List
GET /v1/cluster/label
Description
...
Code Block | ||
---|---|---|
| ||
GET /v1/cluster/label Response: { "code" : 200, "message" : "success", "data": [ "label1", "label2" ] } |
Get Label
GET /v1/cluster/label/[clusterNamel]
...
Code Block | ||
---|---|---|
| ||
GET /v1/cluster/label/cluster1?page=1&pageSize=10 Response: { "code" : 200, "message" : "success", "data": [ { "clusterLabel":"GuangZhou", "createTime": 1234567890 }, { "clusterLabel":"BeiJing", "createTime": 1234567891 } ], "total": 2 } |
Node Management
Get Node List
GET /v1/node
Description
Parameters
...
Code Block | ||
---|---|---|
| ||
GET /v1/node Response: { "code" : 200, "message" : "success", "data": [ { "nodeName": "GZ1", "operatingSystem": "Linux", "clusterName": "GuangZhou", "kernelVersion" : "2.6", "isReady": true, "ip": "1.2.3.4" }, { "nodeName": "BJ1", "operatingSystem": "Linux", "clusterName": "BeiJing", "kernelVersion" : "2.6", "isReady": true, "ip": "1.2.3.4" } }, "meta": { "readyNodeCount": 2 }, "total": 2 } |
Add Label to Node
POST /v1/node/label
Description
...
Code Block | ||||
---|---|---|---|---|
| ||||
POST /v1/node/label { "nodeLabel": "label1", "clusterName": "c1", "nodeName": ["GuangZhou", "BeiJing"] } Response: { "code" : 200, "message" : "success" } |
Delete Label
DELETE /v1/node/label
Description
...
Code Block | ||
---|---|---|
| ||
DELETE /v1/node/label { "nodeLabel": "label1", "clusterName": "c1", "nodeName": ["GuangZhou", "BeiJing"], "deleteDeploy": true } Response: { "code" : 200, "message" : "success" } |
Get Label List
GET /v1/node/label
Description
...
Code Block | ||
---|---|---|
| ||
GET /v1/node/label?clusterName=c1 Response: { "code" : 200, "message" : "success", "data": ["label1"] } |
Repository Management
Get Images
GET /v1/repository/image
Description
List images of the specified project.
Parameters
Name | Type | Required | Default | Description |
---|---|---|---|---|
orderBy | string | no | id | OrderBy allows sorting by id. |
order | string | no | desc | Sort order: asc, desc. |
page | int | no | 1 | The page number. |
pageSize | int | no | 10 | The size of per page, 0 for no limited. |
projectName | string | yes | The name of project. | |
imageName | string | no | Image name for filtering result. |
...
Code Block | ||
---|---|---|
| ||
GET /v1/repository/image Response: { "data": [ { "projectName": "test", "public": false, "imageName": "test/test-demo1", "imageAddress": "registry.dcdn.baidu.com/test/test-demo1", "createTime": 1551758321, "updateTime": 1551758321 }, { "projectName": "test2", "public": false, "imageName": "test2/test-demo2", "imageAddress": "registry.dcdn.baidu.com/test2/test-demo2", "createTime": 1551758321, "updateTime": 1551758321 } ], "total": 2, "code": 200, "message": "success" } |
Get Tag of Image
GET /v1/repository/image/tag?imageName=[imageName]
Description
List tags under the specific image name.
...
Code Block | ||
---|---|---|
| ||
GET /v1/repository/image/tag?imageName=test/demo1 { "data": [ { "tag": "latest", "imageAddress": "registry.dcdn.baidu.com/test/test-demo1", "createTime": 1551758321, "updateTime": 1551758321 }, { "tag": "v1", "imageAddress": "registry.dcdn.baidu.com/test/test-demo1", "createTime": 1551758321, "updateTime": 1551758321 } ], "total": 2, "code": 200, "message": "success" } |
Delete Image
DELETE /v1/repository/image
Description
Delete multiple images specified by name.
...
Code Block | ||||
---|---|---|---|---|
| ||||
DELETE /v1/repository/image Body: { "imageName": ["img1", "img2"] } Response: { "code": 200, "message": "success" } |
Delete Tag of Image
DELETE /v1/repository/image/tag
Description
Delete the image specified by name and tags.
Parameters
Name | Type | Required | Default | Description |
---|---|---|---|---|
tag | [ ]string | yes | tags of image that needs to be removed | |
imageName | string | yes | name of image that needs to be removed |
...
Code Block | ||
---|---|---|
| ||
DELETE /v1/repository/image/tag Body: { "imageName": "test/demo1" "tag": ["v1", "v2"] } Response: { "code": 200, "message": "success" } |
Create User
POST /v1/repository/user
Description
...
Code Block | ||
---|---|---|
| ||
POST /v1/repository/user { "user": "user1", "password": "xxxx" } Response: { "code": 200, "message": "success" } |
Update Password
PUT /v1/repository/user
Description
...
Code Block | ||
---|---|---|
| ||
PUT /v1/repository/user { "password": "xxxx" } Response: { "code": 200, "message": "success" } |
Get Projects of Repository
GET /v1/repository/project
...
Name | Type | Description |
---|---|---|
projectId | int | Project ID. |
projectName | string | The name of the project |
createTime | string | The creation time of the project. |
updateTime | string | The update time of the project. |
public | bool | The public status of the project. |
imageCount | int | The count of the images under this project. |
total | int | Total number of the projects. |
...
Code Block | ||
---|---|---|
| ||
GET /v1/repository/project Response: { "data": [ { "projectId": 13, "projectName": "calico", "createTime": 1551758321, "updateTime": 1551758321, "imageCount": 3, "public": true } ], "total": 2, "code": 200, "message": "success" } |
Create Project
POST /v1/repository/project
...
Name | Type | Required | Default | Description |
---|---|---|---|---|
projectName | string | yes | The name of project. | |
public | bool | yes | The public status of the project. |
Response code
Code | Description |
---|---|
201 | Project created successfully. |
400 | Unsatisfied with constraints of the project creation. |
401 | User need to log in first. |
409 | Project name already exists. |
415 | The Media Type of the request is not supported, it has to be "application/json" |
500 | Unexpected internal errors. |
...
Code Block | ||
---|---|---|
| ||
POST /v1/repository/project { "projectName": "calico", "public": true } Response: { "code": 200, "message": "success" } |
Delete Project
DELETE /v1/repository/project
...
Code Block | ||
---|---|---|
| ||
DELETE /v1/repository/project { "projectId": [ 1, 2 ] } Response: { "code": 200, "message": "success" } |
Create External Repository
POST /v1/repository/third
...
Code Block | ||
---|---|---|
| ||
POST /v1/repository Body: { "repositoryId": "repo1", "address": "127.0.0.1", "user": "user1", "password": "password1" } Response: { "code": 200, "message": "success" } |
Delete External Repository
DELETE /v1/repository/third
...
Code Block | ||
---|---|---|
| ||
DELETE /v1/repository Body: { "repositoryId": ["repo1", "repo2"] } Response: { "code": 200, "message": "success" } |
Get External Repository List
GET /v1/repository/third
Description
...
Code Block | ||
---|---|---|
| ||
GET /v1/repository/third?pageSize=0 response: { "data": [ { "id": 1, "repositoryId":"yq01", "address":"xxzxsdsdsds", "user":"ddddddd" }, { "id": 2, "repositoryId":"yq02", "address":"xxzxsdsdsds", "user":"ddddddd" } ], "code": 200, "total": 2, "message": "Success" } |
Get External Repository
GET /v1/repository/third/[repoId]
...
Code Block | ||
---|---|---|
| ||
GET /v1/repository/third/repo1 Response: { "data": { "repositoryId":"yq01", "address":"xxzxsdsdsds", "user":"ddddddd" }, "code": 200, "message": "Success" } |
Application Management
Create Application
POST /v1/app
Parameters
Name | Type | Required | Description |
---|---|---|---|
appName | string | yes | The name of applicaton |
deployType | string | yes | Deployment mode: Only deployment or daemonset can be set |
image | string | yes | Image repository with specified tag. |
version | string | yes | Main version with format x.x, for example 1.1. |
repositoryId | string | no | The ID of repository whose secret can be used to pull docker image. |
port | array | yes | The exposed port. |
command | string | no | Start command line. |
volume | array | no | Volume information. |
env | array | no | Executing environment. |
replicas | uint32 | no | Default replicas. Effective only at deployment. |
minReplicas | uint32 | no | Minimal replicas. Effective only at deployment. |
maxReplicas | uint32 | no | Maximun replicas. Effective only at deployment. |
minCPU | uint32 | yes | Minimal cpu (%) |
maxCPU | uint32 | yes | Maximun cpu(%) |
GPU | uint32 | no | GPU count |
isHPA | bool | yes | Allow to use horizontal pod autoscaler |
targetCPUUtilization | uint32 | yes | CPU utilization which will trigger autoscale |
targetMemUtilization | uint32 | yes | CPU utilization which will trigger autoscale |
minMemory | uint32 | yes | Minimal memory (MB) |
maxMemory | uint32 | yes | Maximun memory (MB) |
maxUnavailable | uint32 | yes | Max unavailable pod |
maxSurge | uint32 | yes | max surge pod |
minReadySeconds | uint32 | yes | min ready seconds for updating |
Example
Code Block | ||||
---|---|---|---|---|
| ||||
POST /v1/app
Body:
{
"appName": "nginx1",
"deployType": "deployment",
"image": "nginx:latest",
"version": "1.2",
"repositoryId": "repo1",
"replicas": 10,
"port": [
{"port": 8080, "hostPort": 9090}],
"command": "",
"volume": [
{"path": "/host/usr/bin", "hostPath": "/usr/bin", "readOnly": true},
{"path": "/host/usr/sbin", "hostPath": "/usr/sbin", "readOnly": true} ],
"env": [
{"name": "NGINX_PATH", "value": "/usr/share/nginx/" } ],
"minReplicas": 2,
"maxReplicas": 20,
"minCPU": 10,
"maxCPU": 200,
"isHPA": true,
"targetCPUUtilization": 100,
"targetMemUtilization": 150,
"minMemory": 100,
"maxMemory": 200,
"maxUnavailable": 1,
"maxSurge": 1,
"minReadySeconds": 10,
}
Response:
{
"code": 200,
"message": "success"
} |
Delete Application
DELETE /v1/app
Parameters
Name | Type | Required | Description |
---|---|---|---|
appId | [ ]int | yes | The IDs of application |
Example
Code Block | ||
---|---|---|
| ||
DELETE /v1/app
{
"appId": [1,2,3,4]
} |
List Applications
GET /v1/app
Description
List applications.
Parameters
Name | Type | Required | Default | Description |
---|---|---|---|---|
pageSize | int | no | 10 | The size of per page, 0 for limited. |
page | int | no | 1 | The page number |
appName | string | no | application name for filtering result | |
appNameMode | string | no | partial | the filter mode: strict, partial, prefix |
version | string | no | version |
Example
Code Block | ||
---|---|---|
| ||
Get /v1/app
{
"apps": [ {
"id": 1,
"appName": "nginx1",
"status": 1,
"deployType": "deployment",
"image": "nginx:latest",
"projectName": "proj1",
"repositoryId": "repo1",
"version": "1.2.3.4",
"replicas": 10,
"port": [
{"port": 8080, "hostPort": 9090}],
"command": "",
"volume": [
{"path": "/host/usr/bin", "hostPath": "/usr/bin", "readOnly": true},
{"path": "/host/usr/sbin", "hostPath": "/usr/sbin", "readOnly": true} ],
"dependence": [
{"name": "nginx", "service": "xxxx", "port": 9090 } ],
"env": [
{"name": "NGINX_PATH", "value": "/usr/share/nginx/" } ],
"minReplicas": 2,
"maxReplicas": 20,
"minCPU": 0.1,
"maxCPU": 2,
"GPU": 2,
"isHPA": true,
"targetCPUUtilization": 1,
"targetMemUtilization": 150,
"minMemory": 100,
"maxMemory": 200,
"maxUnavailable": 1,
"maxSurge": 1,
"minReadySeconds": 10,
"createTime": 1551758321,
"updateTime": 1551758321},
]
"total": 1,
"code": 200,
"message": "Success"
} |
Get Application
GET /v1/app/id/{appId}
Description
Return specified application information by ID.
Parameters
Name | Type | Required | Description |
---|---|---|---|
appId | int | no | The ID of application |
Example
Code Block | ||
---|---|---|
| ||
GET /v1/app/id/1
{
"data": {
"id": 1,
"appName": "nginx1",
"status": 1,
"deployType": "deployment",
"image": "nginx",
"projectName": "proj1",
"repositoryId": "repo1",
"version": "1.2.3",
"replicas": 10,
"port": [
{"port": 8080, "hostPort": 9090}],
"command": "",
"volume": [
{"path": "/host/usr/bin", "hostPath": "/usr/bin", "readOnly": true},
{"path": "/host/usr/sbin", "hostPath": "/usr/sbin", "readOnly": true} ],
"dependence": [
{"name": "nginx", "service": "xxxx", "port": 9090 } ],
"env": [
{"name": "NGINX_PATH", "value": "/usr/share/nginx/" } ],
"minReplicas": 2,
"maxReplicas": 20,
"minCPU": 0.1,
"maxCPU": 2,
"GPU": 1,
"isHPA": true,
"targetCPUUtilization": 1,
"targetMemUtilization": 150,
"minMemory": 100,
"maxMemory": 200,
"maxUnavailable": 1,
"maxSurge": 1,
"minReadySeconds": 10,
"createTime": 1551758321,
"updateTime": 1551758321
},
"code": 200,
"message": "Success"
} |
Upload Helm Chart to Create Application
POST /v1/app/chart
Description
Upload a helm chart tar file to create the application. The request type must be multipart/form-data.
Parameters
Name | Type | Required | Description |
---|---|---|---|
appName | string | yes | The name of application |
version | string | yes | version |
chart | file | yes | the chart file needs to be upload |
Example
Code Block |
---|
POST /v1/app/chart
appName=test
version=1.1
chart=@file
curl 0.0.0.0/v1/app/chart -F "version=1.2" -F "appName=test1" -F "chart=@file" |
Deployment Management
Create Deployment
POST /v1/deploy
Description
Deploy the application to specified cluster.
Parameters
Name | Type | Required | Description |
---|---|---|---|
deployName | string | yes | The unique name of deployment. |
appName | string | yes | The application that will be deployed. |
version | string | yes | The version of application. |
cluster | string | yes | The label of cluster that will install the application, default all cluster. |
nodeLabel | string | yes | The label of node that will install the application, default all node. |
comment | string | yes | The comment about deployment. |
Example
Code Block | ||
---|---|---|
| ||
POST /v1/deploy/install
Body:
{
"deployName": "nginx1",
"appName": "nginx1",
"version": "1.1.1.1",
"cluster": "cluster1",
"nodeLabel": "node1",
"comment": ""
}
Response:
{
"code": 200,
"message": "success"
} |
Delete Deployment
DELETE /v1/deploy/{deployName}
Description
Delete deployment by name.
Parameters
Name | Type | Required | Description |
---|---|---|---|
deployName | string | yes | The name of deployment. |
Example
Code Block | ||
---|---|---|
| ||
DELETE /v1/deploy/deploy1
Response:
{
"code": 200,
"message": "success"
} |
Upgrade Deployment
POST /v1/deploy/id/{deployId}
Description
Upgrade the deployment to specified version.
Parameters
Name | Type | Required | Description |
---|---|---|---|
deployId | int | yes | The ID of deployment. |
version | string | yes | The version of application that needs to be upgraded to. |
comment | string | no | The comment about upgrade. |
Example
Code Block | ||
---|---|---|
| ||
POST /v1/deploy/id/1
Body:
{
"version": "1.1.1.2"
}
Response:
{
"code": 200,
"message": "success"
} |
List Deployment
GET /v1/deploy
Description
List all deployments.
Parameters
Name | Type | Required | Default | Description |
---|---|---|---|---|
pageSize | int | no | 10 | The size of per page, 0 for no limited. |
page | int | no | 1 | The page number |
field | string | no | Fields that need be presented, default all informations. | |
appName | string | no | The name of application for filtering result. | |
appNameMode | string | no | partial | The mode of filter: strict, partial, prefix. |
editable | string | no | all | The flag, which indicates if the deployment can be update now, is used for filtering result. The value can be: true, false, or all. |
running | string | no | all | The running status of deployment for filtering result. The value can be: true, or all. |
Response Parameters
Name | Type | Description |
---|---|---|
id | int32 | ID |
deployName | string | The name of deployment. |
appName | string | The name of application. |
version | string | The version of application. |
cluster | string | The cluster that have deployed. |
nodeLabel | string | The node that have deployed. |
comment | string | The comment about deployment. |
deployType | int32 | The deployment type: 1: new deployment, 2: upgrading, 3: rollbacking, 4: deleted |
status | int32 | The status of deployment:0: pending 1: Approved 2: Disapproved 3:Processing 4:Deploying 5: Success 6: Partial success 7: Failed 8: Internal error 9: Deleted |
createTime | int32 | The creation time of deployment. |
updateTime | int32 | The update time of deployment. |
editable | bool | The flag that indicates if the deployment can be update now. |
errorMessage | string | The detailed deployment status which contains the count of running pod and error pod. |
auditComment | string | The comment about audit. |
Example
Code Block | ||
---|---|---|
| ||
GET /v1/deploy?pageSize=10&page=1
Response:
{
"data": [ {
"id": 1,
"deployName": "nginx1",
"appName": "nginx1",
"version": "1.1.1.1",
"cluster": "cluster1",
"nodeLabel": "node1",
"deployType": 1
"status": 6,
"errorMessage": "{\"running\": 10, \"error\": 3, \"total\": 13}",
"comment": ""
"editable": true,
"createTime": 1551758321,
"updateTime": 1551758321}
],
"total": 1
} |
Rollback Deployment
PUT /v1/deploy/id/{deployId}
Description
Rollback the deployment to previous version.
Parameters
Name | Type | Required | Description |
---|---|---|---|
deployId | int | yes | The ID of deployment. |
version | string | yes | The version that needs to rollback to. |
comment | string | yes | The comment about rollback. |
Example
Code Block | ||
---|---|---|
| ||
PUT /v1/deploy/id/1
Body:
{
"version": "1.1.1.2",
"comment": ""
}
Response:
{
"code": 200,
"message": "success"
} |
Get Deployment
GET /v1/deploy/id/{deployId}
Description
Get specified deployment information by ID.
Parameters
Name | Type | Required | Description |
---|---|---|---|
field | string | no | The fields that need to be presented, default all information without history version information. But when field=historyVersion, the API will return all versions of deployed application. |
Response parameters
Same as the API of List Deployment
Code Block | ||
---|---|---|
| ||
GET /v1/deploy/id/1
Response:
{
"data" : {
"id": 1,
"deployName": "nginx1",
"appName": "nginx1",
"version": "1.1.1.2",
"cluster": "cluster1",
"nodeLabel": "node1",
"status": 6,
"comment": "",
"errorMessage": "{\"running\": 10, \"error\": 3, \"total\": 13}",
"deployType": 1,
"createTime": 1551758321,
"updateTime": 1551758321
}
}
} |
Delete Deployment
DELETE /v1/deploy/id/{deployId}
Parameters
Name | Type | Required | Description |
---|---|---|---|
deployId | int | yes | The ID of deployment that needs to be removed |
Example
Code Block | ||
---|---|---|
| ||
DELETE /v1/deploy/id/1 |
Audit Deployment
PUT /v1/admin/deploy
Description
Audit the deployment created by general user. This can only be done by general administrator and system administrator.
Parameters
Name | Type | Required | Description |
---|---|---|---|
id | int | yes | ID |
status | int | yes | The status of deployment |
comment | string | yes | The comment of |
Example
Code Block |
---|
POST /v1/admin/deploy
Body:
{
"id": 123456,
"status": 0,
"comment": "xxxx"
} |
List Audit List of Deployment
GET /v1/admin/deploy
Description
List deployment that needs to be audited. This can only be done by general administrator and system administrator.
Parameters
Name | Type | Required | Default | Description |
---|---|---|---|---|
orderBy | string | no | id | orderBy allows sorting by id. |
order | string | no | desc | order sort: asc,desc |
businessName | string | no | The name of business for filtering result | |
page | int | no | 1 | The page number |
pageSize | int | no | 10 | The page size of per page |
Response code
Code | Description |
---|---|
200 | Successfully. |
422 | Unprocessable Entity |
500 | Unexpected internal errors |
Response parameters
Name | Type | Description |
---|---|---|
id | int | ID |
businessName | string | The name of business. |
appName | string | The name of application. |
version | string | The version of application |
cluster | string | The cluster that will be deployed to. |
deployId | int | The ID of deployment. |
deployType | int | The type of deployment, 1: new deployment, 2: upgrading, 3: rollbacking, 4: deleted |
status | int | The status of audit. |
comment | string | The comment of audit. |
createTime | int | The create time. |
updateTime | int | The time of the audit. |
Example
Code Block | ||
---|---|---|
| ||
GET /v1/admin/deploy
Response:
{
"data": [
{
"id": 6878,
"businessName": "a",
"appName": "dsdar2",
"version": "1.2.1",
"cluster":"bjct",
"deployType":1,
"status":0,
"comment":"no pass",
"createTime": 1551758321,
"updateTime": 1551758321
}
],
"total": 1,
"code": 200,
"message": "success"
} |