Testkube Control Plane ../executors operations
Testkube Pro API (cloud-api/1.10.51)
Download OpenAPI specification:Download
API for Testkube Pro
List executors
List executors available in cluster
path Parameters
id required | string organizationId |
environmentId required | string environmentID |
query Parameters
selector | string Example: selector=kubernetes.io/app=demo Only workflow executions with given status are included in this time series chart. |
Responses
Response samples
- 200
- 400
- 502
[- {
- "executorType": "string",
- "image": "string",
- "slaves": {
- "image": "kubeshop/ex-slaves-image:latest"
}, - "imagePullSecrets": [
- {
- "name": "string"
}
], - "command": [
- "curl"
], - "args": [
- "--repeats",
- "5",
- "--insecure"
], - "types": [
- "string"
], - "uri": "string",
- "contentTypes": [
- "string"
], - "jobTemplate": "string",
- "jobTemplateReference": "string",
- "labels": {
- "app": "backend",
- "env": "prod"
}, - "features": [
- "artifacts"
], - "meta": {
- "iconURI": "/assets/k6.jpg",
- "tooltips": {
- "general": "please provide k6 test script for execution"
}
}, - "useDataDirAsWorkingDir": true
}
]
Create new executor
Create new executor based on variables passed in request
path Parameters
id required | string organizationId |
environmentId required | string environmentID |
Request Body schema: required
executor request body data
executorType | string ExecutorType one of "rest" for rest openapi based executors or "job" which will be default runners for testkube soon |
image | string Image for kube-job |
object (SlavesMeta) Slave data for executing tests in distributed environment | |
Array of objects (LocalObjectReference) container image pull secrets | |
command | Array of strings executor image command |
args | Array of strings additional executor binary argument |
types required | Array of strings Types defines what types can be handled by executor e.g. "postman/collection", ":curl/command" etc |
uri | string URI for rest based executors |
contentTypes | Array of strings list of handled content types |
jobTemplate | string Job template to launch executor |
jobTemplateReference | string name of the template resource |
object executor labels | |
features | Array of strings Items Enum: "artifacts" "junit-report" Available executor features |
object (ExecutorMeta) Executor meta data | |
useDataDirAsWorkingDir | boolean use data dir as working dir for executor |
namespace required | string object kubernetes namespace |
name required | string object name |
Responses
Request samples
- Payload
{- "executorType": "string",
- "image": "string",
- "slaves": {
- "image": "kubeshop/ex-slaves-image:latest"
}, - "imagePullSecrets": [
- {
- "name": "string"
}
], - "command": [
- "curl"
], - "args": [
- "--repeats",
- "5",
- "--insecure"
], - "types": [
- "string"
], - "uri": "string",
- "contentTypes": [
- "string"
], - "jobTemplate": "string",
- "jobTemplateReference": "string",
- "labels": {
- "app": "backend",
- "env": "prod"
}, - "features": [
- "artifacts"
], - "meta": {
- "iconURI": "/assets/k6.jpg",
- "tooltips": {
- "general": "please provide k6 test script for execution"
}
}, - "useDataDirAsWorkingDir": true,
- "namespace": "testkube",
- "name": "name"
}
Response samples
- 201
- 400
- 502
{- "name": "string",
- "executor": {
- "executorType": "string",
- "image": "string",
- "slaves": {
- "image": "kubeshop/ex-slaves-image:latest"
}, - "imagePullSecrets": [
- {
- "name": "string"
}
], - "command": [
- "curl"
], - "args": [
- "--repeats",
- "5",
- "--insecure"
], - "types": [
- "string"
], - "uri": "string",
- "contentTypes": [
- "string"
], - "jobTemplate": "string",
- "jobTemplateReference": "string",
- "labels": {
- "app": "backend",
- "env": "prod"
}, - "features": [
- "artifacts"
], - "meta": {
- "iconURI": "/assets/k6.jpg",
- "tooltips": {
- "general": "please provide k6 test script for execution"
}
}, - "useDataDirAsWorkingDir": true
}, - "executions": {
- "totals": {
- "results": 0,
- "passed": 0,
- "failed": 0,
- "queued": 0,
- "running": 0
}, - "filtered": {
- "results": 0,
- "passed": 0,
- "failed": 0,
- "queued": 0,
- "running": 0
}, - "results": [
- {
- "id": "62f395e004109209b50edfc4",
- "name": "test-suite1-test1",
- "number": 1,
- "testName": "test1",
- "testNamespace": "testkube",
- "testType": "postman/collection",
- "status": "queued",
- "startTime": "2019-08-24T14:15:22Z",
- "endTime": "2019-08-24T14:15:22Z",
- "duration": "00:00:13",
- "durationMs": 10000,
- "labels": {
- "app": "backend",
- "env": "prod"
}, - "runningContext": {
- "type": "userCLI",
- "context": "string"
}
}
]
}
}
Delete executors
Deletes labeled executors
path Parameters
id required | string organizationId |
environmentId required | string environmentID |
query Parameters
selector | string Example: selector=kubernetes.io/app=demo Only workflow executions with given status are included in this time series chart. |
Responses
Response samples
- 502
[- {
- "title": "Invalid test name",
- "status": 500,
- "detail": "Your test name can't contain forbidden characters like \"}}}\" passed",
}
]
Get executor details
Returns executors data with executions passed to executor
path Parameters
environmentId required | string environmentID |
id required | string unique id of the object |
Responses
Response samples
- 200
- 400
- 500
- 502
{- "name": "string",
- "executor": {
- "executorType": "string",
- "image": "string",
- "slaves": {
- "image": "kubeshop/ex-slaves-image:latest"
}, - "imagePullSecrets": [
- {
- "name": "string"
}
], - "command": [
- "curl"
], - "args": [
- "--repeats",
- "5",
- "--insecure"
], - "types": [
- "string"
], - "uri": "string",
- "contentTypes": [
- "string"
], - "jobTemplate": "string",
- "jobTemplateReference": "string",
- "labels": {
- "app": "backend",
- "env": "prod"
}, - "features": [
- "artifacts"
], - "meta": {
- "iconURI": "/assets/k6.jpg",
- "tooltips": {
- "general": "please provide k6 test script for execution"
}
}, - "useDataDirAsWorkingDir": true
}, - "executions": {
- "totals": {
- "results": 0,
- "passed": 0,
- "failed": 0,
- "queued": 0,
- "running": 0
}, - "filtered": {
- "results": 0,
- "passed": 0,
- "failed": 0,
- "queued": 0,
- "running": 0
}, - "results": [
- {
- "id": "62f395e004109209b50edfc4",
- "name": "test-suite1-test1",
- "number": 1,
- "testName": "test1",
- "testNamespace": "testkube",
- "testType": "postman/collection",
- "status": "queued",
- "startTime": "2019-08-24T14:15:22Z",
- "endTime": "2019-08-24T14:15:22Z",
- "duration": "00:00:13",
- "durationMs": 10000,
- "labels": {
- "app": "backend",
- "env": "prod"
}, - "runningContext": {
- "type": "userCLI",
- "context": "string"
}
}
]
}
}
Delete executor
Deletes executor by its name
path Parameters
environmentId required | string environmentID |
id required | string unique id of the object |
Responses
Response samples
- 502
[- {
- "title": "Invalid test name",
- "status": 500,
- "detail": "Your test name can't contain forbidden characters like \"}}}\" passed",
}
]
Update executor
Update new executor based on variables passed in request
path Parameters
environmentId required | string environmentID |
id required | string unique id of the object |
Request Body schema: required
executor request body data
executorType | string ExecutorType one of "rest" for rest openapi based executors or "job" which will be default runners for testkube soon |
image | string Image for kube-job |
object (SlavesMeta) Slave data for executing tests in distributed environment | |
Array of objects (LocalObjectReference) container image pull secrets | |
command | Array of strings executor image command |
args | Array of strings additional executor binary argument |
types | Array of strings Types defines what types can be handled by executor e.g. "postman/collection", ":curl/command" etc |
uri | string URI for rest based executors |
contentTypes | Array of strings list of handled content types |
jobTemplate | string Job template to launch executor |
jobTemplateReference | string name of the template resource |
object executor labels | |
features | Array of strings Items Enum: "artifacts" "junit-report" Available executor features |
object (ExecutorMeta) Executor meta data | |
useDataDirAsWorkingDir | boolean use data dir as working dir for executor |
namespace | string object kubernetes namespace |
name required | string object name |
Responses
Request samples
- Payload
{- "executorType": "string",
- "image": "string",
- "slaves": {
- "image": "kubeshop/ex-slaves-image:latest"
}, - "imagePullSecrets": [
- {
- "name": "string"
}
], - "command": [
- "curl"
], - "args": [
- "--repeats",
- "5",
- "--insecure"
], - "types": [
- "string"
], - "uri": "string",
- "contentTypes": [
- "string"
], - "jobTemplate": "string",
- "jobTemplateReference": "string",
- "labels": {
- "app": "backend",
- "env": "prod"
}, - "features": [
- "artifacts"
], - "meta": {
- "iconURI": "/assets/k6.jpg",
- "tooltips": {
- "general": "please provide k6 test script for execution"
}
}, - "useDataDirAsWorkingDir": true,
- "namespace": "testkube",
- "name": "name"
}
Response samples
- 200
- 400
- 404
- 502
{- "name": "string",
- "executor": {
- "executorType": "string",
- "image": "string",
- "slaves": {
- "image": "kubeshop/ex-slaves-image:latest"
}, - "imagePullSecrets": [
- {
- "name": "string"
}
], - "command": [
- "curl"
], - "args": [
- "--repeats",
- "5",
- "--insecure"
], - "types": [
- "string"
], - "uri": "string",
- "contentTypes": [
- "string"
], - "jobTemplate": "string",
- "jobTemplateReference": "string",
- "labels": {
- "app": "backend",
- "env": "prod"
}, - "features": [
- "artifacts"
], - "meta": {
- "iconURI": "/assets/k6.jpg",
- "tooltips": {
- "general": "please provide k6 test script for execution"
}
}, - "useDataDirAsWorkingDir": true
}, - "executions": {
- "totals": {
- "results": 0,
- "passed": 0,
- "failed": 0,
- "queued": 0,
- "running": 0
}, - "filtered": {
- "results": 0,
- "passed": 0,
- "failed": 0,
- "queued": 0,
- "running": 0
}, - "results": [
- {
- "id": "62f395e004109209b50edfc4",
- "name": "test-suite1-test1",
- "number": 1,
- "testName": "test1",
- "testNamespace": "testkube",
- "testType": "postman/collection",
- "status": "queued",
- "startTime": "2019-08-24T14:15:22Z",
- "endTime": "2019-08-24T14:15:22Z",
- "duration": "00:00:13",
- "durationMs": 10000,
- "labels": {
- "app": "backend",
- "env": "prod"
}, - "runningContext": {
- "type": "userCLI",
- "context": "string"
}
}
]
}
}