Skip to content

Commit ab3356e

Browse files
OAS Update
1 parent 335aa32 commit ab3356e

File tree

1 file changed

+140
-4
lines changed

1 file changed

+140
-4
lines changed

services/ske/v2/ske.json

Lines changed: 140 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,20 @@
3232
],
3333
"type": "object"
3434
},
35+
"Access": {
36+
"example": {
37+
"idp": {
38+
"enabled": true,
39+
"type": "type"
40+
}
41+
},
42+
"properties": {
43+
"idp": {
44+
"$ref": "#/components/schemas/IDP"
45+
}
46+
},
47+
"type": "object"
48+
},
3549
"AccessScope": {
3650
"description": "The access scope of the Control Plane. It defines if the Kubernetes control plane is public or only available inside a STACKIT Network Area.\n⚠️ Note: This feature is in private preview. Supplying this object is only permitted for enabled accounts. If your account does not have access, the request will be rejected.",
3751
"enum": [
@@ -391,6 +405,9 @@
391405
}
392406
},
393407
"properties": {
408+
"access": {
409+
"$ref": "#/components/schemas/Access"
410+
},
394411
"extensions": {
395412
"$ref": "#/components/schemas/Extension"
396413
},
@@ -435,16 +452,23 @@
435452
},
436453
"properties": {
437454
"code": {
438-
"description": "Possible values: `\"SKE_OBSERVABILITY_INSTANCE_NOT_FOUND\"`, `\"SKE_DNS_ZONE_NOT_FOUND\"`, `\"SKE_NODE_NO_VALID_HOST_FOUND\"`, `\"SKE_NODE_MISCONFIGURED_PDB\"`, `\"SKE_NODE_MACHINE_TYPE_NOT_FOUND\"`, `\"SKE_INFRA_SNA_NETWORK_NOT_FOUND\"`, `\"SKE_FETCHING_ERRORS_NOT_POSSIBLE\"`",
455+
"description": "Possible values: `\"SKE_INFRA_SNA_NETWORK_NOT_FOUND\"`, `\"SKE_INFRA_SNA_NETWORK_NO_ROUTER\"`, `\"SKE_NODE_NO_VALID_HOST_FOUND\"`, `\"SKE_NODE_MISCONFIGURED_PDB\"`, `\"SKE_NODE_MACHINE_TYPE_NOT_FOUND\"`, `\"SKE_NETWORK_NO_DNS_CONFIGURED\"`, `\"SKE_NETWORK_NO_AVAILABLE_IPS\"`, `\"SKE_NODE_MEMORY_PRESSURE\"`, `\"SKE_NODE_DISK_PRESSURE\"`, `\"SKE_NODE_PID_PRESSURE\"`, `\"SKE_OBSERVABILITY_INSTANCE_NOT_FOUND\"`, `\"SKE_OBSERVABILITY_INSTANCE_NOT_READY\"`, `\"SKE_DNS_ZONE_NOT_FOUND\"`, `\"SKE_FETCHING_ERRORS_NOT_POSSIBLE\"`",
439456
"title": "Error code",
440457
"type": "string",
441458
"x-extensible-enum": [
442-
"SKE_OBSERVABILITY_INSTANCE_NOT_FOUND",
443-
"SKE_DNS_ZONE_NOT_FOUND",
459+
"SKE_INFRA_SNA_NETWORK_NOT_FOUND",
460+
"SKE_INFRA_SNA_NETWORK_NO_ROUTER",
444461
"SKE_NODE_NO_VALID_HOST_FOUND",
445462
"SKE_NODE_MISCONFIGURED_PDB",
446463
"SKE_NODE_MACHINE_TYPE_NOT_FOUND",
447-
"SKE_INFRA_SNA_NETWORK_NOT_FOUND",
464+
"SKE_NETWORK_NO_DNS_CONFIGURED",
465+
"SKE_NETWORK_NO_AVAILABLE_IPS",
466+
"SKE_NODE_MEMORY_PRESSURE",
467+
"SKE_NODE_DISK_PRESSURE",
468+
"SKE_NODE_PID_PRESSURE",
469+
"SKE_OBSERVABILITY_INSTANCE_NOT_FOUND",
470+
"SKE_OBSERVABILITY_INSTANCE_NOT_READY",
471+
"SKE_DNS_ZONE_NOT_FOUND",
448472
"SKE_FETCHING_ERRORS_NOT_POSSIBLE"
449473
]
450474
},
@@ -565,6 +589,9 @@
565589
},
566590
"CreateOrUpdateClusterPayload": {
567591
"properties": {
592+
"access": {
593+
"$ref": "#/components/schemas/Access"
594+
},
568595
"extensions": {
569596
"$ref": "#/components/schemas/Extension"
570597
},
@@ -790,6 +817,17 @@
790817
],
791818
"type": "object"
792819
},
820+
"IDPKubeconfig": {
821+
"example": {
822+
"kubeconfig": "kubeconfig"
823+
},
824+
"properties": {
825+
"kubeconfig": {
826+
"type": "string"
827+
}
828+
},
829+
"type": "object"
830+
},
793831
"Image": {
794832
"description": "For valid names and versions please take a look at [provider-options](#tag/ProviderOptions/operation/SkeService_GetProviderOptions) `machineImages`.",
795833
"example": {
@@ -2947,6 +2985,104 @@
29472985
}
29482986
}
29492987
},
2988+
"/v2/projects/{projectId}/regions/{region}/clusters/{clusterName}/kubeconfig/idp": {
2989+
"get": {
2990+
"description": "A kubeconfig retrieved using this endpoint does not contain any credentials and instead obtains valid credentials via the STACKIT CLI. Permissions must be granted to the user beforehand using an admin kubeconfig.",
2991+
"operationId": "GetIDPKubeconfig",
2992+
"parameters": [
2993+
{
2994+
"in": "path",
2995+
"name": "projectId",
2996+
"required": true,
2997+
"schema": {
2998+
"type": "string"
2999+
}
3000+
},
3001+
{
3002+
"in": "path",
3003+
"name": "region",
3004+
"required": true,
3005+
"schema": {
3006+
"type": "string"
3007+
}
3008+
},
3009+
{
3010+
"in": "path",
3011+
"name": "clusterName",
3012+
"required": true,
3013+
"schema": {
3014+
"type": "string"
3015+
}
3016+
}
3017+
],
3018+
"responses": {
3019+
"200": {
3020+
"content": {
3021+
"application/json": {
3022+
"schema": {
3023+
"$ref": "#/components/schemas/IDPKubeconfig"
3024+
}
3025+
}
3026+
},
3027+
"description": "A successful response."
3028+
},
3029+
"400": {
3030+
"content": {
3031+
"application/json": {
3032+
"schema": {
3033+
"type": "object"
3034+
}
3035+
}
3036+
},
3037+
"description": "Invalid request"
3038+
},
3039+
"401": {
3040+
"content": {
3041+
"application/json": {
3042+
"schema": {
3043+
"type": "object"
3044+
}
3045+
}
3046+
},
3047+
"description": "Unauthorized"
3048+
},
3049+
"404": {
3050+
"content": {
3051+
"application/json": {
3052+
"schema": {
3053+
"type": "object"
3054+
}
3055+
}
3056+
},
3057+
"description": "Project or cluster not found"
3058+
},
3059+
"default": {
3060+
"content": {
3061+
"application/json": {
3062+
"schema": {
3063+
"$ref": "#/components/schemas/RuntimeError"
3064+
}
3065+
}
3066+
},
3067+
"description": "An unexpected error response."
3068+
}
3069+
},
3070+
"summary": "Get a kubeconfig to authenticate via IDP for use with the STACKIT CLI",
3071+
"x-stackit-authorization": {
3072+
"actions": [
3073+
"ske.cluster.kubeconfig.idp.create"
3074+
],
3075+
"resource-id": "projectId",
3076+
"resource-id-type": "dynamic",
3077+
"resource-type": "project",
3078+
"service-enablement": {
3079+
"services": [
3080+
"cloud.stackit.ske"
3081+
]
3082+
}
3083+
}
3084+
}
3085+
},
29503086
"/v2/projects/{projectId}/regions/{region}/clusters/{clusterName}/kubeconfig/login": {
29513087
"get": {
29523088
"description": "A admin kubeconfig retrieved using this endpoint does not contain any credentials and instead obtains valid credentials via the STACKIT CLI.",

0 commit comments

Comments
 (0)