Skip to content

Commit af5a038

Browse files
author
rsyracuse
authored
New LKE recycle and Node View Endpoints (#375)
1 parent 388e91a commit af5a038

File tree

1 file changed

+176
-1
lines changed

1 file changed

+176
-1
lines changed

openapi.yaml

Lines changed: 176 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6517,6 +6517,17 @@ paths:
65176517
description: >
65186518
An array of tags applied to the Kubernetes cluster. Tags are for organizational purposes only.
65196519
To delete a tag, exclude it from your `tags` array.
6520+
k8s_version:
6521+
type: string
6522+
description: >
6523+
The desired upgraded Kubernetes version for this Kubernetes cluster in the format of
6524+
<major>.<minor>. New and recycled Nodes in this cluster will be installed with the
6525+
latest available patch for the Cluster's upgraded Kubernetes version.
6526+
6527+
When updating the Kubernetes version, only the next latest minor version can be deployed
6528+
following the currently deployed version. For example, a cluster with Kubernetes version
6529+
1.16 can be upgraded to version 1.17, but not directly to 1.18. The k8s_version can not be
6530+
downgraded.
65206531
responses:
65216532
'200':
65226533
description: Returns a single Kubernetes cluster.
@@ -6554,6 +6565,7 @@ paths:
65546565
-X PUT -d '{
65556566
"label": "lkecluster54321"
65566567
"tags" : ["ecomm", "blog", "prod", "monitoring"]
6568+
"k8s_version": "1.17"
65576569
}' \
65586570
https://api.linode.com/v4/lke/clusters/12345
65596571
- lang: CLI
@@ -6726,6 +6738,50 @@ paths:
67266738
linode-cli lke pool-create 12345 \
67276739
--type g6-standard-4 \
67286740
--count 6
6741+
/lke/clusters/{clusterId}/recycle:
6742+
parameters:
6743+
- name: clusterId
6744+
in: path
6745+
description: ID of the Kubernetes cluster to be recycled.
6746+
required: true
6747+
schema:
6748+
type: integer
6749+
x-linode-cli-command: lke
6750+
post:
6751+
operationId: postLKEClusterRecycle
6752+
x-linode-cli-action: cluster-recycle
6753+
security:
6754+
- personalAccessToken: []
6755+
- oauth:
6756+
- lke:read_write
6757+
tags:
6758+
- Linode Kubernetes Engine (LKE)
6759+
summary: Kubernetes Cluster Recycle
6760+
description: |
6761+
Recycles a designated Kubernetes Cluster. All Linodes within the Cluster will be deleted
6762+
and replaced with new Linodes on a rolling basis, which may take several minutes. Replacement Nodes are
6763+
installed with the latest available patch for the Cluster's Kubernetes Version.
6764+
6765+
**Any local storage on deleted Linodes (such as "hostPath" and "emptyDir" volumes, or "local" PersistentVolumes) will be erased.**
6766+
responses:
6767+
'200':
6768+
description: Cluster has been recycled.
6769+
content:
6770+
application/json:
6771+
schema:
6772+
type: object
6773+
default:
6774+
$ref: '#/components/responses/ErrorResponse'
6775+
x-code-samples:
6776+
- lang: Shell
6777+
source: >
6778+
curl -H "Content-Type: application/json" \
6779+
-H "Authorization: Bearer $TOKEN" \
6780+
-X POST \
6781+
https://api.linode.com/v4/lke/clusters/12345/recycle
6782+
- lang: CLI
6783+
source: >
6784+
linode-cli lke cluster-recycle 12345
67296785
/lke/clusters/{clusterId}/pools/{poolId}:
67306786
parameters:
67316787
- name: clusterId
@@ -6918,6 +6974,125 @@ paths:
69186974
- lang: CLI
69196975
source: >
69206976
linode-cli lke pool-recycle 12345 456
6977+
/lke/clusters/{clusterID}/nodes/{nodeId}:
6978+
parameters:
6979+
- name: clusterId
6980+
in: path
6981+
description: ID of the Kubernetes cluster containing the Node.
6982+
required: true
6983+
schema:
6984+
type: integer
6985+
- name: nodeId
6986+
in: path
6987+
description: ID of the Node to look up.
6988+
required: true
6989+
schema:
6990+
type: string
6991+
x-linode-cli-command: lke
6992+
get:
6993+
operationId: getLKEClusterNode
6994+
x-linode-cli-action: node-view
6995+
security:
6996+
- personalAccessToken: []
6997+
- oauth:
6998+
- lke:read_write
6999+
tags:
7000+
- Linode Kubernetes Engine (LKE)
7001+
summary: Node View
7002+
description: >
7003+
Returns the values for a specified node object.
7004+
responses:
7005+
'200':
7006+
description: Returns the values of a node object in the form that it appears currently in the node pool array.
7007+
content:
7008+
application/json:
7009+
schema:
7010+
type: object
7011+
properties:
7012+
data:
7013+
type: object
7014+
description: >
7015+
The selected node in the cluster.
7016+
properties:
7017+
id:
7018+
type: string
7019+
readOnly: true
7020+
description: >
7021+
The Node's ID.
7022+
example: "12345-6aa78910bc"
7023+
instance_id:
7024+
type: integer
7025+
description: >
7026+
The Linode's ID. If no Linode is currently provisioned for this Node, this is `null`.
7027+
example: 123456
7028+
status:
7029+
type: string
7030+
description: >
7031+
The Node's status as it pertains to being a Kubernetes node.
7032+
enum:
7033+
- ready
7034+
- not_ready
7035+
example: ready
7036+
default:
7037+
$ref: '#/components/responses/ErrorResponse'
7038+
x-code-samples:
7039+
- lang: Shell
7040+
source: >
7041+
curl -H "Authorization: Bearer $TOKEN" \
7042+
https://api.linode.com/v4/lke/clusters/12345/nodes/12345-6aa78910bc
7043+
- lang: CLI
7044+
source: >
7045+
linode-cli lke node-view 123456 12345-6aa78910bc
7046+
/lke/clusters/{clusterId}/nodes/{nodeId}/recycle:
7047+
parameters:
7048+
- name: clusterId
7049+
in: path
7050+
description: ID of the Kubernetes cluster containing the Node.
7051+
required: true
7052+
schema:
7053+
type: integer
7054+
- name: nodeId
7055+
in: path
7056+
description: ID of the Node to be recycled.
7057+
required: true
7058+
schema:
7059+
type: string
7060+
x-linode-cli-command: lke
7061+
post:
7062+
operationId: postLKEClusterNodeRecycle
7063+
x-linode-cli-action: node-recycle
7064+
security:
7065+
- personalAccessToken: []
7066+
- oauth:
7067+
- lke:read_write
7068+
tags:
7069+
- Linode Kubernetes Engine (LKE)
7070+
summary: Node Recycle
7071+
description: |
7072+
Recycles an individual Node in the designated Kubernetes Cluster. The Node will be deleted
7073+
and replaced with a new Linode, which may take a few minutes. Replacement Nodes are
7074+
installed with the latest available patch for the Cluster's Kubernetes Version.
7075+
7076+
**Any local storage on deleted Linodes (such as "hostPath" and "emptyDir" volumes, or "local" PersistentVolumes) will be erased.**
7077+
responses:
7078+
'200':
7079+
description: Node has been recycled.
7080+
content:
7081+
application/json:
7082+
schema:
7083+
type: object
7084+
default:
7085+
$ref: '#/components/responses/ErrorResponse'
7086+
x-code-samples:
7087+
- lang: Shell
7088+
source: >
7089+
curl -H "Content-Type: application/json" \
7090+
-H "Authorization: Bearer $TOKEN" \
7091+
-X POST \
7092+
https://api.linode.com/v4/lke/clusters/12345/nodes/12345-6aa78910bc/recycle
7093+
- lang: CLI
7094+
source: >
7095+
linode-cli lke node-recycle 12345 12345-6aa78910bc
69217096
/lke/clusters/{clusterId}/api-endpoints:
69227097
parameters:
69237098
- name: clusterId
@@ -6976,7 +7151,7 @@ paths:
69767151
https://api.linode.com/v4/lke/clusters/12345/api-endpoints
69777152
- lang: CLI
69787153
source: >
6979-
linode-cli lke api-endpoint-list 12345
7154+
linode-cli lke api-endpoints-list 12345
69807155
/lke/clusters/{clusterId}/kubeconfig:
69817156
parameters:
69827157
- name: clusterId

0 commit comments

Comments
 (0)