Transform Cluster Template
API to transform v1 cluster template to v2 cluster template
Request
URI
POST
https://{api_host}/telco/api/caas/v2/templates/clone
COPY
Query Parameters
string
clusterTemplateId
Required
v1 cluster templateId which needs to be transformed to v2 cluster template format
Request Body
Cluster template transformation payload
cloneTemplateRequest of type(s) application/json
Required
{
"name": "string"
}
string
name
Required
transformed cluster template name
Responses
200
Successfully transformed v1 cluster template to v2 cluster template
Returns clusterTemplate of type(s) application/json
{
"metadata": {
"name": "name",
"labels": {
"key": "labels"
}
},
"spec": {
"clusterType": "WORKLOAD",
"cluster": {
"clusterConfigSpec": {
"autoscaler": {
"scaleDownDelayAfterFailure": "scaleDownDelayAfterFailure",
"maxNodesTotal": 0,
"scaleDownDelayAfterAdd": "scaleDownDelayAfterAdd",
"scaleDownDelayAfterDelete": "scaleDownDelayAfterDelete",
"maxNodeProvisionTime": "maxNodeProvisionTime",
"enable": true,
"minSize0": 1,
"scaleDownUnneededTime": "scaleDownUnneededTime",
"maxSize0": 6
},
"airgapSpec": {
"caCert": "caCert",
"fqdn": "fqdn",
"type": "extension",
"extensionId": "extensionId"
},
"proxySpec": {
"caCert": "caCert",
"httpProxy": "httpProxy",
"httpsProxy": "httpsProxy",
"noProxy": "noProxy",
"type": "extension",
"extensionId": "extensionId"
},
"clusterNetwork": {
"pods": {
"cidrBlocks": [
"cidrBlocks",
"cidrBlocks"
]
},
"apiServerPort": 5,
"services": {
"cidrBlocks": [
"cidrBlocks",
"cidrBlocks"
]
},
"serviceDomain": "serviceDomain"
},
"airgap": {
"caCert": "caCert",
"fqdn": "fqdn"
},
"ipFamilies": "IPv4",
"proxy": {
"caCert": "caCert",
"httpProxy": "httpProxy",
"httpsProxy": "httpsProxy",
"noProxy": "noProxy"
},
"tcaBomReleaseRef": {
"name": "name"
},
"cniType": "cniType",
"controlPlaneEndpoint": {
"host": "host"
},
"cloudProviders": {
"primeRef": {
"vimId": "vimId",
"datacenter": "datacenter"
},
"subRefs": [
{
"vimId": "vimId",
"datacenter": "datacenter"
},
{
"vimId": "vimId",
"datacenter": "datacenter"
}
]
},
"publicKeyRef": {
"uid": "uid",
"apiVersion": "apiVersion",
"kind": "kind",
"resourceVersion": "resourceVersion",
"fieldPath": "fieldPath",
"name": "name",
"namespace": "namespace"
},
"strategy": {
"type": "type",
"rollingUpdate": {
"maxSurge": "",
"maxUnavailable": ""
}
}
},
"controlPlaneSpec": {
"template": "template",
"diskGiB": 2,
"numCPUs": 3,
"datastore": "datastore",
"replicas": 4,
"kubeadmConfigTemplate": {
"clusterConfiguration": {
"controllerManager": {
"extraArgs": {
"key": "extraArgs"
},
"extraVolumes": [
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
},
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
}
]
},
"kind": "kind",
"dns": {
"imageRepository": "imageRepository",
"imageTag": "imageTag"
},
"certificatesDir": "certificatesDir",
"featureGates": {
"key": true
},
"networking": {
"podSubnet": "podSubnet",
"serviceSubnet": "serviceSubnet",
"dnsDomain": "dnsDomain"
},
"scheduler": {
"extraArgs": {
"key": "extraArgs"
},
"extraVolumes": [
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
},
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
}
]
},
"apiVersion": "apiVersion",
"controlPlaneEndpoint": "controlPlaneEndpoint",
"clusterName": "clusterName",
"apiServer": {
"extraArgs": {
"key": "extraArgs"
},
"timeoutForControlPlane": "timeoutForControlPlane",
"certSANs": [
"certSANs",
"certSANs"
],
"extraVolumes": [
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
},
{
"mountPath": "mountPath",
"name": "name",
"readOnly": true,
"pathType": "pathType",
"hostPath": "hostPath"
}
]
},
"imageRepository": "imageRepository",
"etcd": {
"external": {
"caFile": "caFile",
"endpoints": [
"endpoints",
"endpoints"
],
"keyFile": "keyFile",
"certFile": "certFile"
},
"local": {
"peerCertSANs": [
"peerCertSANs",
"peerCertSANs"
],
"extraArgs": {
"key": "extraArgs"
},
"dataDir": "dataDir",
"serverCertSANs": [
"serverCertSANs",
"serverCertSANs"
],
"imageRepository": "imageRepository",
"imageTag": "imageTag"
}
},
"kubernetesVersion": "kubernetesVersion"
}
},
"cloudMachineTemplate": {
"type": "type",
"vSphereMachine": {
"template": "template",
"cloneMode": "fullClone",
"numCoresPerSocket": 5,
"folder": "folder",
"datastore": "datastore",
"datacenter": "datacenter",
"storagePolicyName": "storagePolicyName",
"resourcePool": "resourcePool"
}
},
"datacenter": "datacenter",
"storagePolicyName": "storagePolicyName",
"memoryMiB": 7,
"labels": {
"key": "labels"
},
"network": {
"devices": [
{
"dhcp4": true,
"nameservers": [
"nameservers",
"nameservers"
],
"dhcp6": true,
"networkName": "networkName",
"gateway6": "gateway6",
"gateway4": "gateway4",
"mtu": 9
},
{
"dhcp4": true,
"nameservers": [
"nameservers",
"nameservers"
],
"dhcp6": true,
"networkName": "networkName",
"gateway6": "gateway6",
"gateway4": "gateway4",
"mtu": 9
}
]
},
"cloneMode": "fullClone",
"numCoresPerSocket": 2,
"folder": "folder",
"tcaBomReleaseRef": {
"name": "name"
},
"controlPlaneName": "controlPlaneName",
"clusterName": "clusterName",
"cloudProvider": {
"vimId": "vimId"
},
"strategy": {
"type": "type",
"rollingUpdate": {
"maxSurge": "",
"maxUnavailable": ""
}
},
"resourcePool": "resourcePool"
},
"nfOrchestrationTcaCPId": "nfOrchestrationTcaCPId"
},
"mgmtCluster": {
"edgeRef": "edgeRef",
"clusterName": "clusterName"
},
"nodepools": [
{
"template": "template",
"autoscaler": {
"enable": true,
"minSize0": 1,
"maxSize0": 7
},
"numCPUs": 6,
"datastore": "datastore",
"cloudMachineTemplate": {
"type": "type",
"vSphereMachine": {
"template": "template",
"cloneMode": "fullClone",
"numCoresPerSocket": 5,
"folder": "folder",
"datastore": "datastore",
"datacenter": "datacenter",
"storagePolicyName": "storagePolicyName",
"resourcePool": "resourcePool"
}
},
"storagePolicyName": "storagePolicyName",
"customisations": {
"networkAdapters": [
{
"networkName": "networkName",
"interfaceName": "interfaceName",
"mtu": 4.965218492984954
},
{
"networkName": "networkName",
"interfaceName": "interfaceName",
"mtu": 4.965218492984954
}
]
},
"memoryMiB": 1,
"network": {
"devices": [
{
"dhcp4": true,
"nameservers": [
"nameservers",
"nameservers"
],
"dhcp6": true,
"networkName": "networkName",
"gateway6": "gateway6",
"gateway4": "gateway4",
"mtu": 9
},
{
"dhcp4": true,
"nameservers": [
"nameservers",
"nameservers"
],
"dhcp6": true,
"networkName": "networkName",
"gateway6": "gateway6",
"gateway4": "gateway4",
"mtu": 9
}
]
},
"cloneMode": "fullClone",
"clusterName": "clusterName",
"cloudProvider": {
"vimId": "vimId"
},
"resourcePool": "resourcePool",
"diskGiB": 1,
"replicas": 1,
"kubeadmConfigTemplate": {
"joinConfiguration": {
"nodeRegistration": {
"kubeletExtraArgs": {
"key": "kubeletExtraArgs"
}
}
}
},
"datacenter": "datacenter",
"pause": true,
"labels": {
"key": "labels"
},
"numCoresPerSocket": 7,
"folder": "folder",
"tcaBomReleaseRef": {
"name": "name"
},
"healthCheck": {
"unhealthyConditions": [
{
"type": "type",
"timeout": "timeout",
"status": "status"
},
{
"type": "type",
"timeout": "timeout",
"status": "status"
}
],
"nodeStartupTimeout": "nodeStartupTimeout",
"maxUnhealthy": "maxUnhealthy"
},
"name": "name",
"strategy": {
"type": "type",
"rollingUpdate": {
"maxSurge": "",
"maxUnavailable": ""
}
}
},
{
"template": "template",
"autoscaler": {
"enable": true,
"minSize0": 1,
"maxSize0": 7
},
"numCPUs": 6,
"datastore": "datastore",
"cloudMachineTemplate": {
"type": "type",
"vSphereMachine": {
"template": "template",
"cloneMode": "fullClone",
"numCoresPerSocket": 5,
"folder": "folder",
"datastore": "datastore",
"datacenter": "datacenter",
"storagePolicyName": "storagePolicyName",
"resourcePool": "resourcePool"
}
},
"storagePolicyName": "storagePolicyName",
"customisations": {
"networkAdapters": [
{
"networkName": "networkName",
"interfaceName": "interfaceName",
"mtu": 4.965218492984954
},
{
"networkName": "networkName",
"interfaceName": "interfaceName",
"mtu": 4.965218492984954
}
]
},
"memoryMiB": 1,
"network": {
"devices": [
{
"dhcp4": true,
"nameservers": [
"nameservers",
"nameservers"
],
"dhcp6": true,
"networkName": "networkName",
"gateway6": "gateway6",
"gateway4": "gateway4",
"mtu": 9
},
{
"dhcp4": true,
"nameservers": [
"nameservers",
"nameservers"
],
"dhcp6": true,
"networkName": "networkName",
"gateway6": "gateway6",
"gateway4": "gateway4",
"mtu": 9
}
]
},
"cloneMode": "fullClone",
"clusterName": "clusterName",
"cloudProvider": {
"vimId": "vimId"
},
"resourcePool": "resourcePool",
"diskGiB": 1,
"replicas": 1,
"kubeadmConfigTemplate": {
"joinConfiguration": {
"nodeRegistration": {
"kubeletExtraArgs": {
"key": "kubeletExtraArgs"
}
}
}
},
"datacenter": "datacenter",
"pause": true,
"labels": {
"key": "labels"
},
"numCoresPerSocket": 7,
"folder": "folder",
"tcaBomReleaseRef": {
"name": "name"
},
"healthCheck": {
"unhealthyConditions": [
{
"type": "type",
"timeout": "timeout",
"status": "status"
},
{
"type": "type",
"timeout": "timeout",
"status": "status"
}
],
"nodeStartupTimeout": "nodeStartupTimeout",
"maxUnhealthy": "maxUnhealthy"
},
"name": "name",
"strategy": {
"type": "type",
"rollingUpdate": {
"maxSurge": "",
"maxUnavailable": ""
}
}
}
],
"addOns": [
{
"tcaBomReleaseRef": {
"uid": "uid",
"apiVersion": "apiVersion",
"kind": "kind",
"resourceVersion": "resourceVersion",
"fieldPath": "fieldPath",
"name": "name",
"namespace": "namespace"
},
"name": "name",
"namespace": "namespace",
"clusterRef": {
"uid": "uid",
"apiVersion": "apiVersion",
"kind": "kind",
"resourceVersion": "resourceVersion",
"fieldPath": "fieldPath",
"name": "name",
"namespace": "namespace"
},
"config": {
"partnerSystemRefs": [
"partnerSystemRefs",
"partnerSystemRefs"
],
"stringData": "{}"
},
"addOnName": "addOnName"
},
{
"tcaBomReleaseRef": {
"uid": "uid",
"apiVersion": "apiVersion",
"kind": "kind",
"resourceVersion": "resourceVersion",
"fieldPath": "fieldPath",
"name": "name",
"namespace": "namespace"
},
"name": "name",
"namespace": "namespace",
"clusterRef": {
"uid": "uid",
"apiVersion": "apiVersion",
"kind": "kind",
"resourceVersion": "resourceVersion",
"fieldPath": "fieldPath",
"name": "name",
"namespace": "namespace"
},
"config": {
"partnerSystemRefs": [
"partnerSystemRefs",
"partnerSystemRefs"
],
"stringData": "{}"
},
"addOnName": "addOnName"
}
],
"description": "description"
},
"status": {
"lastUpdated": "lastUpdated",
"creationUser": "creationUser",
"resourceVersion": 5.025004791520295,
"transformationHistory": {
"originalClusterTemplateId": "originalClusterTemplateId",
"transformationDate": "transformationDate",
"originalClusterTemplateName": "originalClusterTemplateName",
"transformationUser": "transformationUser"
},
"creationDate": "creationDate"
}
}
400
Bad Request
Returns errorResponse of type(s) application/json
{
"errors": [
{
"code": "string",
"message": "string"
}
]
}
401
Unauthorized
Operation doesn't return any data structure
403
Forbidden
Operation doesn't return any data structure
404
Resource request is not found
Returns errorResponse of type(s) application/json
{
"errors": [
{
"code": "string",
"message": "string"
}
]
}
500
Internal Server Error
Returns errorResponse of type(s) application/json
{
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Cluster V2 templates Operations
POST
Create Cluster Template
DELETE
Delete Cluster Template
GET
Download Cluster Template
POST
Generate Addons Deployment Spec
POST
Generate Cluster Deployment Spec
POST
Generate Node Pools Deployment Spec
GET
Get All Cluster Templates
GET
Get Cluster Template
POST
Transform Cluster Template
PUT
Update Cluster Template
POST
Upload Cluster Template