Generate Node Pools Deployment Spec

Generate Node Pools Deployment Spec

API to generate nodepools deployment spec

Request
URI
POST
https://{api_host}/telco/api/caas/v2/templates/{templateName}/nodepools/{nodepoolTemplateName}/resolve
COPY
Path Parameters
string
templateName
Required

Cluster template name for which deploy spec to be generated

string
nodepoolTemplateName
Required

NodePool template name for which deploy spec to be generated


Request Body

Overrides for nodepool template. nodepool deploy spec is generated by merging the cluster template and overrides

nodePoolOverrides of type(s) application/json
Required
object
metadata
Optional

nodepool metadata

object
spec
Required

nodepool spec

Responses
200

Returns nodepool deployment spec

Returns nodepool of type(s) application/json
{
    "lastUpdated": "lastUpdated",
    "metadata": {
        "createdByIntent": "createdByIntent",
        "modifiedByIntent": "modifiedByIntent",
        "tcaCpId": "tcaCpId",
        "resourceVersion": 0.8008281904610115,
        "clusterName": "clusterName",
        "name": "name",
        "mgmtClusterName": "mgmtClusterName",
        "annotations": {
            "templateName": "templateName",
            "templateNodepoolName": "templateNodepoolName"
        }
    },
    "creationUser": "creationUser",
    "intentQueued": true,
    "creationDate": "creationDate",
    "spec": {
        "template": "template",
        "diskGiB": 6,
        "autoscaler": {
            "enable": true,
            "minSize0": 1,
            "maxSize0": 7
        },
        "numCPUs": 5,
        "datastore": "datastore",
        "replicas": 2,
        "kubeadmConfigTemplate": {
            "joinConfiguration": {
                "nodeRegistration": {
                    "kubeletExtraArgs": {
                        "key": "kubeletExtraArgs"
                    }
                }
            }
        },
        "cloudMachineTemplate": {
            "type": "type",
            "vSphereMachine": {
                "template": "template",
                "cloneMode": "fullClone",
                "numCoresPerSocket": 5,
                "folder": "folder",
                "datastore": "datastore",
                "datacenter": "datacenter",
                "storagePolicyName": "storagePolicyName",
                "resourcePool": "resourcePool"
            }
        },
        "datacenter": "datacenter",
        "storagePolicyName": "storagePolicyName",
        "customisations": {
            "networkAdapters": [
                {
                    "networkName": "networkName",
                    "interfaceName": "interfaceName",
                    "mtu": 7.061401241503109
                },
                {
                    "networkName": "networkName",
                    "interfaceName": "interfaceName",
                    "mtu": 7.061401241503109
                }
            ]
        },
        "memoryMiB": 1,
        "pause": true,
        "labels": {
            "key": "labels"
        },
        "network": {
            "devices": [
                {
                    "dhcp4": true,
                    "nameservers": [
                        "nameservers",
                        "nameservers"
                    ],
                    "dhcp6": true,
                    "networkName": "networkName",
                    "gateway6": "gateway6",
                    "gateway4": "gateway4",
                    "mtu": 5
                },
                {
                    "dhcp4": true,
                    "nameservers": [
                        "nameservers",
                        "nameservers"
                    ],
                    "dhcp6": true,
                    "networkName": "networkName",
                    "gateway6": "gateway6",
                    "gateway4": "gateway4",
                    "mtu": 5
                }
            ]
        },
        "cloneMode": "fullClone",
        "numCoresPerSocket": 5,
        "folder": "folder",
        "tcaBomReleaseRef": {
            "name": "name"
        },
        "clusterName": "clusterName",
        "healthCheck": {
            "unhealthyConditions": [
                {
                    "type": "type",
                    "timeout": "timeout",
                    "status": "status"
                },
                {
                    "type": "type",
                    "timeout": "timeout",
                    "status": "status"
                }
            ],
            "nodeStartupTimeout": "nodeStartupTimeout",
            "maxUnhealthy": "maxUnhealthy"
        },
        "cloudProvider": {
            "vimId": "vimId"
        },
        "strategy": {
            "type": "type",
            "rollingUpdate": {
                "maxSurge": "",
                "maxUnavailable": ""
            }
        },
        "resourcePool": "resourcePool"
    },
    "status": {
        "needUpgrade": false,
        "deleteAccepted": true,
        "resourceVersion": 9.301444243932576,
        "opstatus": "processing",
        "hostProfile": "hostProfile",
        "computeResource": {
            "name": "name",
            "type": "type"
        },
        "conditions": [
            {
                "severity": "Warning",
                "reason": "reason",
                "lastTransitionTime": "lastTransitionTime",
                "type": "Ready",
                "message": "message",
                "status": true
            },
            {
                "severity": "Warning",
                "reason": "reason",
                "lastTransitionTime": "lastTransitionTime",
                "type": "Ready",
                "message": "message",
                "status": true
            }
        ],
        "pause": false
    }
}
metadata
Optional

metadata

spec
Optional

spec

status
Optional

status

string
lastUpdated
Optional

lastUpdated

string
creationDate
Optional

creationDate

string
creationUser
Optional

creationUser

boolean
intentQueued
Optional

intentQueued


400

Bad Request

Returns errorResponse of type(s) application/json
{
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}
array of error
errors
Optional

errors


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"
        }
    ]
}
array of error
errors
Optional

errors


500

Internal Server Error

Returns errorResponse of type(s) application/json
{
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}
array of error
errors
Optional

errors