UNPKG

@itentialopensource/adapter-azure_aks

Version:

This adapter integrates with system described as: Azure AKS.

1,411 lines (1,410 loc) 440 kB
{ "id": "@itentialopensource/adapter-azure_aks", "type": "Adapter", "export": "AzureAks", "title": "Azure_aks", "src": "adapter.js", "roles": [ "admin" ], "methods": [ { "name": "iapUpdateAdapterConfiguration", "summary": "Updates the adapter configuration", "description": "Updates the adapter configuration file with the provided changes", "input": [ { "name": "configFile", "type": "string", "info": "The name of the file to change", "required": true, "schema": { "title": "configFile", "type": "string" } }, { "name": "changes", "type": "object", "info": "JSON object containing the configuration changes", "required": true, "schema": { "title": "changes", "type": "object" } }, { "name": "entity", "type": "string", "info": "The entity in which the changes are being made", "required": false, "schema": { "title": "entity", "type": "string" } }, { "name": "type", "type": "string", "info": "The type of file to change - action, schema, or mock", "required": false, "schema": { "title": "type", "type": "string" } }, { "name": "action", "type": "string", "info": "The action to be changed", "required": false, "schema": { "title": "action", "type": "string" } }, { "name" : "replace", "type": "boolean", "info": "True to replace entire mock data, false to merge/append", "required": false, "schema": { "title": "replace", "type" : "boolean" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapUpdateAdapterConfiguration" }, "task": true }, { "name": "iapSuspendAdapter", "summary": "Suspends the adapter", "description": "Suspends the adapter", "input": [ { "name": "mode", "type": "enum", "enumerals": [ "pause", "error" ], "info": "How incoming requests are handled. Defaults to 'pause'", "description": "How incoming requests are handled. Defaults to 'pause'", "schema": { "title": "mode", "type": "string" }, "required": false } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the adapter suspended status", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapSuspendAdapter" }, "task": true }, { "name": "iapUnsuspendAdapter", "summary": "Unsuspends the adapter", "description": "Unsuspends the adapter", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the adapter suspended status", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapUnsuspendAdapter" }, "task": true }, { "name": "iapGetAdapterQueue", "summary": "Return the requests that are waiting in the queue if throttling is enabled", "description": "Return the requests that are waiting in the queue if throttling is enabled", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the adapter queue", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapGetAdapterQueue" }, "task": true }, { "name": "iapFindAdapterPath", "summary": "Provides the ability to see if a particular API path is supported by the adapter", "description": "Provides the ability to see if a particular API path is supported by the adapter", "input": [ { "name": "apiPath", "type": "string", "info": "The API Path you want to check - make sure to not include base path and version", "description": "The API Path you want to check - make sure to not include base path and version", "schema": { "title": "apiPath", "type": "string" }, "required": true } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapFindAdapterPath" }, "task": true }, { "name": "iapTroubleshootAdapter", "summary": "Runs troubleshoot script for adapter", "description": "Runs troubleshoot script for adapter", "input": [ { "name": "props", "type": "object", "info": "Object containing configuration, healthcheck and auth properties {'connProps':{'host': 'api.service.com', 'base_path': '/', 'protocol': 'http', 'port': 443, 'version': 'v1'},'healthCheckEndpoint': '/healthcheck', 'auth': {'auth_method': 'no authentication', 'username': 'username', 'password': 'password'}}", "required": true, "schema": { "title": "props", "type": "object" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the test results", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapTroubleshootAdapter" }, "task": true }, { "name": "iapRunAdapterHealthcheck", "summary": "Runs healthcheck script for adapter", "description": "Runs healthcheck script for adapter", "input": [], "output": { "name": "result", "type": "boolean", "description": "Whether healthcheck passed or failed", "schema": { "title": "result", "type": "boolean" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapRunAdapterHealthcheck" }, "task": true }, { "name": "iapRunAdapterConnectivity", "summary": "Runs connectivity check script for adapter", "description": "Runs connectivity check script for adapter", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the test results", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapRunAdapterConnectivity" }, "task": true }, { "name": "iapRunAdapterBasicGet", "summary": "Runs basicGet script for adapter", "description": "Runs basicGet script for adapter", "input": [ { "name": "maxCalls", "required": false, "type": "number", "info": "How many GET endpoints to test (defaults to 5)", "schema": { "title": "maxCalls", "type": "number", "default": 5 } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the test results", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapRunAdapterBasicGet" }, "task": true }, { "name": "iapMoveAdapterEntitiesToDB", "summary": "Moves entities from an adapter into the Itential Platform database", "description": "Moves entities from an adapter into the Itential Platform database", "input": [], "output": { "name": "res", "type": "object", "description": "A JSON Object containing status, code and the response from the mongo transaction", "schema": { "title": "res", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapMoveAdapterEntitiesToDB" }, "task": true }, { "name": "iapDeactivateTasks", "summary": "Deactivate the inputted tasks", "description": "Deactivate the inputted tasks", "input": [ { "name": "tasks", "type": "array", "description": "Tasks to deactivate", "schema": { "title": "tasks", "type": "array" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing success status", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapDeactivateTasks" }, "task": true }, { "name": "iapActivateTasks", "summary": "Activate the inputted tasks", "description": "activate the inputted tasks", "input": [ { "name": "tasks", "type": "array", "description": "Tasks to activate", "schema": { "title": "tasks", "type": "array" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing success status", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapActivateTasks" }, "task": true }, { "name": "iapPopulateEntityCache", "summary": "Populate the cache for the given entities", "description": "Populate the cache for the given entities", "input": [ { "name": "entityTypes", "type": "array", "info": "the entity type(s) to populate", "required": true, "schema": { "title": "entityTypes", "type": "array" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapPopulateEntityCache" }, "task": true }, { "name": "iapRetrieveEntitiesCache", "summary": "Retrieves data from cache for specified entity type", "description": "Retrieves data from cache for specified entity type", "input": [ { "name": "entityType", "type": "string", "info": "entity of which to retrieve", "required": true, "schema": { "title": "entityType", "type": "string" } }, { "name": "options", "type": "object", "info": "settings of which data to return and how to return it", "required": false, "schema": { "title": "options", "type": "object" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapRetrieveEntitiesCache" }, "task": true }, { "name": "getDevice", "summary": "Get the Appliance", "description": "Get the Appliance", "input": [ { "name": "deviceName", "type": "string", "info": "An Appliance Device Name", "required": true, "schema": { "title": "deviceName", "type": "string" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/getDevice" }, "task": false }, { "name": "getDevicesFiltered", "summary": "Get Appliances that match the filter", "description": "Get Appliances that match the filter", "input": [ { "name": "options", "type": "object", "info": "options - e.g. { 'start': 1, 'limit': 20, 'filter': { 'name': 'abc123' } }", "required": true, "schema": { "title": "options", "type": "object" } } ], "output": { "name": "result", "type": "array", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "array" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/getDevicesFiltered" }, "task": false }, { "name": "isAlive", "summary": "Checks the status for the provided Appliance", "description": "Checks the status for the provided Appliance", "input": [ { "name": "deviceName", "type": "string", "info": "An Appliance Device Name", "required": true, "schema": { "title": "deviceName", "type": "string" } } ], "output": { "name": "result", "type": "boolean", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "boolean" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/isAlive" }, "task": false }, { "name": "getConfig", "summary": "Gets a config for the provided Appliance", "description": "Gets a config for the provided Appliance", "input": [ { "name": "deviceName", "type": "string", "info": "An Appliance Device Name", "required": true, "schema": { "title": "deviceName", "type": "string" } }, { "name": "format", "type": "string", "info": "The format to be returned - this is ignored as we always return json", "required": false, "schema": { "title": "format", "type": "string" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/getConfig" }, "task": false }, { "name": "iapGetDeviceCount", "summary": "Gets a device count from the system", "description": "Gets a device count from the system", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapGetDeviceCount" }, "task": false }, { "name": "iapExpandedGenericAdapterRequest", "summary": "Makes the requested generic call with additional options", "description": "Makes the requested generic call with additional options via metadata", "input": [ { "name": "metadata", "type": "object", "info": "metadata for the call (optional)", "description": "metadata for the call - allows for many enhancements (optional)", "schema": { "title": "metadata", "type": "object" }, "required": false }, { "name": "uriPath", "type": "string", "info": "the path of the api call - do not include the host, port, base path or version", "description": "the path of the api call", "schema": { "title": "uriPath", "type": "string" }, "required": false }, { "name": "restMethod", "type": "string", "info": "the rest method (GET, POST, PUT, PATCH, DELETE)", "description": "the rest method (GET, POST, PUT, PATCH, DELETE)", "schema": { "title": "restMethod", "type": "string" }, "required": false }, { "name": "pathVars", "type": "object", "info": "the parameters to be put within the url path (optional)", "description": "the parameters to be put within the url path (optional)", "schema": { "title": "pathVars", "type": "object" }, "required": false }, { "name": "queryData", "type": "object", "info": "the query parameters to be put on the url (optional)", "description": "the query parameters to be put on the url (optional)", "schema": { "title": "queryData", "type": "object" }, "required": false }, { "name": "requestBody", "type": "object", "info": "the payload to be sent with the request (optional)", "description": "the payload to be sent with the request (optional)", "schema": { "title": "requestBody", "type": "object" }, "required": false }, { "name": "addlHeaders", "type": "object", "info": "additional headers to be put on the call (optional)", "description": "additional headers to be put on the call (optional)", "schema": { "title": "addlHeaders", "type": "object" }, "required": false } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapExpandedGenericAdapterRequest" }, "task": true }, { "name": "genericAdapterRequest", "summary": "Makes the requested generic call", "description": "Makes the requested generic call", "input": [ { "name": "uriPath", "type": "string", "info": "the path of the api call - do not include the host, port, base path or version", "description": "the path of the api call", "schema": { "title": "uriPath", "type": "string" }, "required": true }, { "name": "restMethod", "type": "string", "info": "the rest method (GET, POST, PUT, PATCH, DELETE)", "description": "the rest method (GET, POST, PUT, PATCH, DELETE)", "schema": { "title": "restMethod", "type": "string" }, "required": true }, { "name": "queryData", "type": "object", "info": "the query parameters to be put on the url (optional)", "description": "the query parameters to be put on the url (optional)", "schema": { "title": "queryData", "type": "object" }, "required": false }, { "name": "requestBody", "type": "object", "info": "the payload to be sent with the request (optional)", "description": "the payload to be sent with the request (optional)", "schema": { "title": "requestBody", "type": "object" }, "required": false }, { "name": "addlHeaders", "type": "object", "info": "additional headers to be put on the call (optional)", "description": "additional headers to be put on the call (optional)", "schema": { "title": "addlHeaders", "type": "object" }, "required": false } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/genericAdapterRequest" }, "task": true }, { "name": "genericAdapterRequestNoBasePath", "summary": "Makes the requested generic call", "description": "Makes the requested generic call", "input": [ { "name": "uriPath", "type": "string", "info": "the path of the api call - do not include the host, port, base path or version", "description": "the path of the api call", "schema": { "title": "uriPath", "type": "string" }, "required": true }, { "name": "restMethod", "type": "string", "info": "the rest method (GET, POST, PUT, PATCH, DELETE)", "description": "the rest method (GET, POST, PUT, PATCH, DELETE)", "schema": { "title": "restMethod", "type": "string" }, "required": true }, { "name": "queryData", "type": "object", "info": "the query parameters to be put on the url (optional)", "description": "the query parameters to be put on the url (optional)", "schema": { "title": "queryData", "type": "object" }, "required": false }, { "name": "requestBody", "type": "object", "info": "the payload to be sent with the request (optional)", "description": "the payload to be sent with the request (optional)", "schema": { "title": "requestBody", "type": "object" }, "required": false }, { "name": "addlHeaders", "type": "object", "info": "additional headers to be put on the call (optional)", "description": "additional headers to be put on the call (optional)", "schema": { "title": "addlHeaders", "type": "object" }, "required": false } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/genericAdapterRequestNoBasePath" }, "task": true }, { "name": "iapRunAdapterLint", "summary": "Run the adapter lint script to return the results", "description": "Run the adapter lint script to return the results", "input": [], "output": { "name": "result", "type": "string", "description": "A string containing the run results", "schema": { "title": "result", "type": "string" } }, "roles": [ "admin" ], "route": { "verb": "GET", "path": "/iapRunAdapterLint" }, "task": true }, { "name": "iapRunAdapterTests", "summary": "Run the adapter test scripts (baseunit and unit) to return the results", "description": "Run the adapter test scripts (baseunit and unit) to return the results", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "GET", "path": "/iapRunAdapterTests" }, "task": true }, { "name": "iapGetAdapterInventory", "summary": "Provide inventory information abbout the adapter", "description": "Provide inventory information abbout the adapter", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "GET", "path": "/iapGetAdapterInventory" }, "task": true }, { "name": "operationsList", "summary": "Gets a list of compute operations.", "description": "Gets a list of compute operations.", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "description": "The List Compute Operation operation response.", "properties": { "value": { "description": "The list of compute operations", "items": { "description": "Describes the properties of a Compute Operation value.", "properties": { "display": { "description": "Describes the properties of a Compute Operation Value Display.", "x-ms-client-flatten": true, "body": { "description": "Describes the properties of a Compute Operation Value Display.", "properties": { "description": { "description": "The description of the operation.", "readOnly": true, "type": "string" }, "operation": { "description": "The display name of the compute operation.", "readOnly": true, "type": "string" }, "provider": { "description": "The resource provider for the operation.", "readOnly": true, "type": "string" }, "resource": { "description": "The display name of the resource the operation applies to.", "readOnly": true, "type": "string" } } } }, "name": { "description": "The name of the compute operation.", "readOnly": true, "type": "string" }, "origin": { "description": "The origin of the compute operation.", "readOnly": true, "type": "string" } } }, "readOnly": true, "type": "array" } } } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/operationsList" }, "task": true }, { "name": "managedClustersList", "summary": "Gets a list of managed clusters in the specified subscription.", "description": "Gets a list of managed clusters in the specified subscription. The operation returns properties of each managed cluster.", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "description": "The response from the List Managed Clusters operation.", "properties": { "nextLink": { "description": "The URL to get the next set of managed cluster results.", "readOnly": true, "type": "string" }, "value": { "description": "The list of managed clusters.", "items": { "allOf": [ { "description": "The Resource model definition.", "properties": { "id": { "description": "Resource Id", "readOnly": true, "type": "string" }, "location": { "description": "Resource location", "type": "string", "x-ms-mutability": [ "read", "create" ] }, "name": { "description": "Resource name", "readOnly": true, "type": "string" }, "tags": { "additionalProperties": { "type": "string" }, "description": "Resource tags", "type": "object" }, "type": { "description": "Resource type", "readOnly": true, "type": "string" } }, "required": [ "location" ], "x-ms-azure-resource": true }, { "properties": { "identity": { "description": "The identity of the managed cluster, if configured.", "body": { "description": "Identity for the managed cluster.", "properties": { "principalId": { "description": "The principal id of the system assigned identity which is used by master components.", "readOnly": true, "type": "string" }, "tenantId": { "description": "The tenant id of the system assigned identity which is used by master components.", "readOnly": true, "type": "string" }, "type": { "description": "The type of identity used for the managed cluster. Type 'SystemAssigned' will use an implicitly created identity in master components and an auto-created user assigned identity in MC_ resource group in agent nodes. Type 'None' will not use MSI for the managed cluster, service principal will be used instead.", "enum": [ "SystemAssigned", "None" ], "type": "string", "x-ms-enum": { "modelAsString": false, "name": "ResourceIdentityType" } } } } }, "properties": { "description": "Properties of a managed cluster.", "x-ms-client-flatten": true, "body": { "description": "Properties of the managed cluster.", "properties": { "aadProfile": { "description": "Profile of Azure Active Directory configuration.", "body": { "description": "AADProfile specifies attributes for Azure Active Directory integration.", "properties": { "clientAppID": { "description": "The client AAD application ID.", "type": "string" }, "serverAppID": { "description": "The server AAD application ID.", "type": "string" }, "serverAppSecret": { "description": "The server AAD application secret.", "type": "string" }, "tenantID": { "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription.", "type": "string" } }, "required": [ "clientAppID", "serverAppID" ] } }, "addonProfiles": { "additionalProperties": { "description": "A Kubernetes add-on profile for a managed cluster.", "properties": { "config": { "additionalProperties": { "type": "string" }, "description": "Key-value pairs for configuring an add-on." }, "enabled": { "description": "Whether the add-on is enabled or not.", "type": "boolean" }, "identity": { "allOf": [ { "properties": { "clientId": { "description": "The client id of the user assigned identity.", "type": "string" }, "objectId": { "description": "The object id of the user assigned identity.", "type": "string" }, "resourceId": { "description": "The resource id of the user assigned identity.", "type": "string" } } } ], "description": "Information of user assigned identity used by this add-on.", "readOnly": true } }, "required": [ "enabled" ] }, "description": "Profile of managed cluster add-on." }, "agentPoolProfiles": { "description": "Properties of the agent pool.", "items": { "allOf": [ { "description": "Properties for the container service agent pool profile.", "properties": { "availabilityZones": { "description": "Availability zones for nodes. Must use VirtualMachineScaleSets AgentPoolType.", "items": { "type": "string" }, "type": "array" }, "count": { "default": 1, "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. ", "maximum": 100, "minimum": 1, "type": "integer" }, "enableAutoScaling": { "description": "Whether to enable auto-scaler", "type": "boolean" }, "enableNodePublicIP": { "description": "Enable public IP for nodes", "type": "boolean" }, "maxCount": { "description": "Maximum number of nodes for auto-scaling", "type": "integer" }, "maxPods": { "description": "Maximum number of pods that can run on a node.", "type": "integer" }, "minCount": { "description": "Minimum number of nodes for auto-scaling", "type": "integer" }, "nodeLabels": { "additionalProperties": { "type": "string" }, "description": "Agent pool node labels to be persisted across all nodes in agent pool.", "type": "object" }, "nodeTaints": { "description": "Taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule.", "items": { "type": "string" }, "type": "array" }, "orchestratorVersion": { "description": "Version of orchestrator specified when creating the managed cluster.", "type": "string" }, "osDiskSizeGB": { "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified.", "body": { "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified.", "maximum": 1023, "minimum": 0, "type": "integer" } }, "osType": { "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux.", "body": { "default": "Linux", "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux.", "enum": [ "Linux", "Windows" ], "type": "string", "x-ms-enum": { "modelAsString": true, "name": "OSType" } } }, "provisioningState": { "description": "The current deployment or provisioning state, which only appears in the response.", "readOnly": true, "type": "string" }, "scaleSetEvictionPolicy": { "description": "ScaleSetEvictionPolicy to be used to specify eviction policy for low priority virtual machine scale set. Default to Delete.", "body": { "default": "Delete", "description": "ScaleSetEvictionPolicy to be used to specify eviction policy for low priority virtual machine scale set. Default to Delete.", "enum": [ "Delete", "Deallocate" ], "type": "string", "x-ms-enum": { "modelAsString": true, "name": "ScaleSetEvictionPolicy" } } }, "scaleSetPriority": { "description": "ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular.", "body": { "default": "Regular", "description": "ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular.", "enum": [ "Low", "Regular" ], "type": "string", "x-ms-enum": { "modelAsString": true, "name": "ScaleSetPriority" } } }, "tags": { "additionalProperties": { "type": "string" }, "description": "Agent pool tags to be persisted on the agent pool virtual machine scale set.", "type": "object" }, "type": { "description": "AgentPoolType represents types of an agent pool", "body": { "description": "AgentPoolType represents types of an agent pool.", "enum": [ "VirtualMachineScaleSets", "AvailabilitySet" ], "type": "string", "x-ms-enum": { "modelAsString": true, "name": "AgentPoolType" } } }, "vmSize": { "description": "Size of agent VMs.", "body": { "description": "Size of agent VMs.", "enum": [ "Standard_A1", "Standard_A10", "Standard_A11", "Standard_A1_v2", "Standard_A2", "Standard_A2_v2", "Standard_A2m_v2", "Standard_A3", "Standard_A4", "Standard_A4_v2", "Standard_A4m_v2", "Standard_A5", "Standard_A6", "Standard_A7", "Standard_A8", "Standard_A8_v2", "Standard_A8m_v2", "Standard_A9", "Standard_B2ms", "Standard_B2s", "Standard_B4ms", "Standard_B8ms", "Standard_D1", "Standard_D11", "Standard_D11_v2", "Standard_D11_v2_Promo", "Standard_D12",