diff --git a/sdk/containerservice/azure-mgmt-containerservice/CHANGELOG.md b/sdk/containerservice/azure-mgmt-containerservice/CHANGELOG.md index 13a7f376cbe4..b621dd31746d 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/CHANGELOG.md +++ b/sdk/containerservice/azure-mgmt-containerservice/CHANGELOG.md @@ -1,5 +1,17 @@ # Release History +## 9.1.0 (2020-06-03) + +**Features** + + - Model AgentPool has a new parameter node_image_version + - Model AgentPool has a new parameter upgrade_settings + - Model AgentPoolUpgradeProfile has a new parameter latest_node_image_version + - Model ManagedClusterAgentPoolProfile has a new parameter node_image_version + - Model ManagedClusterAgentPoolProfile has a new parameter upgrade_settings + - Model ManagedClusterAgentPoolProfileProperties has a new parameter node_image_version + - Model ManagedClusterAgentPoolProfileProperties has a new parameter upgrade_settings + ## 9.0.1 (2020-04-09) **Bugfixes** diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/_container_service_client.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/_container_service_client.py index 616c4879aa2c..aeb1efb5fb01 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/_container_service_client.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/_container_service_client.py @@ -46,7 +46,7 @@ class ContainerServiceClient(MultiApiClientMixin, SDKClient): :type profile: azure.profiles.KnownProfiles """ - DEFAULT_API_VERSION = '2020-03-01' + DEFAULT_API_VERSION = '2020-04-01' _PROFILE_TAG = "azure.mgmt.containerservice.ContainerServiceClient" LATEST_PROFILE = ProfileDefinition({ _PROFILE_TAG: { @@ -90,6 +90,7 @@ def models(cls, api_version=DEFAULT_API_VERSION): * 2020-01-01: :mod:`v2020_01_01.models` * 2020-02-01: :mod:`v2020_02_01.models` * 2020-03-01: :mod:`v2020_03_01.models` + * 2020-04-01: :mod:`v2020_04_01.models` """ if api_version == '2017-07-01': from .v2017_07_01 import models @@ -139,6 +140,9 @@ def models(cls, api_version=DEFAULT_API_VERSION): elif api_version == '2020-03-01': from .v2020_03_01 import models return models + elif api_version == '2020-04-01': + from .v2020_04_01 import models + return models raise NotImplementedError("APIVersion {} is not available".format(api_version)) @property @@ -154,6 +158,7 @@ def agent_pools(self): * 2020-01-01: :class:`AgentPoolsOperations` * 2020-02-01: :class:`AgentPoolsOperations` * 2020-03-01: :class:`AgentPoolsOperations` + * 2020-04-01: :class:`AgentPoolsOperations` """ api_version = self._get_api_version('agent_pools') if api_version == '2019-02-01': @@ -174,6 +179,8 @@ def agent_pools(self): from .v2020_02_01.operations import AgentPoolsOperations as OperationClass elif api_version == '2020-03-01': from .v2020_03_01.operations import AgentPoolsOperations as OperationClass + elif api_version == '2020-04-01': + from .v2020_04_01.operations import AgentPoolsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -206,6 +213,7 @@ def managed_clusters(self): * 2020-01-01: :class:`ManagedClustersOperations` * 2020-02-01: :class:`ManagedClustersOperations` * 2020-03-01: :class:`ManagedClustersOperations` + * 2020-04-01: :class:`ManagedClustersOperations` """ api_version = self._get_api_version('managed_clusters') if api_version == '2018-03-31': @@ -230,6 +238,8 @@ def managed_clusters(self): from .v2020_02_01.operations import ManagedClustersOperations as OperationClass elif api_version == '2020-03-01': from .v2020_03_01.operations import ManagedClustersOperations as OperationClass + elif api_version == '2020-04-01': + from .v2020_04_01.operations import ManagedClustersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -271,6 +281,7 @@ def operations(self): * 2020-01-01: :class:`Operations` * 2020-02-01: :class:`Operations` * 2020-03-01: :class:`Operations` + * 2020-04-01: :class:`Operations` """ api_version = self._get_api_version('operations') if api_version == '2018-03-31': @@ -295,6 +306,8 @@ def operations(self): from .v2020_02_01.operations import Operations as OperationClass elif api_version == '2020-03-01': from .v2020_03_01.operations import Operations as OperationClass + elif api_version == '2020-04-01': + from .v2020_04_01.operations import Operations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/models.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/models.py index d5a885e72e9b..493634cd5738 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/models.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/models.py @@ -6,4 +6,4 @@ # -------------------------------------------------------------------------- from .v2017_07_01.models import * from .v2019_04_30.models import * -from .v2020_03_01.models import * +from .v2020_04_01.models import * diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_11_01/models/_models.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_11_01/models/_models.py index a27508f5c7b7..2df38c2edda7 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_11_01/models/_models.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_11_01/models/_models.py @@ -53,8 +53,6 @@ class AgentPool(SubResource): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - :ivar id: Resource ID. :vartype id: str :ivar name: The name of the resource that is unique within a resource @@ -62,25 +60,25 @@ class AgentPool(SubResource): :vartype name: str :ivar type: Resource type :vartype type: str - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -180,8 +178,6 @@ class AgentPool(SubResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -212,7 +208,7 @@ class AgentPool(SubResource): def __init__(self, **kwargs): super(AgentPool, self).__init__(**kwargs) - self.count = kwargs.get('count', 1) + self.count = kwargs.get('count', None) self.vm_size = kwargs.get('vm_size', None) self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) @@ -1154,27 +1150,25 @@ class ManagedClusterAgentPoolProfileProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1271,8 +1265,6 @@ class ManagedClusterAgentPoolProfileProperties(Model): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -1300,7 +1292,7 @@ class ManagedClusterAgentPoolProfileProperties(Model): def __init__(self, **kwargs): super(ManagedClusterAgentPoolProfileProperties, self).__init__(**kwargs) - self.count = kwargs.get('count', 1) + self.count = kwargs.get('count', None) self.vm_size = kwargs.get('vm_size', None) self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) @@ -1329,25 +1321,25 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): All required parameters must be populated in order to send to Azure. - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1447,8 +1439,6 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, 'name': {'required': True, 'pattern': r'^[a-z][a-z0-9]{0,11}$'}, } diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_11_01/models/_models_py3.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_11_01/models/_models_py3.py index 37afc0040d71..2e3a79c98463 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_11_01/models/_models_py3.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_11_01/models/_models_py3.py @@ -53,8 +53,6 @@ class AgentPool(SubResource): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - :ivar id: Resource ID. :vartype id: str :ivar name: The name of the resource that is unique within a resource @@ -62,25 +60,25 @@ class AgentPool(SubResource): :vartype name: str :ivar type: Resource type :vartype type: str - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -180,8 +178,6 @@ class AgentPool(SubResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -210,7 +206,7 @@ class AgentPool(SubResource): 'node_taints': {'key': 'properties.nodeTaints', 'type': '[str]'}, } - def __init__(self, *, vm_size, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, agent_pool_type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, agent_pool_type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(AgentPool, self).__init__(**kwargs) self.count = count self.vm_size = vm_size @@ -1154,27 +1150,25 @@ class ManagedClusterAgentPoolProfileProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1271,8 +1265,6 @@ class ManagedClusterAgentPoolProfileProperties(Model): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -1298,7 +1290,7 @@ class ManagedClusterAgentPoolProfileProperties(Model): 'node_taints': {'key': 'nodeTaints', 'type': '[str]'}, } - def __init__(self, *, vm_size, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(ManagedClusterAgentPoolProfileProperties, self).__init__(**kwargs) self.count = count self.vm_size = vm_size @@ -1329,25 +1321,25 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): All required parameters must be populated in order to send to Azure. - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1447,8 +1439,6 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, 'name': {'required': True, 'pattern': r'^[a-z][a-z0-9]{0,11}$'}, } @@ -1476,7 +1466,7 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): 'name': {'key': 'name', 'type': 'str'}, } - def __init__(self, *, vm_size, name: str, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, name: str, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(ManagedClusterAgentPoolProfile, self).__init__(count=count, vm_size=vm_size, os_disk_size_gb=os_disk_size_gb, vnet_subnet_id=vnet_subnet_id, max_pods=max_pods, os_type=os_type, max_count=max_count, min_count=min_count, enable_auto_scaling=enable_auto_scaling, type=type, orchestrator_version=orchestrator_version, availability_zones=availability_zones, enable_node_public_ip=enable_node_public_ip, scale_set_priority=scale_set_priority, scale_set_eviction_policy=scale_set_eviction_policy, tags=tags, node_labels=node_labels, node_taints=node_taints, **kwargs) self.name = name diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_01_01/models/_models.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_01_01/models/_models.py index f611ec528ca5..f377bab2a364 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_01_01/models/_models.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_01_01/models/_models.py @@ -53,8 +53,6 @@ class AgentPool(SubResource): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - :ivar id: Resource ID. :vartype id: str :ivar name: The name of the resource that is unique within a resource @@ -62,25 +60,25 @@ class AgentPool(SubResource): :vartype name: str :ivar type: Resource type :vartype type: str - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -180,8 +178,6 @@ class AgentPool(SubResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -212,7 +208,7 @@ class AgentPool(SubResource): def __init__(self, **kwargs): super(AgentPool, self).__init__(**kwargs) - self.count = kwargs.get('count', 1) + self.count = kwargs.get('count', None) self.vm_size = kwargs.get('vm_size', None) self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) @@ -1159,27 +1155,25 @@ class ManagedClusterAgentPoolProfileProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1276,8 +1270,6 @@ class ManagedClusterAgentPoolProfileProperties(Model): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -1305,7 +1297,7 @@ class ManagedClusterAgentPoolProfileProperties(Model): def __init__(self, **kwargs): super(ManagedClusterAgentPoolProfileProperties, self).__init__(**kwargs) - self.count = kwargs.get('count', 1) + self.count = kwargs.get('count', None) self.vm_size = kwargs.get('vm_size', None) self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) @@ -1334,25 +1326,25 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): All required parameters must be populated in order to send to Azure. - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1452,8 +1444,6 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, 'name': {'required': True, 'pattern': r'^[a-z][a-z0-9]{0,11}$'}, } diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_01_01/models/_models_py3.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_01_01/models/_models_py3.py index a22da338d847..da3ad0d5a52b 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_01_01/models/_models_py3.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_01_01/models/_models_py3.py @@ -53,8 +53,6 @@ class AgentPool(SubResource): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - :ivar id: Resource ID. :vartype id: str :ivar name: The name of the resource that is unique within a resource @@ -62,25 +60,25 @@ class AgentPool(SubResource): :vartype name: str :ivar type: Resource type :vartype type: str - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -180,8 +178,6 @@ class AgentPool(SubResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -210,7 +206,7 @@ class AgentPool(SubResource): 'node_taints': {'key': 'properties.nodeTaints', 'type': '[str]'}, } - def __init__(self, *, vm_size, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, agent_pool_type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, agent_pool_type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(AgentPool, self).__init__(**kwargs) self.count = count self.vm_size = vm_size @@ -1159,27 +1155,25 @@ class ManagedClusterAgentPoolProfileProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1276,8 +1270,6 @@ class ManagedClusterAgentPoolProfileProperties(Model): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -1303,7 +1295,7 @@ class ManagedClusterAgentPoolProfileProperties(Model): 'node_taints': {'key': 'nodeTaints', 'type': '[str]'}, } - def __init__(self, *, vm_size, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(ManagedClusterAgentPoolProfileProperties, self).__init__(**kwargs) self.count = count self.vm_size = vm_size @@ -1334,25 +1326,25 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): All required parameters must be populated in order to send to Azure. - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1452,8 +1444,6 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, 'name': {'required': True, 'pattern': r'^[a-z][a-z0-9]{0,11}$'}, } @@ -1481,7 +1471,7 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): 'name': {'key': 'name', 'type': 'str'}, } - def __init__(self, *, vm_size, name: str, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, name: str, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(ManagedClusterAgentPoolProfile, self).__init__(count=count, vm_size=vm_size, os_disk_size_gb=os_disk_size_gb, vnet_subnet_id=vnet_subnet_id, max_pods=max_pods, os_type=os_type, max_count=max_count, min_count=min_count, enable_auto_scaling=enable_auto_scaling, type=type, orchestrator_version=orchestrator_version, availability_zones=availability_zones, enable_node_public_ip=enable_node_public_ip, scale_set_priority=scale_set_priority, scale_set_eviction_policy=scale_set_eviction_policy, tags=tags, node_labels=node_labels, node_taints=node_taints, **kwargs) self.name = name diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_02_01/models/_models.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_02_01/models/_models.py index a16c4db34f46..5af55a1fe7e6 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_02_01/models/_models.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_02_01/models/_models.py @@ -53,8 +53,6 @@ class AgentPool(SubResource): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - :ivar id: Resource ID. :vartype id: str :ivar name: The name of the resource that is unique within a resource @@ -62,25 +60,25 @@ class AgentPool(SubResource): :vartype name: str :ivar type: Resource type :vartype type: str - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -185,8 +183,6 @@ class AgentPool(SubResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -218,7 +214,7 @@ class AgentPool(SubResource): def __init__(self, **kwargs): super(AgentPool, self).__init__(**kwargs) - self.count = kwargs.get('count', 1) + self.count = kwargs.get('count', None) self.vm_size = kwargs.get('vm_size', None) self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) @@ -1178,27 +1174,25 @@ class ManagedClusterAgentPoolProfileProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1300,8 +1294,6 @@ class ManagedClusterAgentPoolProfileProperties(Model): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -1330,7 +1322,7 @@ class ManagedClusterAgentPoolProfileProperties(Model): def __init__(self, **kwargs): super(ManagedClusterAgentPoolProfileProperties, self).__init__(**kwargs) - self.count = kwargs.get('count', 1) + self.count = kwargs.get('count', None) self.vm_size = kwargs.get('vm_size', None) self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) @@ -1360,25 +1352,25 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): All required parameters must be populated in order to send to Azure. - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1483,8 +1475,6 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, 'name': {'required': True, 'pattern': r'^[a-z][a-z0-9]{0,11}$'}, } diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_02_01/models/_models_py3.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_02_01/models/_models_py3.py index 62c7e7acc10f..a9589654caef 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_02_01/models/_models_py3.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_02_01/models/_models_py3.py @@ -53,8 +53,6 @@ class AgentPool(SubResource): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - :ivar id: Resource ID. :vartype id: str :ivar name: The name of the resource that is unique within a resource @@ -62,25 +60,25 @@ class AgentPool(SubResource): :vartype name: str :ivar type: Resource type :vartype type: str - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -185,8 +183,6 @@ class AgentPool(SubResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -216,7 +212,7 @@ class AgentPool(SubResource): 'node_taints': {'key': 'properties.nodeTaints', 'type': '[str]'}, } - def __init__(self, *, vm_size, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, agent_pool_type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, agent_pool_type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(AgentPool, self).__init__(**kwargs) self.count = count self.vm_size = vm_size @@ -1178,27 +1174,25 @@ class ManagedClusterAgentPoolProfileProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1300,8 +1294,6 @@ class ManagedClusterAgentPoolProfileProperties(Model): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -1328,7 +1320,7 @@ class ManagedClusterAgentPoolProfileProperties(Model): 'node_taints': {'key': 'nodeTaints', 'type': '[str]'}, } - def __init__(self, *, vm_size, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(ManagedClusterAgentPoolProfileProperties, self).__init__(**kwargs) self.count = count self.vm_size = vm_size @@ -1360,25 +1352,25 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): All required parameters must be populated in order to send to Azure. - :param count: Required. 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. . Default value: 1 . + :param count: 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. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1483,8 +1475,6 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 1}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, 'name': {'required': True, 'pattern': r'^[a-z][a-z0-9]{0,11}$'}, } @@ -1513,7 +1503,7 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): 'name': {'key': 'name', 'type': 'str'}, } - def __init__(self, *, vm_size, name: str, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, name: str, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(ManagedClusterAgentPoolProfile, self).__init__(count=count, vm_size=vm_size, os_disk_size_gb=os_disk_size_gb, vnet_subnet_id=vnet_subnet_id, max_pods=max_pods, os_type=os_type, max_count=max_count, min_count=min_count, enable_auto_scaling=enable_auto_scaling, type=type, orchestrator_version=orchestrator_version, availability_zones=availability_zones, enable_node_public_ip=enable_node_public_ip, scale_set_priority=scale_set_priority, scale_set_eviction_policy=scale_set_eviction_policy, spot_max_price=spot_max_price, tags=tags, node_labels=node_labels, node_taints=node_taints, **kwargs) self.name = name diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_03_01/models/_models.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_03_01/models/_models.py index 92c24b124594..9a4088880fbf 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_03_01/models/_models.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_03_01/models/_models.py @@ -53,8 +53,6 @@ class AgentPool(SubResource): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - :ivar id: Resource ID. :vartype id: str :ivar name: The name of the resource that is unique within a resource @@ -62,25 +60,26 @@ class AgentPool(SubResource): :vartype name: str :ivar type: Resource type :vartype type: str - :param count: Required. Number of agents (VMs) to host docker containers. - Allowed values must be in the range of 0 to 100 (inclusive). The default - value is 1. . Default value: 1 . + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -189,8 +188,6 @@ class AgentPool(SubResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'count': {'required': True, 'maximum': 100, 'minimum': 0}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -223,7 +220,7 @@ class AgentPool(SubResource): def __init__(self, **kwargs): super(AgentPool, self).__init__(**kwargs) - self.count = kwargs.get('count', 1) + self.count = kwargs.get('count', None) self.vm_size = kwargs.get('vm_size', None) self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) @@ -1191,27 +1188,26 @@ class ManagedClusterAgentPoolProfileProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - - :param count: Required. Number of agents (VMs) to host docker containers. - Allowed values must be in the range of 0 to 100 (inclusive). The default - value is 1. . Default value: 1 . + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1317,8 +1313,6 @@ class ManagedClusterAgentPoolProfileProperties(Model): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 0}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -1348,7 +1342,7 @@ class ManagedClusterAgentPoolProfileProperties(Model): def __init__(self, **kwargs): super(ManagedClusterAgentPoolProfileProperties, self).__init__(**kwargs) - self.count = kwargs.get('count', 1) + self.count = kwargs.get('count', None) self.vm_size = kwargs.get('vm_size', None) self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) @@ -1379,25 +1373,26 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): All required parameters must be populated in order to send to Azure. - :param count: Required. Number of agents (VMs) to host docker containers. - Allowed values must be in the range of 0 to 100 (inclusive). The default - value is 1. . Default value: 1 . + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1506,8 +1501,6 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 0}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, 'name': {'required': True, 'pattern': r'^[a-z][a-z0-9]{0,11}$'}, } diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_03_01/models/_models_py3.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_03_01/models/_models_py3.py index ca7a88f2bdca..e2185e45f7e7 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_03_01/models/_models_py3.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_03_01/models/_models_py3.py @@ -53,8 +53,6 @@ class AgentPool(SubResource): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - :ivar id: Resource ID. :vartype id: str :ivar name: The name of the resource that is unique within a resource @@ -62,25 +60,26 @@ class AgentPool(SubResource): :vartype name: str :ivar type: Resource type :vartype type: str - :param count: Required. Number of agents (VMs) to host docker containers. - Allowed values must be in the range of 0 to 100 (inclusive). The default - value is 1. . Default value: 1 . + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -189,8 +188,6 @@ class AgentPool(SubResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'count': {'required': True, 'maximum': 100, 'minimum': 0}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -221,7 +218,7 @@ class AgentPool(SubResource): 'node_taints': {'key': 'properties.nodeTaints', 'type': '[str]'}, } - def __init__(self, *, vm_size, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, agent_pool_type=None, mode=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, agent_pool_type=None, mode=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(AgentPool, self).__init__(**kwargs) self.count = count self.vm_size = vm_size @@ -1191,27 +1188,26 @@ class ManagedClusterAgentPoolProfileProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to Azure. - - :param count: Required. Number of agents (VMs) to host docker containers. - Allowed values must be in the range of 0 to 100 (inclusive). The default - value is 1. . Default value: 1 . + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1317,8 +1313,6 @@ class ManagedClusterAgentPoolProfileProperties(Model): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 0}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -1346,7 +1340,7 @@ class ManagedClusterAgentPoolProfileProperties(Model): 'node_taints': {'key': 'nodeTaints', 'type': '[str]'}, } - def __init__(self, *, vm_size, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, mode=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, mode=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(ManagedClusterAgentPoolProfileProperties, self).__init__(**kwargs) self.count = count self.vm_size = vm_size @@ -1379,25 +1373,26 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): All required parameters must be populated in order to send to Azure. - :param count: Required. Number of agents (VMs) to host docker containers. - Allowed values must be in the range of 0 to 100 (inclusive). The default - value is 1. . Default value: 1 . + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. :type count: int - :param vm_size: Required. Size of agent VMs. Possible values include: - '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', - 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', - 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', - 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', - 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', - 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', - 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', - 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', @@ -1506,8 +1501,6 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): """ _validation = { - 'count': {'required': True, 'maximum': 100, 'minimum': 0}, - 'vm_size': {'required': True}, 'provisioning_state': {'readonly': True}, 'name': {'required': True, 'pattern': r'^[a-z][a-z0-9]{0,11}$'}, } @@ -1537,7 +1530,7 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): 'name': {'key': 'name', 'type': 'str'}, } - def __init__(self, *, vm_size, name: str, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, mode=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + def __init__(self, *, name: str, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, mode=None, orchestrator_version: str=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: super(ManagedClusterAgentPoolProfile, self).__init__(count=count, vm_size=vm_size, os_disk_size_gb=os_disk_size_gb, vnet_subnet_id=vnet_subnet_id, max_pods=max_pods, os_type=os_type, max_count=max_count, min_count=min_count, enable_auto_scaling=enable_auto_scaling, type=type, mode=mode, orchestrator_version=orchestrator_version, availability_zones=availability_zones, enable_node_public_ip=enable_node_public_ip, scale_set_priority=scale_set_priority, scale_set_eviction_policy=scale_set_eviction_policy, spot_max_price=spot_max_price, tags=tags, node_labels=node_labels, node_taints=node_taints, **kwargs) self.name = name diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/__init__.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/__init__.py new file mode 100644 index 000000000000..b7cb9d01cb16 --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/__init__.py @@ -0,0 +1,19 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from ._configuration import ContainerServiceClientConfiguration +from ._container_service_client import ContainerServiceClient +__all__ = ['ContainerServiceClient', 'ContainerServiceClientConfiguration'] + +from .version import VERSION + +__version__ = VERSION + diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/_configuration.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/_configuration.py new file mode 100644 index 000000000000..e94fbc7005d9 --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/_configuration.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- +from msrestazure import AzureConfiguration + +from .version import VERSION + + +class ContainerServiceClientConfiguration(AzureConfiguration): + """Configuration for ContainerServiceClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Subscription credentials which uniquely identify + Microsoft Azure subscription. The subscription ID forms part of the URI + for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(ContainerServiceClientConfiguration, self).__init__(base_url) + + # Starting Autorest.Python 4.0.64, make connection pool activated by default + self.keep_alive = True + + self.add_user_agent('azure-mgmt-containerservice/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/_container_service_client.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/_container_service_client.py new file mode 100644 index 000000000000..152f8b782cde --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/_container_service_client.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.service_client import SDKClient +from msrest import Serializer, Deserializer + +from ._configuration import ContainerServiceClientConfiguration +from .operations import Operations +from .operations import ManagedClustersOperations +from .operations import AgentPoolsOperations +from . import models + + +class ContainerServiceClient(SDKClient): + """The Container Service Client. + + :ivar config: Configuration for client. + :vartype config: ContainerServiceClientConfiguration + + :ivar operations: Operations operations + :vartype operations: azure.mgmt.containerservice.v2020_04_01.operations.Operations + :ivar managed_clusters: ManagedClusters operations + :vartype managed_clusters: azure.mgmt.containerservice.v2020_04_01.operations.ManagedClustersOperations + :ivar agent_pools: AgentPools operations + :vartype agent_pools: azure.mgmt.containerservice.v2020_04_01.operations.AgentPoolsOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Subscription credentials which uniquely identify + Microsoft Azure subscription. The subscription ID forms part of the URI + for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = ContainerServiceClientConfiguration(credentials, subscription_id, base_url) + super(ContainerServiceClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2020-04-01' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) + self.managed_clusters = ManagedClustersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.agent_pools = AgentPoolsOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/__init__.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/__init__.py new file mode 100644 index 000000000000..f8c324d80298 --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/__init__.py @@ -0,0 +1,180 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +try: + from ._models_py3 import AgentPool + from ._models_py3 import AgentPoolAvailableVersions + from ._models_py3 import AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem + from ._models_py3 import AgentPoolUpgradeProfile + from ._models_py3 import AgentPoolUpgradeProfilePropertiesUpgradesItem + from ._models_py3 import AgentPoolUpgradeSettings + from ._models_py3 import ContainerServiceDiagnosticsProfile + from ._models_py3 import ContainerServiceLinuxProfile + from ._models_py3 import ContainerServiceMasterProfile + from ._models_py3 import ContainerServiceNetworkProfile + from ._models_py3 import ContainerServiceSshConfiguration + from ._models_py3 import ContainerServiceSshPublicKey + from ._models_py3 import ContainerServiceVMDiagnostics + from ._models_py3 import CredentialResult + from ._models_py3 import CredentialResults + from ._models_py3 import ManagedCluster + from ._models_py3 import ManagedClusterAADProfile + from ._models_py3 import ManagedClusterAccessProfile + from ._models_py3 import ManagedClusterAddonProfile + from ._models_py3 import ManagedClusterAddonProfileIdentity + from ._models_py3 import ManagedClusterAgentPoolProfile + from ._models_py3 import ManagedClusterAgentPoolProfileProperties + from ._models_py3 import ManagedClusterAPIServerAccessProfile + from ._models_py3 import ManagedClusterIdentity + from ._models_py3 import ManagedClusterLoadBalancerProfile + from ._models_py3 import ManagedClusterLoadBalancerProfileManagedOutboundIPs + from ._models_py3 import ManagedClusterLoadBalancerProfileOutboundIPPrefixes + from ._models_py3 import ManagedClusterLoadBalancerProfileOutboundIPs + from ._models_py3 import ManagedClusterPoolUpgradeProfile + from ._models_py3 import ManagedClusterPoolUpgradeProfileUpgradesItem + from ._models_py3 import ManagedClusterPropertiesAutoScalerProfile + from ._models_py3 import ManagedClusterPropertiesIdentityProfileValue + from ._models_py3 import ManagedClusterServicePrincipalProfile + from ._models_py3 import ManagedClusterSKU + from ._models_py3 import ManagedClusterUpgradeProfile + from ._models_py3 import ManagedClusterWindowsProfile + from ._models_py3 import OperationValue + from ._models_py3 import Resource + from ._models_py3 import ResourceReference + from ._models_py3 import SubResource + from ._models_py3 import TagsObject + from ._models_py3 import UserAssignedIdentity +except (SyntaxError, ImportError): + from ._models import AgentPool + from ._models import AgentPoolAvailableVersions + from ._models import AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem + from ._models import AgentPoolUpgradeProfile + from ._models import AgentPoolUpgradeProfilePropertiesUpgradesItem + from ._models import AgentPoolUpgradeSettings + from ._models import ContainerServiceDiagnosticsProfile + from ._models import ContainerServiceLinuxProfile + from ._models import ContainerServiceMasterProfile + from ._models import ContainerServiceNetworkProfile + from ._models import ContainerServiceSshConfiguration + from ._models import ContainerServiceSshPublicKey + from ._models import ContainerServiceVMDiagnostics + from ._models import CredentialResult + from ._models import CredentialResults + from ._models import ManagedCluster + from ._models import ManagedClusterAADProfile + from ._models import ManagedClusterAccessProfile + from ._models import ManagedClusterAddonProfile + from ._models import ManagedClusterAddonProfileIdentity + from ._models import ManagedClusterAgentPoolProfile + from ._models import ManagedClusterAgentPoolProfileProperties + from ._models import ManagedClusterAPIServerAccessProfile + from ._models import ManagedClusterIdentity + from ._models import ManagedClusterLoadBalancerProfile + from ._models import ManagedClusterLoadBalancerProfileManagedOutboundIPs + from ._models import ManagedClusterLoadBalancerProfileOutboundIPPrefixes + from ._models import ManagedClusterLoadBalancerProfileOutboundIPs + from ._models import ManagedClusterPoolUpgradeProfile + from ._models import ManagedClusterPoolUpgradeProfileUpgradesItem + from ._models import ManagedClusterPropertiesAutoScalerProfile + from ._models import ManagedClusterPropertiesIdentityProfileValue + from ._models import ManagedClusterServicePrincipalProfile + from ._models import ManagedClusterSKU + from ._models import ManagedClusterUpgradeProfile + from ._models import ManagedClusterWindowsProfile + from ._models import OperationValue + from ._models import Resource + from ._models import ResourceReference + from ._models import SubResource + from ._models import TagsObject + from ._models import UserAssignedIdentity +from ._paged_models import AgentPoolPaged +from ._paged_models import ManagedClusterPaged +from ._paged_models import OperationValuePaged +from ._container_service_client_enums import ( + ContainerServiceStorageProfileTypes, + ContainerServiceVMSizeTypes, + OSType, + AgentPoolType, + AgentPoolMode, + ScaleSetPriority, + ScaleSetEvictionPolicy, + NetworkPlugin, + NetworkPolicy, + NetworkMode, + OutboundType, + LoadBalancerSku, + ResourceIdentityType, + ManagedClusterSKUName, + ManagedClusterSKUTier, +) + +__all__ = [ + 'AgentPool', + 'AgentPoolAvailableVersions', + 'AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem', + 'AgentPoolUpgradeProfile', + 'AgentPoolUpgradeProfilePropertiesUpgradesItem', + 'AgentPoolUpgradeSettings', + 'ContainerServiceDiagnosticsProfile', + 'ContainerServiceLinuxProfile', + 'ContainerServiceMasterProfile', + 'ContainerServiceNetworkProfile', + 'ContainerServiceSshConfiguration', + 'ContainerServiceSshPublicKey', + 'ContainerServiceVMDiagnostics', + 'CredentialResult', + 'CredentialResults', + 'ManagedCluster', + 'ManagedClusterAADProfile', + 'ManagedClusterAccessProfile', + 'ManagedClusterAddonProfile', + 'ManagedClusterAddonProfileIdentity', + 'ManagedClusterAgentPoolProfile', + 'ManagedClusterAgentPoolProfileProperties', + 'ManagedClusterAPIServerAccessProfile', + 'ManagedClusterIdentity', + 'ManagedClusterLoadBalancerProfile', + 'ManagedClusterLoadBalancerProfileManagedOutboundIPs', + 'ManagedClusterLoadBalancerProfileOutboundIPPrefixes', + 'ManagedClusterLoadBalancerProfileOutboundIPs', + 'ManagedClusterPoolUpgradeProfile', + 'ManagedClusterPoolUpgradeProfileUpgradesItem', + 'ManagedClusterPropertiesAutoScalerProfile', + 'ManagedClusterPropertiesIdentityProfileValue', + 'ManagedClusterServicePrincipalProfile', + 'ManagedClusterSKU', + 'ManagedClusterUpgradeProfile', + 'ManagedClusterWindowsProfile', + 'OperationValue', + 'Resource', + 'ResourceReference', + 'SubResource', + 'TagsObject', + 'UserAssignedIdentity', + 'OperationValuePaged', + 'ManagedClusterPaged', + 'AgentPoolPaged', + 'ContainerServiceStorageProfileTypes', + 'ContainerServiceVMSizeTypes', + 'OSType', + 'AgentPoolType', + 'AgentPoolMode', + 'ScaleSetPriority', + 'ScaleSetEvictionPolicy', + 'NetworkPlugin', + 'NetworkPolicy', + 'NetworkMode', + 'OutboundType', + 'LoadBalancerSku', + 'ResourceIdentityType', + 'ManagedClusterSKUName', + 'ManagedClusterSKUTier', +] diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_container_service_client_enums.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_container_service_client_enums.py new file mode 100644 index 000000000000..2dc7cc068f93 --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_container_service_client_enums.py @@ -0,0 +1,273 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from enum import Enum + + +class ContainerServiceStorageProfileTypes(str, Enum): + + storage_account = "StorageAccount" + managed_disks = "ManagedDisks" + + +class ContainerServiceVMSizeTypes(str, Enum): + + standard_a1 = "Standard_A1" + standard_a10 = "Standard_A10" + standard_a11 = "Standard_A11" + standard_a1_v2 = "Standard_A1_v2" + standard_a2 = "Standard_A2" + standard_a2_v2 = "Standard_A2_v2" + standard_a2m_v2 = "Standard_A2m_v2" + standard_a3 = "Standard_A3" + standard_a4 = "Standard_A4" + standard_a4_v2 = "Standard_A4_v2" + standard_a4m_v2 = "Standard_A4m_v2" + standard_a5 = "Standard_A5" + standard_a6 = "Standard_A6" + standard_a7 = "Standard_A7" + standard_a8 = "Standard_A8" + standard_a8_v2 = "Standard_A8_v2" + standard_a8m_v2 = "Standard_A8m_v2" + standard_a9 = "Standard_A9" + standard_b2ms = "Standard_B2ms" + standard_b2s = "Standard_B2s" + standard_b4ms = "Standard_B4ms" + standard_b8ms = "Standard_B8ms" + standard_d1 = "Standard_D1" + standard_d11 = "Standard_D11" + standard_d11_v2 = "Standard_D11_v2" + standard_d11_v2_promo = "Standard_D11_v2_Promo" + standard_d12 = "Standard_D12" + standard_d12_v2 = "Standard_D12_v2" + standard_d12_v2_promo = "Standard_D12_v2_Promo" + standard_d13 = "Standard_D13" + standard_d13_v2 = "Standard_D13_v2" + standard_d13_v2_promo = "Standard_D13_v2_Promo" + standard_d14 = "Standard_D14" + standard_d14_v2 = "Standard_D14_v2" + standard_d14_v2_promo = "Standard_D14_v2_Promo" + standard_d15_v2 = "Standard_D15_v2" + standard_d16_v3 = "Standard_D16_v3" + standard_d16s_v3 = "Standard_D16s_v3" + standard_d1_v2 = "Standard_D1_v2" + standard_d2 = "Standard_D2" + standard_d2_v2 = "Standard_D2_v2" + standard_d2_v2_promo = "Standard_D2_v2_Promo" + standard_d2_v3 = "Standard_D2_v3" + standard_d2s_v3 = "Standard_D2s_v3" + standard_d3 = "Standard_D3" + standard_d32_v3 = "Standard_D32_v3" + standard_d32s_v3 = "Standard_D32s_v3" + standard_d3_v2 = "Standard_D3_v2" + standard_d3_v2_promo = "Standard_D3_v2_Promo" + standard_d4 = "Standard_D4" + standard_d4_v2 = "Standard_D4_v2" + standard_d4_v2_promo = "Standard_D4_v2_Promo" + standard_d4_v3 = "Standard_D4_v3" + standard_d4s_v3 = "Standard_D4s_v3" + standard_d5_v2 = "Standard_D5_v2" + standard_d5_v2_promo = "Standard_D5_v2_Promo" + standard_d64_v3 = "Standard_D64_v3" + standard_d64s_v3 = "Standard_D64s_v3" + standard_d8_v3 = "Standard_D8_v3" + standard_d8s_v3 = "Standard_D8s_v3" + standard_ds1 = "Standard_DS1" + standard_ds11 = "Standard_DS11" + standard_ds11_v2 = "Standard_DS11_v2" + standard_ds11_v2_promo = "Standard_DS11_v2_Promo" + standard_ds12 = "Standard_DS12" + standard_ds12_v2 = "Standard_DS12_v2" + standard_ds12_v2_promo = "Standard_DS12_v2_Promo" + standard_ds13 = "Standard_DS13" + standard_ds13_2_v2 = "Standard_DS13-2_v2" + standard_ds13_4_v2 = "Standard_DS13-4_v2" + standard_ds13_v2 = "Standard_DS13_v2" + standard_ds13_v2_promo = "Standard_DS13_v2_Promo" + standard_ds14 = "Standard_DS14" + standard_ds14_4_v2 = "Standard_DS14-4_v2" + standard_ds14_8_v2 = "Standard_DS14-8_v2" + standard_ds14_v2 = "Standard_DS14_v2" + standard_ds14_v2_promo = "Standard_DS14_v2_Promo" + standard_ds15_v2 = "Standard_DS15_v2" + standard_ds1_v2 = "Standard_DS1_v2" + standard_ds2 = "Standard_DS2" + standard_ds2_v2 = "Standard_DS2_v2" + standard_ds2_v2_promo = "Standard_DS2_v2_Promo" + standard_ds3 = "Standard_DS3" + standard_ds3_v2 = "Standard_DS3_v2" + standard_ds3_v2_promo = "Standard_DS3_v2_Promo" + standard_ds4 = "Standard_DS4" + standard_ds4_v2 = "Standard_DS4_v2" + standard_ds4_v2_promo = "Standard_DS4_v2_Promo" + standard_ds5_v2 = "Standard_DS5_v2" + standard_ds5_v2_promo = "Standard_DS5_v2_Promo" + standard_e16_v3 = "Standard_E16_v3" + standard_e16s_v3 = "Standard_E16s_v3" + standard_e2_v3 = "Standard_E2_v3" + standard_e2s_v3 = "Standard_E2s_v3" + standard_e32_16s_v3 = "Standard_E32-16s_v3" + standard_e32_8s_v3 = "Standard_E32-8s_v3" + standard_e32_v3 = "Standard_E32_v3" + standard_e32s_v3 = "Standard_E32s_v3" + standard_e4_v3 = "Standard_E4_v3" + standard_e4s_v3 = "Standard_E4s_v3" + standard_e64_16s_v3 = "Standard_E64-16s_v3" + standard_e64_32s_v3 = "Standard_E64-32s_v3" + standard_e64_v3 = "Standard_E64_v3" + standard_e64s_v3 = "Standard_E64s_v3" + standard_e8_v3 = "Standard_E8_v3" + standard_e8s_v3 = "Standard_E8s_v3" + standard_f1 = "Standard_F1" + standard_f16 = "Standard_F16" + standard_f16s = "Standard_F16s" + standard_f16s_v2 = "Standard_F16s_v2" + standard_f1s = "Standard_F1s" + standard_f2 = "Standard_F2" + standard_f2s = "Standard_F2s" + standard_f2s_v2 = "Standard_F2s_v2" + standard_f32s_v2 = "Standard_F32s_v2" + standard_f4 = "Standard_F4" + standard_f4s = "Standard_F4s" + standard_f4s_v2 = "Standard_F4s_v2" + standard_f64s_v2 = "Standard_F64s_v2" + standard_f72s_v2 = "Standard_F72s_v2" + standard_f8 = "Standard_F8" + standard_f8s = "Standard_F8s" + standard_f8s_v2 = "Standard_F8s_v2" + standard_g1 = "Standard_G1" + standard_g2 = "Standard_G2" + standard_g3 = "Standard_G3" + standard_g4 = "Standard_G4" + standard_g5 = "Standard_G5" + standard_gs1 = "Standard_GS1" + standard_gs2 = "Standard_GS2" + standard_gs3 = "Standard_GS3" + standard_gs4 = "Standard_GS4" + standard_gs4_4 = "Standard_GS4-4" + standard_gs4_8 = "Standard_GS4-8" + standard_gs5 = "Standard_GS5" + standard_gs5_16 = "Standard_GS5-16" + standard_gs5_8 = "Standard_GS5-8" + standard_h16 = "Standard_H16" + standard_h16m = "Standard_H16m" + standard_h16mr = "Standard_H16mr" + standard_h16r = "Standard_H16r" + standard_h8 = "Standard_H8" + standard_h8m = "Standard_H8m" + standard_l16s = "Standard_L16s" + standard_l32s = "Standard_L32s" + standard_l4s = "Standard_L4s" + standard_l8s = "Standard_L8s" + standard_m128_32ms = "Standard_M128-32ms" + standard_m128_64ms = "Standard_M128-64ms" + standard_m128ms = "Standard_M128ms" + standard_m128s = "Standard_M128s" + standard_m64_16ms = "Standard_M64-16ms" + standard_m64_32ms = "Standard_M64-32ms" + standard_m64ms = "Standard_M64ms" + standard_m64s = "Standard_M64s" + standard_nc12 = "Standard_NC12" + standard_nc12s_v2 = "Standard_NC12s_v2" + standard_nc12s_v3 = "Standard_NC12s_v3" + standard_nc24 = "Standard_NC24" + standard_nc24r = "Standard_NC24r" + standard_nc24rs_v2 = "Standard_NC24rs_v2" + standard_nc24rs_v3 = "Standard_NC24rs_v3" + standard_nc24s_v2 = "Standard_NC24s_v2" + standard_nc24s_v3 = "Standard_NC24s_v3" + standard_nc6 = "Standard_NC6" + standard_nc6s_v2 = "Standard_NC6s_v2" + standard_nc6s_v3 = "Standard_NC6s_v3" + standard_nd12s = "Standard_ND12s" + standard_nd24rs = "Standard_ND24rs" + standard_nd24s = "Standard_ND24s" + standard_nd6s = "Standard_ND6s" + standard_nv12 = "Standard_NV12" + standard_nv24 = "Standard_NV24" + standard_nv6 = "Standard_NV6" + + +class OSType(str, Enum): + + linux = "Linux" + windows = "Windows" + + +class AgentPoolType(str, Enum): + + virtual_machine_scale_sets = "VirtualMachineScaleSets" + availability_set = "AvailabilitySet" + + +class AgentPoolMode(str, Enum): + + system = "System" + user = "User" + + +class ScaleSetPriority(str, Enum): + + spot = "Spot" + regular = "Regular" + + +class ScaleSetEvictionPolicy(str, Enum): + + delete = "Delete" + deallocate = "Deallocate" + + +class NetworkPlugin(str, Enum): + + azure = "azure" + kubenet = "kubenet" + + +class NetworkPolicy(str, Enum): + + calico = "calico" + azure = "azure" + + +class NetworkMode(str, Enum): + + transparent = "transparent" + bridge = "bridge" + + +class OutboundType(str, Enum): + + load_balancer = "loadBalancer" + user_defined_routing = "userDefinedRouting" + + +class LoadBalancerSku(str, Enum): + + standard = "standard" + basic = "basic" + + +class ResourceIdentityType(str, Enum): + + system_assigned = "SystemAssigned" + none = "None" + + +class ManagedClusterSKUName(str, Enum): + + basic = "Basic" + + +class ManagedClusterSKUTier(str, Enum): + + paid = "Paid" + free = "Free" diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_models.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_models.py new file mode 100644 index 000000000000..d22cacaa2afe --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_models.py @@ -0,0 +1,2093 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class SubResource(Model): + """Reference to another subresource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar type: Resource type + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SubResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + + +class AgentPool(SubResource): + """Agent Pool. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. + :type count: int + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', + 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', + 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', + 'Standard_DS11', 'Standard_DS11_v2', 'Standard_DS11_v2_Promo', + 'Standard_DS12', 'Standard_DS12_v2', 'Standard_DS12_v2_Promo', + 'Standard_DS13', 'Standard_DS13-2_v2', 'Standard_DS13-4_v2', + 'Standard_DS13_v2', 'Standard_DS13_v2_Promo', 'Standard_DS14', + 'Standard_DS14-4_v2', 'Standard_DS14-8_v2', 'Standard_DS14_v2', + 'Standard_DS14_v2_Promo', 'Standard_DS15_v2', 'Standard_DS1_v2', + 'Standard_DS2', 'Standard_DS2_v2', 'Standard_DS2_v2_Promo', + 'Standard_DS3', 'Standard_DS3_v2', 'Standard_DS3_v2_Promo', + 'Standard_DS4', 'Standard_DS4_v2', 'Standard_DS4_v2_Promo', + 'Standard_DS5_v2', 'Standard_DS5_v2_Promo', 'Standard_E16_v3', + 'Standard_E16s_v3', 'Standard_E2_v3', 'Standard_E2s_v3', + 'Standard_E32-16s_v3', 'Standard_E32-8s_v3', 'Standard_E32_v3', + 'Standard_E32s_v3', 'Standard_E4_v3', 'Standard_E4s_v3', + 'Standard_E64-16s_v3', 'Standard_E64-32s_v3', 'Standard_E64_v3', + 'Standard_E64s_v3', 'Standard_E8_v3', 'Standard_E8s_v3', 'Standard_F1', + 'Standard_F16', 'Standard_F16s', 'Standard_F16s_v2', 'Standard_F1s', + 'Standard_F2', 'Standard_F2s', 'Standard_F2s_v2', 'Standard_F32s_v2', + 'Standard_F4', 'Standard_F4s', 'Standard_F4s_v2', 'Standard_F64s_v2', + 'Standard_F72s_v2', 'Standard_F8', 'Standard_F8s', 'Standard_F8s_v2', + 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', + 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', + 'Standard_GS4-4', 'Standard_GS4-8', 'Standard_GS5', 'Standard_GS5-16', + 'Standard_GS5-8', 'Standard_H16', 'Standard_H16m', 'Standard_H16mr', + 'Standard_H16r', 'Standard_H8', 'Standard_H8m', 'Standard_L16s', + 'Standard_L32s', 'Standard_L4s', 'Standard_L8s', 'Standard_M128-32ms', + 'Standard_M128-64ms', 'Standard_M128ms', 'Standard_M128s', + 'Standard_M64-16ms', 'Standard_M64-32ms', 'Standard_M64ms', + 'Standard_M64s', 'Standard_NC12', 'Standard_NC12s_v2', + 'Standard_NC12s_v3', 'Standard_NC24', 'Standard_NC24r', + 'Standard_NC24rs_v2', 'Standard_NC24rs_v3', 'Standard_NC24s_v2', + 'Standard_NC24s_v3', 'Standard_NC6', 'Standard_NC6s_v2', + 'Standard_NC6s_v3', 'Standard_ND12s', 'Standard_ND24rs', 'Standard_ND24s', + 'Standard_ND6s', 'Standard_NV12', 'Standard_NV24', 'Standard_NV6' + :type vm_size: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceVMSizeTypes + :param os_disk_size_gb: 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. + :type os_disk_size_gb: int + :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet + identifier. + :type vnet_subnet_id: str + :param max_pods: Maximum number of pods that can run on a node. + :type max_pods: int + :param os_type: OsType to be used to specify os type. Choose from Linux + and Windows. Default to Linux. Possible values include: 'Linux', + 'Windows'. Default value: "Linux" . + :type os_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OSType + :param max_count: Maximum number of nodes for auto-scaling + :type max_count: int + :param min_count: Minimum number of nodes for auto-scaling + :type min_count: int + :param enable_auto_scaling: Whether to enable auto-scaler + :type enable_auto_scaling: bool + :param agent_pool_type: AgentPoolType represents types of an agent pool. + Possible values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :type agent_pool_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolType + :param mode: AgentPoolMode represents mode of an agent pool. Possible + values include: 'System', 'User' + :type mode: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolMode + :param orchestrator_version: Version of orchestrator specified when + creating the managed cluster. + :type orchestrator_version: str + :param node_image_version: Version of node image + :type node_image_version: str + :param upgrade_settings: Settings for upgrading the agentpool + :type upgrade_settings: + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolUpgradeSettings + :ivar provisioning_state: The current deployment or provisioning state, + which only appears in the response. + :vartype provisioning_state: str + :param availability_zones: Availability zones for nodes. Must use + VirtualMachineScaleSets AgentPoolType. + :type availability_zones: list[str] + :param enable_node_public_ip: Enable public IP for nodes + :type enable_node_public_ip: bool + :param scale_set_priority: ScaleSetPriority to be used to specify virtual + machine scale set priority. Default to regular. Possible values include: + 'Spot', 'Regular'. Default value: "Regular" . + :type scale_set_priority: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetPriority + :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to + specify eviction policy for Spot virtual machine scale set. Default to + Delete. Possible values include: 'Delete', 'Deallocate'. Default value: + "Delete" . + :type scale_set_eviction_policy: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetEvictionPolicy + :param spot_max_price: SpotMaxPrice to be used to specify the maximum + price you are willing to pay in US Dollars. Possible values are any + decimal value greater than zero or -1 which indicates default price to be + up-to on-demand. + :type spot_max_price: float + :param tags: Agent pool tags to be persisted on the agent pool virtual + machine scale set. + :type tags: dict[str, str] + :param node_labels: Agent pool node labels to be persisted across all + nodes in agent pool. + :type node_labels: dict[str, str] + :param node_taints: Taints added to new nodes during node pool create and + scale. For example, key=value:NoSchedule. + :type node_taints: list[str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'count': {'key': 'properties.count', 'type': 'int'}, + 'vm_size': {'key': 'properties.vmSize', 'type': 'str'}, + 'os_disk_size_gb': {'key': 'properties.osDiskSizeGB', 'type': 'int'}, + 'vnet_subnet_id': {'key': 'properties.vnetSubnetID', 'type': 'str'}, + 'max_pods': {'key': 'properties.maxPods', 'type': 'int'}, + 'os_type': {'key': 'properties.osType', 'type': 'str'}, + 'max_count': {'key': 'properties.maxCount', 'type': 'int'}, + 'min_count': {'key': 'properties.minCount', 'type': 'int'}, + 'enable_auto_scaling': {'key': 'properties.enableAutoScaling', 'type': 'bool'}, + 'agent_pool_type': {'key': 'properties.type', 'type': 'str'}, + 'mode': {'key': 'properties.mode', 'type': 'str'}, + 'orchestrator_version': {'key': 'properties.orchestratorVersion', 'type': 'str'}, + 'node_image_version': {'key': 'properties.nodeImageVersion', 'type': 'str'}, + 'upgrade_settings': {'key': 'properties.upgradeSettings', 'type': 'AgentPoolUpgradeSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'availability_zones': {'key': 'properties.availabilityZones', 'type': '[str]'}, + 'enable_node_public_ip': {'key': 'properties.enableNodePublicIP', 'type': 'bool'}, + 'scale_set_priority': {'key': 'properties.scaleSetPriority', 'type': 'str'}, + 'scale_set_eviction_policy': {'key': 'properties.scaleSetEvictionPolicy', 'type': 'str'}, + 'spot_max_price': {'key': 'properties.spotMaxPrice', 'type': 'float'}, + 'tags': {'key': 'properties.tags', 'type': '{str}'}, + 'node_labels': {'key': 'properties.nodeLabels', 'type': '{str}'}, + 'node_taints': {'key': 'properties.nodeTaints', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AgentPool, self).__init__(**kwargs) + self.count = kwargs.get('count', None) + self.vm_size = kwargs.get('vm_size', None) + self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) + self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) + self.max_pods = kwargs.get('max_pods', None) + self.os_type = kwargs.get('os_type', "Linux") + self.max_count = kwargs.get('max_count', None) + self.min_count = kwargs.get('min_count', None) + self.enable_auto_scaling = kwargs.get('enable_auto_scaling', None) + self.agent_pool_type = kwargs.get('agent_pool_type', None) + self.mode = kwargs.get('mode', None) + self.orchestrator_version = kwargs.get('orchestrator_version', None) + self.node_image_version = kwargs.get('node_image_version', None) + self.upgrade_settings = kwargs.get('upgrade_settings', None) + self.provisioning_state = None + self.availability_zones = kwargs.get('availability_zones', None) + self.enable_node_public_ip = kwargs.get('enable_node_public_ip', None) + self.scale_set_priority = kwargs.get('scale_set_priority', "Regular") + self.scale_set_eviction_policy = kwargs.get('scale_set_eviction_policy', "Delete") + self.spot_max_price = kwargs.get('spot_max_price', None) + self.tags = kwargs.get('tags', None) + self.node_labels = kwargs.get('node_labels', None) + self.node_taints = kwargs.get('node_taints', None) + + +class AgentPoolAvailableVersions(Model): + """The list of available versions for an agent pool. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Id of the agent pool available versions. + :vartype id: str + :ivar name: Name of the agent pool available versions. + :vartype name: str + :ivar type: Type of the agent pool available versions. + :vartype type: str + :param agent_pool_versions: List of versions available for agent pool. + :type agent_pool_versions: + list[~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'agent_pool_versions': {'key': 'properties.agentPoolVersions', 'type': '[AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem]'}, + } + + def __init__(self, **kwargs): + super(AgentPoolAvailableVersions, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.agent_pool_versions = kwargs.get('agent_pool_versions', None) + + +class AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem(Model): + """AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem. + + :param default: Whether this version is the default agent pool version. + :type default: bool + :param kubernetes_version: Kubernetes version (major, minor, patch). + :type kubernetes_version: str + :param is_preview: Whether Kubernetes version is currently in preview. + :type is_preview: bool + """ + + _attribute_map = { + 'default': {'key': 'default', 'type': 'bool'}, + 'kubernetes_version': {'key': 'kubernetesVersion', 'type': 'str'}, + 'is_preview': {'key': 'isPreview', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem, self).__init__(**kwargs) + self.default = kwargs.get('default', None) + self.kubernetes_version = kwargs.get('kubernetes_version', None) + self.is_preview = kwargs.get('is_preview', None) + + +class AgentPoolUpgradeProfile(Model): + """The list of available upgrades for an agent pool. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Id of the agent pool upgrade profile. + :vartype id: str + :ivar name: Name of the agent pool upgrade profile. + :vartype name: str + :ivar type: Type of the agent pool upgrade profile. + :vartype type: str + :param kubernetes_version: Required. Kubernetes version (major, minor, + patch). + :type kubernetes_version: str + :param os_type: Required. OsType to be used to specify os type. Choose + from Linux and Windows. Default to Linux. Possible values include: + 'Linux', 'Windows'. Default value: "Linux" . + :type os_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OSType + :param upgrades: List of orchestrator types and versions available for + upgrade. + :type upgrades: + list[~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolUpgradeProfilePropertiesUpgradesItem] + :param latest_node_image_version: LatestNodeImageVersion is the latest AKS + supported node image version. + :type latest_node_image_version: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'kubernetes_version': {'required': True}, + 'os_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kubernetes_version': {'key': 'properties.kubernetesVersion', 'type': 'str'}, + 'os_type': {'key': 'properties.osType', 'type': 'str'}, + 'upgrades': {'key': 'properties.upgrades', 'type': '[AgentPoolUpgradeProfilePropertiesUpgradesItem]'}, + 'latest_node_image_version': {'key': 'properties.latestNodeImageVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AgentPoolUpgradeProfile, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.kubernetes_version = kwargs.get('kubernetes_version', None) + self.os_type = kwargs.get('os_type', "Linux") + self.upgrades = kwargs.get('upgrades', None) + self.latest_node_image_version = kwargs.get('latest_node_image_version', None) + + +class AgentPoolUpgradeProfilePropertiesUpgradesItem(Model): + """AgentPoolUpgradeProfilePropertiesUpgradesItem. + + :param kubernetes_version: Kubernetes version (major, minor, patch). + :type kubernetes_version: str + :param is_preview: Whether Kubernetes version is currently in preview. + :type is_preview: bool + """ + + _attribute_map = { + 'kubernetes_version': {'key': 'kubernetesVersion', 'type': 'str'}, + 'is_preview': {'key': 'isPreview', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(AgentPoolUpgradeProfilePropertiesUpgradesItem, self).__init__(**kwargs) + self.kubernetes_version = kwargs.get('kubernetes_version', None) + self.is_preview = kwargs.get('is_preview', None) + + +class AgentPoolUpgradeSettings(Model): + """Settings for upgrading an agentpool. + + :param max_surge: Count or percentage of additional nodes to be added + during upgrade. If empty uses AKS default + :type max_surge: str + """ + + _attribute_map = { + 'max_surge': {'key': 'maxSurge', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AgentPoolUpgradeSettings, self).__init__(**kwargs) + self.max_surge = kwargs.get('max_surge', None) + + +class CloudError(Model): + """An error response from the Container service. + + :param error: Details about the error. + :type error: + ~azure.mgmt.containerservice.v2020_04_01.models.CloudErrorBody + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'CloudErrorBody'}, + } + + def __init__(self, **kwargs): + super(CloudError, self).__init__(**kwargs) + self.error = kwargs.get('error', None) + + +class CloudErrorException(HttpOperationError): + """Server responsed with exception of type: 'CloudError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(CloudErrorException, self).__init__(deserialize, response, 'CloudError', *args) + + +class CloudErrorBody(Model): + """An error response from the Container service. + + :param code: An identifier for the error. Codes are invariant and are + intended to be consumed programmatically. + :type code: str + :param message: A message describing the error, intended to be suitable + for display in a user interface. + :type message: str + :param target: The target of the particular error. For example, the name + of the property in error. + :type target: str + :param details: A list of additional details about the error. + :type details: + list[~azure.mgmt.containerservice.v2020_04_01.models.CloudErrorBody] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[CloudErrorBody]'}, + } + + def __init__(self, **kwargs): + super(CloudErrorBody, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.target = kwargs.get('target', None) + self.details = kwargs.get('details', None) + + +class ContainerServiceDiagnosticsProfile(Model): + """Profile for diagnostics on the container service cluster. + + All required parameters must be populated in order to send to Azure. + + :param vm_diagnostics: Required. Profile for diagnostics on the container + service VMs. + :type vm_diagnostics: + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceVMDiagnostics + """ + + _validation = { + 'vm_diagnostics': {'required': True}, + } + + _attribute_map = { + 'vm_diagnostics': {'key': 'vmDiagnostics', 'type': 'ContainerServiceVMDiagnostics'}, + } + + def __init__(self, **kwargs): + super(ContainerServiceDiagnosticsProfile, self).__init__(**kwargs) + self.vm_diagnostics = kwargs.get('vm_diagnostics', None) + + +class ContainerServiceLinuxProfile(Model): + """Profile for Linux VMs in the container service cluster. + + All required parameters must be populated in order to send to Azure. + + :param admin_username: Required. The administrator username to use for + Linux VMs. + :type admin_username: str + :param ssh: Required. SSH configuration for Linux-based VMs running on + Azure. + :type ssh: + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceSshConfiguration + """ + + _validation = { + 'admin_username': {'required': True, 'pattern': r'^[A-Za-z][-A-Za-z0-9_]*$'}, + 'ssh': {'required': True}, + } + + _attribute_map = { + 'admin_username': {'key': 'adminUsername', 'type': 'str'}, + 'ssh': {'key': 'ssh', 'type': 'ContainerServiceSshConfiguration'}, + } + + def __init__(self, **kwargs): + super(ContainerServiceLinuxProfile, self).__init__(**kwargs) + self.admin_username = kwargs.get('admin_username', None) + self.ssh = kwargs.get('ssh', None) + + +class ContainerServiceMasterProfile(Model): + """Profile for the container service master. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param count: Number of masters (VMs) in the container service cluster. + Allowed values are 1, 3, and 5. The default value is 1. Default value: 1 . + :type count: int + :param dns_prefix: Required. DNS prefix to be used to create the FQDN for + the master pool. + :type dns_prefix: str + :param vm_size: Required. Size of agent VMs. Possible values include: + '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', + 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', + 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', + 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', + 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', + 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', + 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', + 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', + 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', + 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', + 'Standard_DS11', 'Standard_DS11_v2', 'Standard_DS11_v2_Promo', + 'Standard_DS12', 'Standard_DS12_v2', 'Standard_DS12_v2_Promo', + 'Standard_DS13', 'Standard_DS13-2_v2', 'Standard_DS13-4_v2', + 'Standard_DS13_v2', 'Standard_DS13_v2_Promo', 'Standard_DS14', + 'Standard_DS14-4_v2', 'Standard_DS14-8_v2', 'Standard_DS14_v2', + 'Standard_DS14_v2_Promo', 'Standard_DS15_v2', 'Standard_DS1_v2', + 'Standard_DS2', 'Standard_DS2_v2', 'Standard_DS2_v2_Promo', + 'Standard_DS3', 'Standard_DS3_v2', 'Standard_DS3_v2_Promo', + 'Standard_DS4', 'Standard_DS4_v2', 'Standard_DS4_v2_Promo', + 'Standard_DS5_v2', 'Standard_DS5_v2_Promo', 'Standard_E16_v3', + 'Standard_E16s_v3', 'Standard_E2_v3', 'Standard_E2s_v3', + 'Standard_E32-16s_v3', 'Standard_E32-8s_v3', 'Standard_E32_v3', + 'Standard_E32s_v3', 'Standard_E4_v3', 'Standard_E4s_v3', + 'Standard_E64-16s_v3', 'Standard_E64-32s_v3', 'Standard_E64_v3', + 'Standard_E64s_v3', 'Standard_E8_v3', 'Standard_E8s_v3', 'Standard_F1', + 'Standard_F16', 'Standard_F16s', 'Standard_F16s_v2', 'Standard_F1s', + 'Standard_F2', 'Standard_F2s', 'Standard_F2s_v2', 'Standard_F32s_v2', + 'Standard_F4', 'Standard_F4s', 'Standard_F4s_v2', 'Standard_F64s_v2', + 'Standard_F72s_v2', 'Standard_F8', 'Standard_F8s', 'Standard_F8s_v2', + 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', + 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', + 'Standard_GS4-4', 'Standard_GS4-8', 'Standard_GS5', 'Standard_GS5-16', + 'Standard_GS5-8', 'Standard_H16', 'Standard_H16m', 'Standard_H16mr', + 'Standard_H16r', 'Standard_H8', 'Standard_H8m', 'Standard_L16s', + 'Standard_L32s', 'Standard_L4s', 'Standard_L8s', 'Standard_M128-32ms', + 'Standard_M128-64ms', 'Standard_M128ms', 'Standard_M128s', + 'Standard_M64-16ms', 'Standard_M64-32ms', 'Standard_M64ms', + 'Standard_M64s', 'Standard_NC12', 'Standard_NC12s_v2', + 'Standard_NC12s_v3', 'Standard_NC24', 'Standard_NC24r', + 'Standard_NC24rs_v2', 'Standard_NC24rs_v3', 'Standard_NC24s_v2', + 'Standard_NC24s_v3', 'Standard_NC6', 'Standard_NC6s_v2', + 'Standard_NC6s_v3', 'Standard_ND12s', 'Standard_ND24rs', 'Standard_ND24s', + 'Standard_ND6s', 'Standard_NV12', 'Standard_NV24', 'Standard_NV6' + :type vm_size: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceVMSizeTypes + :param os_disk_size_gb: 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. + :type os_disk_size_gb: int + :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet + identifier. + :type vnet_subnet_id: str + :param first_consecutive_static_ip: FirstConsecutiveStaticIP used to + specify the first static ip of masters. Default value: "10.240.255.5" . + :type first_consecutive_static_ip: str + :param storage_profile: Storage profile specifies what kind of storage + used. Choose from StorageAccount and ManagedDisks. Leave it empty, we will + choose for you based on the orchestrator choice. Possible values include: + 'StorageAccount', 'ManagedDisks' + :type storage_profile: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceStorageProfileTypes + :ivar fqdn: FQDN for the master pool. + :vartype fqdn: str + """ + + _validation = { + 'dns_prefix': {'required': True}, + 'vm_size': {'required': True}, + 'fqdn': {'readonly': True}, + } + + _attribute_map = { + 'count': {'key': 'count', 'type': 'int'}, + 'dns_prefix': {'key': 'dnsPrefix', 'type': 'str'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'os_disk_size_gb': {'key': 'osDiskSizeGB', 'type': 'int'}, + 'vnet_subnet_id': {'key': 'vnetSubnetID', 'type': 'str'}, + 'first_consecutive_static_ip': {'key': 'firstConsecutiveStaticIP', 'type': 'str'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'str'}, + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerServiceMasterProfile, self).__init__(**kwargs) + self.count = kwargs.get('count', 1) + self.dns_prefix = kwargs.get('dns_prefix', None) + self.vm_size = kwargs.get('vm_size', None) + self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) + self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) + self.first_consecutive_static_ip = kwargs.get('first_consecutive_static_ip', "10.240.255.5") + self.storage_profile = kwargs.get('storage_profile', None) + self.fqdn = None + + +class ContainerServiceNetworkProfile(Model): + """Profile of network configuration. + + :param network_plugin: Network plugin used for building Kubernetes + network. Possible values include: 'azure', 'kubenet'. Default value: + "kubenet" . + :type network_plugin: str or + ~azure.mgmt.containerservice.v2020_04_01.models.NetworkPlugin + :param network_policy: Network policy used for building Kubernetes + network. Possible values include: 'calico', 'azure' + :type network_policy: str or + ~azure.mgmt.containerservice.v2020_04_01.models.NetworkPolicy + :param network_mode: Network mode used for building Kubernetes network. + Possible values include: 'transparent', 'bridge' + :type network_mode: str or + ~azure.mgmt.containerservice.v2020_04_01.models.NetworkMode + :param pod_cidr: A CIDR notation IP range from which to assign pod IPs + when kubenet is used. Default value: "10.244.0.0/16" . + :type pod_cidr: str + :param service_cidr: A CIDR notation IP range from which to assign service + cluster IPs. It must not overlap with any Subnet IP ranges. Default value: + "10.0.0.0/16" . + :type service_cidr: str + :param dns_service_ip: An IP address assigned to the Kubernetes DNS + service. It must be within the Kubernetes service address range specified + in serviceCidr. Default value: "10.0.0.10" . + :type dns_service_ip: str + :param docker_bridge_cidr: A CIDR notation IP range assigned to the Docker + bridge network. It must not overlap with any Subnet IP ranges or the + Kubernetes service address range. Default value: "172.17.0.1/16" . + :type docker_bridge_cidr: str + :param outbound_type: The outbound (egress) routing method. Possible + values include: 'loadBalancer', 'userDefinedRouting'. Default value: + "loadBalancer" . + :type outbound_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OutboundType + :param load_balancer_sku: The load balancer sku for the managed cluster. + Possible values include: 'standard', 'basic' + :type load_balancer_sku: str or + ~azure.mgmt.containerservice.v2020_04_01.models.LoadBalancerSku + :param load_balancer_profile: Profile of the cluster load balancer. + :type load_balancer_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterLoadBalancerProfile + """ + + _validation = { + 'pod_cidr': {'pattern': r'^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$'}, + 'service_cidr': {'pattern': r'^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$'}, + 'dns_service_ip': {'pattern': r'^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$'}, + 'docker_bridge_cidr': {'pattern': r'^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$'}, + } + + _attribute_map = { + 'network_plugin': {'key': 'networkPlugin', 'type': 'str'}, + 'network_policy': {'key': 'networkPolicy', 'type': 'str'}, + 'network_mode': {'key': 'networkMode', 'type': 'str'}, + 'pod_cidr': {'key': 'podCidr', 'type': 'str'}, + 'service_cidr': {'key': 'serviceCidr', 'type': 'str'}, + 'dns_service_ip': {'key': 'dnsServiceIP', 'type': 'str'}, + 'docker_bridge_cidr': {'key': 'dockerBridgeCidr', 'type': 'str'}, + 'outbound_type': {'key': 'outboundType', 'type': 'str'}, + 'load_balancer_sku': {'key': 'loadBalancerSku', 'type': 'str'}, + 'load_balancer_profile': {'key': 'loadBalancerProfile', 'type': 'ManagedClusterLoadBalancerProfile'}, + } + + def __init__(self, **kwargs): + super(ContainerServiceNetworkProfile, self).__init__(**kwargs) + self.network_plugin = kwargs.get('network_plugin', "kubenet") + self.network_policy = kwargs.get('network_policy', None) + self.network_mode = kwargs.get('network_mode', None) + self.pod_cidr = kwargs.get('pod_cidr', "10.244.0.0/16") + self.service_cidr = kwargs.get('service_cidr', "10.0.0.0/16") + self.dns_service_ip = kwargs.get('dns_service_ip', "10.0.0.10") + self.docker_bridge_cidr = kwargs.get('docker_bridge_cidr', "172.17.0.1/16") + self.outbound_type = kwargs.get('outbound_type', "loadBalancer") + self.load_balancer_sku = kwargs.get('load_balancer_sku', None) + self.load_balancer_profile = kwargs.get('load_balancer_profile', None) + + +class ContainerServiceSshConfiguration(Model): + """SSH configuration for Linux-based VMs running on Azure. + + All required parameters must be populated in order to send to Azure. + + :param public_keys: Required. The list of SSH public keys used to + authenticate with Linux-based VMs. Only expect one key specified. + :type public_keys: + list[~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceSshPublicKey] + """ + + _validation = { + 'public_keys': {'required': True}, + } + + _attribute_map = { + 'public_keys': {'key': 'publicKeys', 'type': '[ContainerServiceSshPublicKey]'}, + } + + def __init__(self, **kwargs): + super(ContainerServiceSshConfiguration, self).__init__(**kwargs) + self.public_keys = kwargs.get('public_keys', None) + + +class ContainerServiceSshPublicKey(Model): + """Contains information about SSH certificate public key data. + + All required parameters must be populated in order to send to Azure. + + :param key_data: Required. Certificate public key used to authenticate + with VMs through SSH. The certificate must be in PEM format with or + without headers. + :type key_data: str + """ + + _validation = { + 'key_data': {'required': True}, + } + + _attribute_map = { + 'key_data': {'key': 'keyData', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerServiceSshPublicKey, self).__init__(**kwargs) + self.key_data = kwargs.get('key_data', None) + + +class ContainerServiceVMDiagnostics(Model): + """Profile for diagnostics on the container service VMs. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether the VM diagnostic agent is provisioned + on the VM. + :type enabled: bool + :ivar storage_uri: The URI of the storage account where diagnostics are + stored. + :vartype storage_uri: str + """ + + _validation = { + 'enabled': {'required': True}, + 'storage_uri': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'storage_uri': {'key': 'storageUri', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerServiceVMDiagnostics, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.storage_uri = None + + +class CredentialResult(Model): + """The credential result response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of the credential. + :vartype name: str + :ivar value: Base64-encoded Kubernetes configuration file. + :vartype value: bytearray + """ + + _validation = { + 'name': {'readonly': True}, + 'value': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'bytearray'}, + } + + def __init__(self, **kwargs): + super(CredentialResult, self).__init__(**kwargs) + self.name = None + self.value = None + + +class CredentialResults(Model): + """The list of credential result response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar kubeconfigs: Base64-encoded Kubernetes configuration file. + :vartype kubeconfigs: + list[~azure.mgmt.containerservice.v2020_04_01.models.CredentialResult] + """ + + _validation = { + 'kubeconfigs': {'readonly': True}, + } + + _attribute_map = { + 'kubeconfigs': {'key': 'kubeconfigs', 'type': '[CredentialResult]'}, + } + + def __init__(self, **kwargs): + super(CredentialResults, self).__init__(**kwargs) + self.kubeconfigs = None + + +class Resource(Model): + """The Resource model definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + + +class ManagedCluster(Resource): + """Managed cluster. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :ivar provisioning_state: The current deployment or provisioning state, + which only appears in the response. + :vartype provisioning_state: str + :ivar max_agent_pools: The max number of agent pools for the managed + cluster. + :vartype max_agent_pools: int + :param kubernetes_version: Version of Kubernetes specified when creating + the managed cluster. + :type kubernetes_version: str + :param dns_prefix: DNS prefix specified when creating the managed cluster. + :type dns_prefix: str + :ivar fqdn: FQDN for the master pool. + :vartype fqdn: str + :ivar private_fqdn: FQDN of private cluster. + :vartype private_fqdn: str + :param agent_pool_profiles: Properties of the agent pool. + :type agent_pool_profiles: + list[~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAgentPoolProfile] + :param linux_profile: Profile for Linux VMs in the container service + cluster. + :type linux_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceLinuxProfile + :param windows_profile: Profile for Windows VMs in the container service + cluster. + :type windows_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterWindowsProfile + :param service_principal_profile: Information about a service principal + identity for the cluster to use for manipulating Azure APIs. + :type service_principal_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterServicePrincipalProfile + :param addon_profiles: Profile of managed cluster add-on. + :type addon_profiles: dict[str, + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAddonProfile] + :param node_resource_group: Name of the resource group containing agent + pool nodes. + :type node_resource_group: str + :param enable_rbac: Whether to enable Kubernetes Role-Based Access + Control. + :type enable_rbac: bool + :param enable_pod_security_policy: (PREVIEW) Whether to enable Kubernetes + Pod security policy. + :type enable_pod_security_policy: bool + :param network_profile: Profile of network configuration. + :type network_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceNetworkProfile + :param aad_profile: Profile of Azure Active Directory configuration. + :type aad_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAADProfile + :param auto_scaler_profile: Parameters to be applied to the + cluster-autoscaler when enabled + :type auto_scaler_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPropertiesAutoScalerProfile + :param api_server_access_profile: Access profile for managed cluster API + server. + :type api_server_access_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAPIServerAccessProfile + :param disk_encryption_set_id: ResourceId of the disk encryption set to + use for enabling encryption at rest. + :type disk_encryption_set_id: str + :param identity_profile: Identities associated with the cluster. + :type identity_profile: dict[str, + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPropertiesIdentityProfileValue] + :param identity: The identity of the managed cluster, if configured. + :type identity: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterIdentity + :param sku: The managed cluster SKU. + :type sku: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterSKU + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'max_agent_pools': {'readonly': True}, + 'fqdn': {'readonly': True}, + 'private_fqdn': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'max_agent_pools': {'key': 'properties.maxAgentPools', 'type': 'int'}, + 'kubernetes_version': {'key': 'properties.kubernetesVersion', 'type': 'str'}, + 'dns_prefix': {'key': 'properties.dnsPrefix', 'type': 'str'}, + 'fqdn': {'key': 'properties.fqdn', 'type': 'str'}, + 'private_fqdn': {'key': 'properties.privateFQDN', 'type': 'str'}, + 'agent_pool_profiles': {'key': 'properties.agentPoolProfiles', 'type': '[ManagedClusterAgentPoolProfile]'}, + 'linux_profile': {'key': 'properties.linuxProfile', 'type': 'ContainerServiceLinuxProfile'}, + 'windows_profile': {'key': 'properties.windowsProfile', 'type': 'ManagedClusterWindowsProfile'}, + 'service_principal_profile': {'key': 'properties.servicePrincipalProfile', 'type': 'ManagedClusterServicePrincipalProfile'}, + 'addon_profiles': {'key': 'properties.addonProfiles', 'type': '{ManagedClusterAddonProfile}'}, + 'node_resource_group': {'key': 'properties.nodeResourceGroup', 'type': 'str'}, + 'enable_rbac': {'key': 'properties.enableRBAC', 'type': 'bool'}, + 'enable_pod_security_policy': {'key': 'properties.enablePodSecurityPolicy', 'type': 'bool'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'ContainerServiceNetworkProfile'}, + 'aad_profile': {'key': 'properties.aadProfile', 'type': 'ManagedClusterAADProfile'}, + 'auto_scaler_profile': {'key': 'properties.autoScalerProfile', 'type': 'ManagedClusterPropertiesAutoScalerProfile'}, + 'api_server_access_profile': {'key': 'properties.apiServerAccessProfile', 'type': 'ManagedClusterAPIServerAccessProfile'}, + 'disk_encryption_set_id': {'key': 'properties.diskEncryptionSetID', 'type': 'str'}, + 'identity_profile': {'key': 'properties.identityProfile', 'type': '{ManagedClusterPropertiesIdentityProfileValue}'}, + 'identity': {'key': 'identity', 'type': 'ManagedClusterIdentity'}, + 'sku': {'key': 'sku', 'type': 'ManagedClusterSKU'}, + } + + def __init__(self, **kwargs): + super(ManagedCluster, self).__init__(**kwargs) + self.provisioning_state = None + self.max_agent_pools = None + self.kubernetes_version = kwargs.get('kubernetes_version', None) + self.dns_prefix = kwargs.get('dns_prefix', None) + self.fqdn = None + self.private_fqdn = None + self.agent_pool_profiles = kwargs.get('agent_pool_profiles', None) + self.linux_profile = kwargs.get('linux_profile', None) + self.windows_profile = kwargs.get('windows_profile', None) + self.service_principal_profile = kwargs.get('service_principal_profile', None) + self.addon_profiles = kwargs.get('addon_profiles', None) + self.node_resource_group = kwargs.get('node_resource_group', None) + self.enable_rbac = kwargs.get('enable_rbac', None) + self.enable_pod_security_policy = kwargs.get('enable_pod_security_policy', None) + self.network_profile = kwargs.get('network_profile', None) + self.aad_profile = kwargs.get('aad_profile', None) + self.auto_scaler_profile = kwargs.get('auto_scaler_profile', None) + self.api_server_access_profile = kwargs.get('api_server_access_profile', None) + self.disk_encryption_set_id = kwargs.get('disk_encryption_set_id', None) + self.identity_profile = kwargs.get('identity_profile', None) + self.identity = kwargs.get('identity', None) + self.sku = kwargs.get('sku', None) + + +class ManagedClusterAADProfile(Model): + """AADProfile specifies attributes for Azure Active Directory integration. + + :param managed: Whether to enable managed AAD. + :type managed: bool + :param admin_group_object_ids: AAD group object IDs that will have admin + role of the cluster. + :type admin_group_object_ids: list[str] + :param client_app_id: The client AAD application ID. + :type client_app_id: str + :param server_app_id: The server AAD application ID. + :type server_app_id: str + :param server_app_secret: The server AAD application secret. + :type server_app_secret: str + :param tenant_id: The AAD tenant ID to use for authentication. If not + specified, will use the tenant of the deployment subscription. + :type tenant_id: str + """ + + _attribute_map = { + 'managed': {'key': 'managed', 'type': 'bool'}, + 'admin_group_object_ids': {'key': 'adminGroupObjectIDs', 'type': '[str]'}, + 'client_app_id': {'key': 'clientAppID', 'type': 'str'}, + 'server_app_id': {'key': 'serverAppID', 'type': 'str'}, + 'server_app_secret': {'key': 'serverAppSecret', 'type': 'str'}, + 'tenant_id': {'key': 'tenantID', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterAADProfile, self).__init__(**kwargs) + self.managed = kwargs.get('managed', None) + self.admin_group_object_ids = kwargs.get('admin_group_object_ids', None) + self.client_app_id = kwargs.get('client_app_id', None) + self.server_app_id = kwargs.get('server_app_id', None) + self.server_app_secret = kwargs.get('server_app_secret', None) + self.tenant_id = kwargs.get('tenant_id', None) + + +class ManagedClusterAccessProfile(Resource): + """Managed cluster Access Profile. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param kube_config: Base64-encoded Kubernetes configuration file. + :type kube_config: bytearray + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'kube_config': {'key': 'properties.kubeConfig', 'type': 'bytearray'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterAccessProfile, self).__init__(**kwargs) + self.kube_config = kwargs.get('kube_config', None) + + +class ManagedClusterAddonProfile(Model): + """A Kubernetes add-on profile for a managed cluster. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether the add-on is enabled or not. + :type enabled: bool + :param config: Key-value pairs for configuring an add-on. + :type config: dict[str, str] + :ivar identity: Information of user assigned identity used by this add-on. + :vartype identity: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAddonProfileIdentity + """ + + _validation = { + 'enabled': {'required': True}, + 'identity': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'config': {'key': 'config', 'type': '{str}'}, + 'identity': {'key': 'identity', 'type': 'ManagedClusterAddonProfileIdentity'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterAddonProfile, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.config = kwargs.get('config', None) + self.identity = None + + +class UserAssignedIdentity(Model): + """UserAssignedIdentity. + + :param resource_id: The resource id of the user assigned identity. + :type resource_id: str + :param client_id: The client id of the user assigned identity. + :type client_id: str + :param object_id: The object id of the user assigned identity. + :type object_id: str + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UserAssignedIdentity, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.client_id = kwargs.get('client_id', None) + self.object_id = kwargs.get('object_id', None) + + +class ManagedClusterAddonProfileIdentity(UserAssignedIdentity): + """Information of user assigned identity used by this add-on. + + :param resource_id: The resource id of the user assigned identity. + :type resource_id: str + :param client_id: The client id of the user assigned identity. + :type client_id: str + :param object_id: The object id of the user assigned identity. + :type object_id: str + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterAddonProfileIdentity, self).__init__(**kwargs) + + +class ManagedClusterAgentPoolProfileProperties(Model): + """Properties for the container service agent pool profile. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. + :type count: int + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', + 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', + 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', + 'Standard_DS11', 'Standard_DS11_v2', 'Standard_DS11_v2_Promo', + 'Standard_DS12', 'Standard_DS12_v2', 'Standard_DS12_v2_Promo', + 'Standard_DS13', 'Standard_DS13-2_v2', 'Standard_DS13-4_v2', + 'Standard_DS13_v2', 'Standard_DS13_v2_Promo', 'Standard_DS14', + 'Standard_DS14-4_v2', 'Standard_DS14-8_v2', 'Standard_DS14_v2', + 'Standard_DS14_v2_Promo', 'Standard_DS15_v2', 'Standard_DS1_v2', + 'Standard_DS2', 'Standard_DS2_v2', 'Standard_DS2_v2_Promo', + 'Standard_DS3', 'Standard_DS3_v2', 'Standard_DS3_v2_Promo', + 'Standard_DS4', 'Standard_DS4_v2', 'Standard_DS4_v2_Promo', + 'Standard_DS5_v2', 'Standard_DS5_v2_Promo', 'Standard_E16_v3', + 'Standard_E16s_v3', 'Standard_E2_v3', 'Standard_E2s_v3', + 'Standard_E32-16s_v3', 'Standard_E32-8s_v3', 'Standard_E32_v3', + 'Standard_E32s_v3', 'Standard_E4_v3', 'Standard_E4s_v3', + 'Standard_E64-16s_v3', 'Standard_E64-32s_v3', 'Standard_E64_v3', + 'Standard_E64s_v3', 'Standard_E8_v3', 'Standard_E8s_v3', 'Standard_F1', + 'Standard_F16', 'Standard_F16s', 'Standard_F16s_v2', 'Standard_F1s', + 'Standard_F2', 'Standard_F2s', 'Standard_F2s_v2', 'Standard_F32s_v2', + 'Standard_F4', 'Standard_F4s', 'Standard_F4s_v2', 'Standard_F64s_v2', + 'Standard_F72s_v2', 'Standard_F8', 'Standard_F8s', 'Standard_F8s_v2', + 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', + 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', + 'Standard_GS4-4', 'Standard_GS4-8', 'Standard_GS5', 'Standard_GS5-16', + 'Standard_GS5-8', 'Standard_H16', 'Standard_H16m', 'Standard_H16mr', + 'Standard_H16r', 'Standard_H8', 'Standard_H8m', 'Standard_L16s', + 'Standard_L32s', 'Standard_L4s', 'Standard_L8s', 'Standard_M128-32ms', + 'Standard_M128-64ms', 'Standard_M128ms', 'Standard_M128s', + 'Standard_M64-16ms', 'Standard_M64-32ms', 'Standard_M64ms', + 'Standard_M64s', 'Standard_NC12', 'Standard_NC12s_v2', + 'Standard_NC12s_v3', 'Standard_NC24', 'Standard_NC24r', + 'Standard_NC24rs_v2', 'Standard_NC24rs_v3', 'Standard_NC24s_v2', + 'Standard_NC24s_v3', 'Standard_NC6', 'Standard_NC6s_v2', + 'Standard_NC6s_v3', 'Standard_ND12s', 'Standard_ND24rs', 'Standard_ND24s', + 'Standard_ND6s', 'Standard_NV12', 'Standard_NV24', 'Standard_NV6' + :type vm_size: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceVMSizeTypes + :param os_disk_size_gb: 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. + :type os_disk_size_gb: int + :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet + identifier. + :type vnet_subnet_id: str + :param max_pods: Maximum number of pods that can run on a node. + :type max_pods: int + :param os_type: OsType to be used to specify os type. Choose from Linux + and Windows. Default to Linux. Possible values include: 'Linux', + 'Windows'. Default value: "Linux" . + :type os_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OSType + :param max_count: Maximum number of nodes for auto-scaling + :type max_count: int + :param min_count: Minimum number of nodes for auto-scaling + :type min_count: int + :param enable_auto_scaling: Whether to enable auto-scaler + :type enable_auto_scaling: bool + :param type: AgentPoolType represents types of an agent pool. Possible + values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :type type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolType + :param mode: AgentPoolMode represents mode of an agent pool. Possible + values include: 'System', 'User' + :type mode: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolMode + :param orchestrator_version: Version of orchestrator specified when + creating the managed cluster. + :type orchestrator_version: str + :param node_image_version: Version of node image + :type node_image_version: str + :param upgrade_settings: Settings for upgrading the agentpool + :type upgrade_settings: + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolUpgradeSettings + :ivar provisioning_state: The current deployment or provisioning state, + which only appears in the response. + :vartype provisioning_state: str + :param availability_zones: Availability zones for nodes. Must use + VirtualMachineScaleSets AgentPoolType. + :type availability_zones: list[str] + :param enable_node_public_ip: Enable public IP for nodes + :type enable_node_public_ip: bool + :param scale_set_priority: ScaleSetPriority to be used to specify virtual + machine scale set priority. Default to regular. Possible values include: + 'Spot', 'Regular'. Default value: "Regular" . + :type scale_set_priority: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetPriority + :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to + specify eviction policy for Spot virtual machine scale set. Default to + Delete. Possible values include: 'Delete', 'Deallocate'. Default value: + "Delete" . + :type scale_set_eviction_policy: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetEvictionPolicy + :param spot_max_price: SpotMaxPrice to be used to specify the maximum + price you are willing to pay in US Dollars. Possible values are any + decimal value greater than zero or -1 which indicates default price to be + up-to on-demand. + :type spot_max_price: float + :param tags: Agent pool tags to be persisted on the agent pool virtual + machine scale set. + :type tags: dict[str, str] + :param node_labels: Agent pool node labels to be persisted across all + nodes in agent pool. + :type node_labels: dict[str, str] + :param node_taints: Taints added to new nodes during node pool create and + scale. For example, key=value:NoSchedule. + :type node_taints: list[str] + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'count': {'key': 'count', 'type': 'int'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'os_disk_size_gb': {'key': 'osDiskSizeGB', 'type': 'int'}, + 'vnet_subnet_id': {'key': 'vnetSubnetID', 'type': 'str'}, + 'max_pods': {'key': 'maxPods', 'type': 'int'}, + 'os_type': {'key': 'osType', 'type': 'str'}, + 'max_count': {'key': 'maxCount', 'type': 'int'}, + 'min_count': {'key': 'minCount', 'type': 'int'}, + 'enable_auto_scaling': {'key': 'enableAutoScaling', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'mode': {'key': 'mode', 'type': 'str'}, + 'orchestrator_version': {'key': 'orchestratorVersion', 'type': 'str'}, + 'node_image_version': {'key': 'nodeImageVersion', 'type': 'str'}, + 'upgrade_settings': {'key': 'upgradeSettings', 'type': 'AgentPoolUpgradeSettings'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + 'availability_zones': {'key': 'availabilityZones', 'type': '[str]'}, + 'enable_node_public_ip': {'key': 'enableNodePublicIP', 'type': 'bool'}, + 'scale_set_priority': {'key': 'scaleSetPriority', 'type': 'str'}, + 'scale_set_eviction_policy': {'key': 'scaleSetEvictionPolicy', 'type': 'str'}, + 'spot_max_price': {'key': 'spotMaxPrice', 'type': 'float'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'node_labels': {'key': 'nodeLabels', 'type': '{str}'}, + 'node_taints': {'key': 'nodeTaints', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterAgentPoolProfileProperties, self).__init__(**kwargs) + self.count = kwargs.get('count', None) + self.vm_size = kwargs.get('vm_size', None) + self.os_disk_size_gb = kwargs.get('os_disk_size_gb', None) + self.vnet_subnet_id = kwargs.get('vnet_subnet_id', None) + self.max_pods = kwargs.get('max_pods', None) + self.os_type = kwargs.get('os_type', "Linux") + self.max_count = kwargs.get('max_count', None) + self.min_count = kwargs.get('min_count', None) + self.enable_auto_scaling = kwargs.get('enable_auto_scaling', None) + self.type = kwargs.get('type', None) + self.mode = kwargs.get('mode', None) + self.orchestrator_version = kwargs.get('orchestrator_version', None) + self.node_image_version = kwargs.get('node_image_version', None) + self.upgrade_settings = kwargs.get('upgrade_settings', None) + self.provisioning_state = None + self.availability_zones = kwargs.get('availability_zones', None) + self.enable_node_public_ip = kwargs.get('enable_node_public_ip', None) + self.scale_set_priority = kwargs.get('scale_set_priority', "Regular") + self.scale_set_eviction_policy = kwargs.get('scale_set_eviction_policy', "Delete") + self.spot_max_price = kwargs.get('spot_max_price', None) + self.tags = kwargs.get('tags', None) + self.node_labels = kwargs.get('node_labels', None) + self.node_taints = kwargs.get('node_taints', None) + + +class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): + """Profile for the container service agent pool. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. + :type count: int + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', + 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', + 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', + 'Standard_DS11', 'Standard_DS11_v2', 'Standard_DS11_v2_Promo', + 'Standard_DS12', 'Standard_DS12_v2', 'Standard_DS12_v2_Promo', + 'Standard_DS13', 'Standard_DS13-2_v2', 'Standard_DS13-4_v2', + 'Standard_DS13_v2', 'Standard_DS13_v2_Promo', 'Standard_DS14', + 'Standard_DS14-4_v2', 'Standard_DS14-8_v2', 'Standard_DS14_v2', + 'Standard_DS14_v2_Promo', 'Standard_DS15_v2', 'Standard_DS1_v2', + 'Standard_DS2', 'Standard_DS2_v2', 'Standard_DS2_v2_Promo', + 'Standard_DS3', 'Standard_DS3_v2', 'Standard_DS3_v2_Promo', + 'Standard_DS4', 'Standard_DS4_v2', 'Standard_DS4_v2_Promo', + 'Standard_DS5_v2', 'Standard_DS5_v2_Promo', 'Standard_E16_v3', + 'Standard_E16s_v3', 'Standard_E2_v3', 'Standard_E2s_v3', + 'Standard_E32-16s_v3', 'Standard_E32-8s_v3', 'Standard_E32_v3', + 'Standard_E32s_v3', 'Standard_E4_v3', 'Standard_E4s_v3', + 'Standard_E64-16s_v3', 'Standard_E64-32s_v3', 'Standard_E64_v3', + 'Standard_E64s_v3', 'Standard_E8_v3', 'Standard_E8s_v3', 'Standard_F1', + 'Standard_F16', 'Standard_F16s', 'Standard_F16s_v2', 'Standard_F1s', + 'Standard_F2', 'Standard_F2s', 'Standard_F2s_v2', 'Standard_F32s_v2', + 'Standard_F4', 'Standard_F4s', 'Standard_F4s_v2', 'Standard_F64s_v2', + 'Standard_F72s_v2', 'Standard_F8', 'Standard_F8s', 'Standard_F8s_v2', + 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', + 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', + 'Standard_GS4-4', 'Standard_GS4-8', 'Standard_GS5', 'Standard_GS5-16', + 'Standard_GS5-8', 'Standard_H16', 'Standard_H16m', 'Standard_H16mr', + 'Standard_H16r', 'Standard_H8', 'Standard_H8m', 'Standard_L16s', + 'Standard_L32s', 'Standard_L4s', 'Standard_L8s', 'Standard_M128-32ms', + 'Standard_M128-64ms', 'Standard_M128ms', 'Standard_M128s', + 'Standard_M64-16ms', 'Standard_M64-32ms', 'Standard_M64ms', + 'Standard_M64s', 'Standard_NC12', 'Standard_NC12s_v2', + 'Standard_NC12s_v3', 'Standard_NC24', 'Standard_NC24r', + 'Standard_NC24rs_v2', 'Standard_NC24rs_v3', 'Standard_NC24s_v2', + 'Standard_NC24s_v3', 'Standard_NC6', 'Standard_NC6s_v2', + 'Standard_NC6s_v3', 'Standard_ND12s', 'Standard_ND24rs', 'Standard_ND24s', + 'Standard_ND6s', 'Standard_NV12', 'Standard_NV24', 'Standard_NV6' + :type vm_size: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceVMSizeTypes + :param os_disk_size_gb: 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. + :type os_disk_size_gb: int + :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet + identifier. + :type vnet_subnet_id: str + :param max_pods: Maximum number of pods that can run on a node. + :type max_pods: int + :param os_type: OsType to be used to specify os type. Choose from Linux + and Windows. Default to Linux. Possible values include: 'Linux', + 'Windows'. Default value: "Linux" . + :type os_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OSType + :param max_count: Maximum number of nodes for auto-scaling + :type max_count: int + :param min_count: Minimum number of nodes for auto-scaling + :type min_count: int + :param enable_auto_scaling: Whether to enable auto-scaler + :type enable_auto_scaling: bool + :param type: AgentPoolType represents types of an agent pool. Possible + values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :type type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolType + :param mode: AgentPoolMode represents mode of an agent pool. Possible + values include: 'System', 'User' + :type mode: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolMode + :param orchestrator_version: Version of orchestrator specified when + creating the managed cluster. + :type orchestrator_version: str + :param node_image_version: Version of node image + :type node_image_version: str + :param upgrade_settings: Settings for upgrading the agentpool + :type upgrade_settings: + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolUpgradeSettings + :ivar provisioning_state: The current deployment or provisioning state, + which only appears in the response. + :vartype provisioning_state: str + :param availability_zones: Availability zones for nodes. Must use + VirtualMachineScaleSets AgentPoolType. + :type availability_zones: list[str] + :param enable_node_public_ip: Enable public IP for nodes + :type enable_node_public_ip: bool + :param scale_set_priority: ScaleSetPriority to be used to specify virtual + machine scale set priority. Default to regular. Possible values include: + 'Spot', 'Regular'. Default value: "Regular" . + :type scale_set_priority: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetPriority + :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to + specify eviction policy for Spot virtual machine scale set. Default to + Delete. Possible values include: 'Delete', 'Deallocate'. Default value: + "Delete" . + :type scale_set_eviction_policy: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetEvictionPolicy + :param spot_max_price: SpotMaxPrice to be used to specify the maximum + price you are willing to pay in US Dollars. Possible values are any + decimal value greater than zero or -1 which indicates default price to be + up-to on-demand. + :type spot_max_price: float + :param tags: Agent pool tags to be persisted on the agent pool virtual + machine scale set. + :type tags: dict[str, str] + :param node_labels: Agent pool node labels to be persisted across all + nodes in agent pool. + :type node_labels: dict[str, str] + :param node_taints: Taints added to new nodes during node pool create and + scale. For example, key=value:NoSchedule. + :type node_taints: list[str] + :param name: Required. Unique name of the agent pool profile in the + context of the subscription and resource group. + :type name: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'name': {'required': True, 'pattern': r'^[a-z][a-z0-9]{0,11}$'}, + } + + _attribute_map = { + 'count': {'key': 'count', 'type': 'int'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'os_disk_size_gb': {'key': 'osDiskSizeGB', 'type': 'int'}, + 'vnet_subnet_id': {'key': 'vnetSubnetID', 'type': 'str'}, + 'max_pods': {'key': 'maxPods', 'type': 'int'}, + 'os_type': {'key': 'osType', 'type': 'str'}, + 'max_count': {'key': 'maxCount', 'type': 'int'}, + 'min_count': {'key': 'minCount', 'type': 'int'}, + 'enable_auto_scaling': {'key': 'enableAutoScaling', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'mode': {'key': 'mode', 'type': 'str'}, + 'orchestrator_version': {'key': 'orchestratorVersion', 'type': 'str'}, + 'node_image_version': {'key': 'nodeImageVersion', 'type': 'str'}, + 'upgrade_settings': {'key': 'upgradeSettings', 'type': 'AgentPoolUpgradeSettings'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + 'availability_zones': {'key': 'availabilityZones', 'type': '[str]'}, + 'enable_node_public_ip': {'key': 'enableNodePublicIP', 'type': 'bool'}, + 'scale_set_priority': {'key': 'scaleSetPriority', 'type': 'str'}, + 'scale_set_eviction_policy': {'key': 'scaleSetEvictionPolicy', 'type': 'str'}, + 'spot_max_price': {'key': 'spotMaxPrice', 'type': 'float'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'node_labels': {'key': 'nodeLabels', 'type': '{str}'}, + 'node_taints': {'key': 'nodeTaints', 'type': '[str]'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterAgentPoolProfile, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + + +class ManagedClusterAPIServerAccessProfile(Model): + """Access profile for managed cluster API server. + + :param authorized_ip_ranges: Authorized IP Ranges to kubernetes API + server. + :type authorized_ip_ranges: list[str] + :param enable_private_cluster: Whether to create the cluster as a private + cluster or not. + :type enable_private_cluster: bool + """ + + _attribute_map = { + 'authorized_ip_ranges': {'key': 'authorizedIPRanges', 'type': '[str]'}, + 'enable_private_cluster': {'key': 'enablePrivateCluster', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterAPIServerAccessProfile, self).__init__(**kwargs) + self.authorized_ip_ranges = kwargs.get('authorized_ip_ranges', None) + self.enable_private_cluster = kwargs.get('enable_private_cluster', None) + + +class ManagedClusterIdentity(Model): + """Identity for the managed cluster. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of the system assigned identity which + is used by master components. + :vartype principal_id: str + :ivar tenant_id: The tenant id of the system assigned identity which is + used by master components. + :vartype tenant_id: str + :param type: 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. Possible values include: + 'SystemAssigned', 'None' + :type type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ResourceIdentityType + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ResourceIdentityType'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = kwargs.get('type', None) + + +class ManagedClusterLoadBalancerProfile(Model): + """Profile of the managed cluster load balancer. + + :param managed_outbound_ips: Desired managed outbound IPs for the cluster + load balancer. + :type managed_outbound_ips: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterLoadBalancerProfileManagedOutboundIPs + :param outbound_ip_prefixes: Desired outbound IP Prefix resources for the + cluster load balancer. + :type outbound_ip_prefixes: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterLoadBalancerProfileOutboundIPPrefixes + :param outbound_ips: Desired outbound IP resources for the cluster load + balancer. + :type outbound_ips: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterLoadBalancerProfileOutboundIPs + :param effective_outbound_ips: The effective outbound IP resources of the + cluster load balancer. + :type effective_outbound_ips: + list[~azure.mgmt.containerservice.v2020_04_01.models.ResourceReference] + :param allocated_outbound_ports: Desired number of allocated SNAT ports + per VM. Allowed values must be in the range of 0 to 64000 (inclusive). The + default value is 0 which results in Azure dynamically allocating ports. + Default value: 0 . + :type allocated_outbound_ports: int + :param idle_timeout_in_minutes: Desired outbound flow idle timeout in + minutes. Allowed values must be in the range of 4 to 120 (inclusive). The + default value is 30 minutes. Default value: 30 . + :type idle_timeout_in_minutes: int + """ + + _validation = { + 'allocated_outbound_ports': {'maximum': 64000, 'minimum': 0}, + 'idle_timeout_in_minutes': {'maximum': 120, 'minimum': 4}, + } + + _attribute_map = { + 'managed_outbound_ips': {'key': 'managedOutboundIPs', 'type': 'ManagedClusterLoadBalancerProfileManagedOutboundIPs'}, + 'outbound_ip_prefixes': {'key': 'outboundIPPrefixes', 'type': 'ManagedClusterLoadBalancerProfileOutboundIPPrefixes'}, + 'outbound_ips': {'key': 'outboundIPs', 'type': 'ManagedClusterLoadBalancerProfileOutboundIPs'}, + 'effective_outbound_ips': {'key': 'effectiveOutboundIPs', 'type': '[ResourceReference]'}, + 'allocated_outbound_ports': {'key': 'allocatedOutboundPorts', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'idleTimeoutInMinutes', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterLoadBalancerProfile, self).__init__(**kwargs) + self.managed_outbound_ips = kwargs.get('managed_outbound_ips', None) + self.outbound_ip_prefixes = kwargs.get('outbound_ip_prefixes', None) + self.outbound_ips = kwargs.get('outbound_ips', None) + self.effective_outbound_ips = kwargs.get('effective_outbound_ips', None) + self.allocated_outbound_ports = kwargs.get('allocated_outbound_ports', 0) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', 30) + + +class ManagedClusterLoadBalancerProfileManagedOutboundIPs(Model): + """Desired managed outbound IPs for the cluster load balancer. + + :param count: Desired number of outbound IP created/managed by Azure for + the cluster load balancer. Allowed values must be in the range of 1 to 100 + (inclusive). The default value is 1. . Default value: 1 . + :type count: int + """ + + _validation = { + 'count': {'maximum': 100, 'minimum': 1}, + } + + _attribute_map = { + 'count': {'key': 'count', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterLoadBalancerProfileManagedOutboundIPs, self).__init__(**kwargs) + self.count = kwargs.get('count', 1) + + +class ManagedClusterLoadBalancerProfileOutboundIPPrefixes(Model): + """Desired outbound IP Prefix resources for the cluster load balancer. + + :param public_ip_prefixes: A list of public IP prefix resources. + :type public_ip_prefixes: + list[~azure.mgmt.containerservice.v2020_04_01.models.ResourceReference] + """ + + _attribute_map = { + 'public_ip_prefixes': {'key': 'publicIPPrefixes', 'type': '[ResourceReference]'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterLoadBalancerProfileOutboundIPPrefixes, self).__init__(**kwargs) + self.public_ip_prefixes = kwargs.get('public_ip_prefixes', None) + + +class ManagedClusterLoadBalancerProfileOutboundIPs(Model): + """Desired outbound IP resources for the cluster load balancer. + + :param public_ips: A list of public IP resources. + :type public_ips: + list[~azure.mgmt.containerservice.v2020_04_01.models.ResourceReference] + """ + + _attribute_map = { + 'public_ips': {'key': 'publicIPs', 'type': '[ResourceReference]'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterLoadBalancerProfileOutboundIPs, self).__init__(**kwargs) + self.public_ips = kwargs.get('public_ips', None) + + +class ManagedClusterPoolUpgradeProfile(Model): + """The list of available upgrade versions. + + All required parameters must be populated in order to send to Azure. + + :param kubernetes_version: Required. Kubernetes version (major, minor, + patch). + :type kubernetes_version: str + :param name: Pool name. + :type name: str + :param os_type: Required. OsType to be used to specify os type. Choose + from Linux and Windows. Default to Linux. Possible values include: + 'Linux', 'Windows'. Default value: "Linux" . + :type os_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OSType + :param upgrades: List of orchestrator types and versions available for + upgrade. + :type upgrades: + list[~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPoolUpgradeProfileUpgradesItem] + """ + + _validation = { + 'kubernetes_version': {'required': True}, + 'os_type': {'required': True}, + } + + _attribute_map = { + 'kubernetes_version': {'key': 'kubernetesVersion', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'str'}, + 'upgrades': {'key': 'upgrades', 'type': '[ManagedClusterPoolUpgradeProfileUpgradesItem]'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterPoolUpgradeProfile, self).__init__(**kwargs) + self.kubernetes_version = kwargs.get('kubernetes_version', None) + self.name = kwargs.get('name', None) + self.os_type = kwargs.get('os_type', "Linux") + self.upgrades = kwargs.get('upgrades', None) + + +class ManagedClusterPoolUpgradeProfileUpgradesItem(Model): + """ManagedClusterPoolUpgradeProfileUpgradesItem. + + :param kubernetes_version: Kubernetes version (major, minor, patch). + :type kubernetes_version: str + :param is_preview: Whether Kubernetes version is currently in preview. + :type is_preview: bool + """ + + _attribute_map = { + 'kubernetes_version': {'key': 'kubernetesVersion', 'type': 'str'}, + 'is_preview': {'key': 'isPreview', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterPoolUpgradeProfileUpgradesItem, self).__init__(**kwargs) + self.kubernetes_version = kwargs.get('kubernetes_version', None) + self.is_preview = kwargs.get('is_preview', None) + + +class ManagedClusterPropertiesAutoScalerProfile(Model): + """Parameters to be applied to the cluster-autoscaler when enabled. + + :param balance_similar_node_groups: + :type balance_similar_node_groups: str + :param scan_interval: + :type scan_interval: str + :param scale_down_delay_after_add: + :type scale_down_delay_after_add: str + :param scale_down_delay_after_delete: + :type scale_down_delay_after_delete: str + :param scale_down_delay_after_failure: + :type scale_down_delay_after_failure: str + :param scale_down_unneeded_time: + :type scale_down_unneeded_time: str + :param scale_down_unready_time: + :type scale_down_unready_time: str + :param scale_down_utilization_threshold: + :type scale_down_utilization_threshold: str + :param max_graceful_termination_sec: + :type max_graceful_termination_sec: str + """ + + _attribute_map = { + 'balance_similar_node_groups': {'key': 'balance-similar-node-groups', 'type': 'str'}, + 'scan_interval': {'key': 'scan-interval', 'type': 'str'}, + 'scale_down_delay_after_add': {'key': 'scale-down-delay-after-add', 'type': 'str'}, + 'scale_down_delay_after_delete': {'key': 'scale-down-delay-after-delete', 'type': 'str'}, + 'scale_down_delay_after_failure': {'key': 'scale-down-delay-after-failure', 'type': 'str'}, + 'scale_down_unneeded_time': {'key': 'scale-down-unneeded-time', 'type': 'str'}, + 'scale_down_unready_time': {'key': 'scale-down-unready-time', 'type': 'str'}, + 'scale_down_utilization_threshold': {'key': 'scale-down-utilization-threshold', 'type': 'str'}, + 'max_graceful_termination_sec': {'key': 'max-graceful-termination-sec', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterPropertiesAutoScalerProfile, self).__init__(**kwargs) + self.balance_similar_node_groups = kwargs.get('balance_similar_node_groups', None) + self.scan_interval = kwargs.get('scan_interval', None) + self.scale_down_delay_after_add = kwargs.get('scale_down_delay_after_add', None) + self.scale_down_delay_after_delete = kwargs.get('scale_down_delay_after_delete', None) + self.scale_down_delay_after_failure = kwargs.get('scale_down_delay_after_failure', None) + self.scale_down_unneeded_time = kwargs.get('scale_down_unneeded_time', None) + self.scale_down_unready_time = kwargs.get('scale_down_unready_time', None) + self.scale_down_utilization_threshold = kwargs.get('scale_down_utilization_threshold', None) + self.max_graceful_termination_sec = kwargs.get('max_graceful_termination_sec', None) + + +class ManagedClusterPropertiesIdentityProfileValue(UserAssignedIdentity): + """ManagedClusterPropertiesIdentityProfileValue. + + :param resource_id: The resource id of the user assigned identity. + :type resource_id: str + :param client_id: The client id of the user assigned identity. + :type client_id: str + :param object_id: The object id of the user assigned identity. + :type object_id: str + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterPropertiesIdentityProfileValue, self).__init__(**kwargs) + + +class ManagedClusterServicePrincipalProfile(Model): + """Information about a service principal identity for the cluster to use for + manipulating Azure APIs. + + All required parameters must be populated in order to send to Azure. + + :param client_id: Required. The ID for the service principal. + :type client_id: str + :param secret: The secret password associated with the service principal + in plain text. + :type secret: str + """ + + _validation = { + 'client_id': {'required': True}, + } + + _attribute_map = { + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'secret': {'key': 'secret', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterServicePrincipalProfile, self).__init__(**kwargs) + self.client_id = kwargs.get('client_id', None) + self.secret = kwargs.get('secret', None) + + +class ManagedClusterSKU(Model): + """ManagedClusterSKU. + + :param name: Name of a managed cluster SKU. Possible values include: + 'Basic' + :type name: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterSKUName + :param tier: Tier of a managed cluster SKU. Possible values include: + 'Paid', 'Free' + :type tier: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterSKUTier + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterSKU, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + + +class ManagedClusterUpgradeProfile(Model): + """The list of available upgrades for compute pools. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Id of upgrade profile. + :vartype id: str + :ivar name: Name of upgrade profile. + :vartype name: str + :ivar type: Type of upgrade profile. + :vartype type: str + :param control_plane_profile: Required. The list of available upgrade + versions for the control plane. + :type control_plane_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPoolUpgradeProfile + :param agent_pool_profiles: Required. The list of available upgrade + versions for agent pools. + :type agent_pool_profiles: + list[~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPoolUpgradeProfile] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'control_plane_profile': {'required': True}, + 'agent_pool_profiles': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'control_plane_profile': {'key': 'properties.controlPlaneProfile', 'type': 'ManagedClusterPoolUpgradeProfile'}, + 'agent_pool_profiles': {'key': 'properties.agentPoolProfiles', 'type': '[ManagedClusterPoolUpgradeProfile]'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterUpgradeProfile, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.control_plane_profile = kwargs.get('control_plane_profile', None) + self.agent_pool_profiles = kwargs.get('agent_pool_profiles', None) + + +class ManagedClusterWindowsProfile(Model): + """Profile for Windows VMs in the container service cluster. + + All required parameters must be populated in order to send to Azure. + + :param admin_username: Required. The administrator username to use for + Windows VMs. + :type admin_username: str + :param admin_password: The administrator password to use for Windows VMs. + :type admin_password: str + """ + + _validation = { + 'admin_username': {'required': True, 'pattern': r'^[a-zA-Z0-9]+([._]?[a-zA-Z0-9]+)*$'}, + 'admin_password': {'pattern': r'^(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%\^&\*\(\)])[a-zA-Z\d!@#$%\^&\*\(\)]{12,123}$'}, + } + + _attribute_map = { + 'admin_username': {'key': 'adminUsername', 'type': 'str'}, + 'admin_password': {'key': 'adminPassword', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedClusterWindowsProfile, self).__init__(**kwargs) + self.admin_username = kwargs.get('admin_username', None) + self.admin_password = kwargs.get('admin_password', None) + + +class OperationValue(Model): + """Describes the properties of a Compute Operation value. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar origin: The origin of the compute operation. + :vartype origin: str + :ivar name: The name of the compute operation. + :vartype name: str + :ivar operation: The display name of the compute operation. + :vartype operation: str + :ivar resource: The display name of the resource the operation applies to. + :vartype resource: str + :ivar description: The description of the operation. + :vartype description: str + :ivar provider: The resource provider for the operation. + :vartype provider: str + """ + + _validation = { + 'origin': {'readonly': True}, + 'name': {'readonly': True}, + 'operation': {'readonly': True}, + 'resource': {'readonly': True}, + 'description': {'readonly': True}, + 'provider': {'readonly': True}, + } + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'operation': {'key': 'display.operation', 'type': 'str'}, + 'resource': {'key': 'display.resource', 'type': 'str'}, + 'description': {'key': 'display.description', 'type': 'str'}, + 'provider': {'key': 'display.provider', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationValue, self).__init__(**kwargs) + self.origin = None + self.name = None + self.operation = None + self.resource = None + self.description = None + self.provider = None + + +class ResourceReference(Model): + """A reference to an Azure resource. + + :param id: The fully qualified Azure resource id. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ResourceReference, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + + +class TagsObject(Model): + """Tags object for patch operations. + + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(TagsObject, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_models_py3.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_models_py3.py new file mode 100644 index 000000000000..6a889fd0dcdb --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_models_py3.py @@ -0,0 +1,2093 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class SubResource(Model): + """Reference to another subresource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar type: Resource type + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(SubResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + + +class AgentPool(SubResource): + """Agent Pool. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. + :type count: int + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', + 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', + 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', + 'Standard_DS11', 'Standard_DS11_v2', 'Standard_DS11_v2_Promo', + 'Standard_DS12', 'Standard_DS12_v2', 'Standard_DS12_v2_Promo', + 'Standard_DS13', 'Standard_DS13-2_v2', 'Standard_DS13-4_v2', + 'Standard_DS13_v2', 'Standard_DS13_v2_Promo', 'Standard_DS14', + 'Standard_DS14-4_v2', 'Standard_DS14-8_v2', 'Standard_DS14_v2', + 'Standard_DS14_v2_Promo', 'Standard_DS15_v2', 'Standard_DS1_v2', + 'Standard_DS2', 'Standard_DS2_v2', 'Standard_DS2_v2_Promo', + 'Standard_DS3', 'Standard_DS3_v2', 'Standard_DS3_v2_Promo', + 'Standard_DS4', 'Standard_DS4_v2', 'Standard_DS4_v2_Promo', + 'Standard_DS5_v2', 'Standard_DS5_v2_Promo', 'Standard_E16_v3', + 'Standard_E16s_v3', 'Standard_E2_v3', 'Standard_E2s_v3', + 'Standard_E32-16s_v3', 'Standard_E32-8s_v3', 'Standard_E32_v3', + 'Standard_E32s_v3', 'Standard_E4_v3', 'Standard_E4s_v3', + 'Standard_E64-16s_v3', 'Standard_E64-32s_v3', 'Standard_E64_v3', + 'Standard_E64s_v3', 'Standard_E8_v3', 'Standard_E8s_v3', 'Standard_F1', + 'Standard_F16', 'Standard_F16s', 'Standard_F16s_v2', 'Standard_F1s', + 'Standard_F2', 'Standard_F2s', 'Standard_F2s_v2', 'Standard_F32s_v2', + 'Standard_F4', 'Standard_F4s', 'Standard_F4s_v2', 'Standard_F64s_v2', + 'Standard_F72s_v2', 'Standard_F8', 'Standard_F8s', 'Standard_F8s_v2', + 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', + 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', + 'Standard_GS4-4', 'Standard_GS4-8', 'Standard_GS5', 'Standard_GS5-16', + 'Standard_GS5-8', 'Standard_H16', 'Standard_H16m', 'Standard_H16mr', + 'Standard_H16r', 'Standard_H8', 'Standard_H8m', 'Standard_L16s', + 'Standard_L32s', 'Standard_L4s', 'Standard_L8s', 'Standard_M128-32ms', + 'Standard_M128-64ms', 'Standard_M128ms', 'Standard_M128s', + 'Standard_M64-16ms', 'Standard_M64-32ms', 'Standard_M64ms', + 'Standard_M64s', 'Standard_NC12', 'Standard_NC12s_v2', + 'Standard_NC12s_v3', 'Standard_NC24', 'Standard_NC24r', + 'Standard_NC24rs_v2', 'Standard_NC24rs_v3', 'Standard_NC24s_v2', + 'Standard_NC24s_v3', 'Standard_NC6', 'Standard_NC6s_v2', + 'Standard_NC6s_v3', 'Standard_ND12s', 'Standard_ND24rs', 'Standard_ND24s', + 'Standard_ND6s', 'Standard_NV12', 'Standard_NV24', 'Standard_NV6' + :type vm_size: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceVMSizeTypes + :param os_disk_size_gb: 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. + :type os_disk_size_gb: int + :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet + identifier. + :type vnet_subnet_id: str + :param max_pods: Maximum number of pods that can run on a node. + :type max_pods: int + :param os_type: OsType to be used to specify os type. Choose from Linux + and Windows. Default to Linux. Possible values include: 'Linux', + 'Windows'. Default value: "Linux" . + :type os_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OSType + :param max_count: Maximum number of nodes for auto-scaling + :type max_count: int + :param min_count: Minimum number of nodes for auto-scaling + :type min_count: int + :param enable_auto_scaling: Whether to enable auto-scaler + :type enable_auto_scaling: bool + :param agent_pool_type: AgentPoolType represents types of an agent pool. + Possible values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :type agent_pool_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolType + :param mode: AgentPoolMode represents mode of an agent pool. Possible + values include: 'System', 'User' + :type mode: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolMode + :param orchestrator_version: Version of orchestrator specified when + creating the managed cluster. + :type orchestrator_version: str + :param node_image_version: Version of node image + :type node_image_version: str + :param upgrade_settings: Settings for upgrading the agentpool + :type upgrade_settings: + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolUpgradeSettings + :ivar provisioning_state: The current deployment or provisioning state, + which only appears in the response. + :vartype provisioning_state: str + :param availability_zones: Availability zones for nodes. Must use + VirtualMachineScaleSets AgentPoolType. + :type availability_zones: list[str] + :param enable_node_public_ip: Enable public IP for nodes + :type enable_node_public_ip: bool + :param scale_set_priority: ScaleSetPriority to be used to specify virtual + machine scale set priority. Default to regular. Possible values include: + 'Spot', 'Regular'. Default value: "Regular" . + :type scale_set_priority: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetPriority + :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to + specify eviction policy for Spot virtual machine scale set. Default to + Delete. Possible values include: 'Delete', 'Deallocate'. Default value: + "Delete" . + :type scale_set_eviction_policy: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetEvictionPolicy + :param spot_max_price: SpotMaxPrice to be used to specify the maximum + price you are willing to pay in US Dollars. Possible values are any + decimal value greater than zero or -1 which indicates default price to be + up-to on-demand. + :type spot_max_price: float + :param tags: Agent pool tags to be persisted on the agent pool virtual + machine scale set. + :type tags: dict[str, str] + :param node_labels: Agent pool node labels to be persisted across all + nodes in agent pool. + :type node_labels: dict[str, str] + :param node_taints: Taints added to new nodes during node pool create and + scale. For example, key=value:NoSchedule. + :type node_taints: list[str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'count': {'key': 'properties.count', 'type': 'int'}, + 'vm_size': {'key': 'properties.vmSize', 'type': 'str'}, + 'os_disk_size_gb': {'key': 'properties.osDiskSizeGB', 'type': 'int'}, + 'vnet_subnet_id': {'key': 'properties.vnetSubnetID', 'type': 'str'}, + 'max_pods': {'key': 'properties.maxPods', 'type': 'int'}, + 'os_type': {'key': 'properties.osType', 'type': 'str'}, + 'max_count': {'key': 'properties.maxCount', 'type': 'int'}, + 'min_count': {'key': 'properties.minCount', 'type': 'int'}, + 'enable_auto_scaling': {'key': 'properties.enableAutoScaling', 'type': 'bool'}, + 'agent_pool_type': {'key': 'properties.type', 'type': 'str'}, + 'mode': {'key': 'properties.mode', 'type': 'str'}, + 'orchestrator_version': {'key': 'properties.orchestratorVersion', 'type': 'str'}, + 'node_image_version': {'key': 'properties.nodeImageVersion', 'type': 'str'}, + 'upgrade_settings': {'key': 'properties.upgradeSettings', 'type': 'AgentPoolUpgradeSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'availability_zones': {'key': 'properties.availabilityZones', 'type': '[str]'}, + 'enable_node_public_ip': {'key': 'properties.enableNodePublicIP', 'type': 'bool'}, + 'scale_set_priority': {'key': 'properties.scaleSetPriority', 'type': 'str'}, + 'scale_set_eviction_policy': {'key': 'properties.scaleSetEvictionPolicy', 'type': 'str'}, + 'spot_max_price': {'key': 'properties.spotMaxPrice', 'type': 'float'}, + 'tags': {'key': 'properties.tags', 'type': '{str}'}, + 'node_labels': {'key': 'properties.nodeLabels', 'type': '{str}'}, + 'node_taints': {'key': 'properties.nodeTaints', 'type': '[str]'}, + } + + def __init__(self, *, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, agent_pool_type=None, mode=None, orchestrator_version: str=None, node_image_version: str=None, upgrade_settings=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + super(AgentPool, self).__init__(**kwargs) + self.count = count + self.vm_size = vm_size + self.os_disk_size_gb = os_disk_size_gb + self.vnet_subnet_id = vnet_subnet_id + self.max_pods = max_pods + self.os_type = os_type + self.max_count = max_count + self.min_count = min_count + self.enable_auto_scaling = enable_auto_scaling + self.agent_pool_type = agent_pool_type + self.mode = mode + self.orchestrator_version = orchestrator_version + self.node_image_version = node_image_version + self.upgrade_settings = upgrade_settings + self.provisioning_state = None + self.availability_zones = availability_zones + self.enable_node_public_ip = enable_node_public_ip + self.scale_set_priority = scale_set_priority + self.scale_set_eviction_policy = scale_set_eviction_policy + self.spot_max_price = spot_max_price + self.tags = tags + self.node_labels = node_labels + self.node_taints = node_taints + + +class AgentPoolAvailableVersions(Model): + """The list of available versions for an agent pool. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Id of the agent pool available versions. + :vartype id: str + :ivar name: Name of the agent pool available versions. + :vartype name: str + :ivar type: Type of the agent pool available versions. + :vartype type: str + :param agent_pool_versions: List of versions available for agent pool. + :type agent_pool_versions: + list[~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'agent_pool_versions': {'key': 'properties.agentPoolVersions', 'type': '[AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem]'}, + } + + def __init__(self, *, agent_pool_versions=None, **kwargs) -> None: + super(AgentPoolAvailableVersions, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.agent_pool_versions = agent_pool_versions + + +class AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem(Model): + """AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem. + + :param default: Whether this version is the default agent pool version. + :type default: bool + :param kubernetes_version: Kubernetes version (major, minor, patch). + :type kubernetes_version: str + :param is_preview: Whether Kubernetes version is currently in preview. + :type is_preview: bool + """ + + _attribute_map = { + 'default': {'key': 'default', 'type': 'bool'}, + 'kubernetes_version': {'key': 'kubernetesVersion', 'type': 'str'}, + 'is_preview': {'key': 'isPreview', 'type': 'bool'}, + } + + def __init__(self, *, default: bool=None, kubernetes_version: str=None, is_preview: bool=None, **kwargs) -> None: + super(AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem, self).__init__(**kwargs) + self.default = default + self.kubernetes_version = kubernetes_version + self.is_preview = is_preview + + +class AgentPoolUpgradeProfile(Model): + """The list of available upgrades for an agent pool. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Id of the agent pool upgrade profile. + :vartype id: str + :ivar name: Name of the agent pool upgrade profile. + :vartype name: str + :ivar type: Type of the agent pool upgrade profile. + :vartype type: str + :param kubernetes_version: Required. Kubernetes version (major, minor, + patch). + :type kubernetes_version: str + :param os_type: Required. OsType to be used to specify os type. Choose + from Linux and Windows. Default to Linux. Possible values include: + 'Linux', 'Windows'. Default value: "Linux" . + :type os_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OSType + :param upgrades: List of orchestrator types and versions available for + upgrade. + :type upgrades: + list[~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolUpgradeProfilePropertiesUpgradesItem] + :param latest_node_image_version: LatestNodeImageVersion is the latest AKS + supported node image version. + :type latest_node_image_version: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'kubernetes_version': {'required': True}, + 'os_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kubernetes_version': {'key': 'properties.kubernetesVersion', 'type': 'str'}, + 'os_type': {'key': 'properties.osType', 'type': 'str'}, + 'upgrades': {'key': 'properties.upgrades', 'type': '[AgentPoolUpgradeProfilePropertiesUpgradesItem]'}, + 'latest_node_image_version': {'key': 'properties.latestNodeImageVersion', 'type': 'str'}, + } + + def __init__(self, *, kubernetes_version: str, os_type="Linux", upgrades=None, latest_node_image_version: str=None, **kwargs) -> None: + super(AgentPoolUpgradeProfile, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.kubernetes_version = kubernetes_version + self.os_type = os_type + self.upgrades = upgrades + self.latest_node_image_version = latest_node_image_version + + +class AgentPoolUpgradeProfilePropertiesUpgradesItem(Model): + """AgentPoolUpgradeProfilePropertiesUpgradesItem. + + :param kubernetes_version: Kubernetes version (major, minor, patch). + :type kubernetes_version: str + :param is_preview: Whether Kubernetes version is currently in preview. + :type is_preview: bool + """ + + _attribute_map = { + 'kubernetes_version': {'key': 'kubernetesVersion', 'type': 'str'}, + 'is_preview': {'key': 'isPreview', 'type': 'bool'}, + } + + def __init__(self, *, kubernetes_version: str=None, is_preview: bool=None, **kwargs) -> None: + super(AgentPoolUpgradeProfilePropertiesUpgradesItem, self).__init__(**kwargs) + self.kubernetes_version = kubernetes_version + self.is_preview = is_preview + + +class AgentPoolUpgradeSettings(Model): + """Settings for upgrading an agentpool. + + :param max_surge: Count or percentage of additional nodes to be added + during upgrade. If empty uses AKS default + :type max_surge: str + """ + + _attribute_map = { + 'max_surge': {'key': 'maxSurge', 'type': 'str'}, + } + + def __init__(self, *, max_surge: str=None, **kwargs) -> None: + super(AgentPoolUpgradeSettings, self).__init__(**kwargs) + self.max_surge = max_surge + + +class CloudError(Model): + """An error response from the Container service. + + :param error: Details about the error. + :type error: + ~azure.mgmt.containerservice.v2020_04_01.models.CloudErrorBody + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'CloudErrorBody'}, + } + + def __init__(self, *, error=None, **kwargs) -> None: + super(CloudError, self).__init__(**kwargs) + self.error = error + + +class CloudErrorException(HttpOperationError): + """Server responsed with exception of type: 'CloudError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(CloudErrorException, self).__init__(deserialize, response, 'CloudError', *args) + + +class CloudErrorBody(Model): + """An error response from the Container service. + + :param code: An identifier for the error. Codes are invariant and are + intended to be consumed programmatically. + :type code: str + :param message: A message describing the error, intended to be suitable + for display in a user interface. + :type message: str + :param target: The target of the particular error. For example, the name + of the property in error. + :type target: str + :param details: A list of additional details about the error. + :type details: + list[~azure.mgmt.containerservice.v2020_04_01.models.CloudErrorBody] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[CloudErrorBody]'}, + } + + def __init__(self, *, code: str=None, message: str=None, target: str=None, details=None, **kwargs) -> None: + super(CloudErrorBody, self).__init__(**kwargs) + self.code = code + self.message = message + self.target = target + self.details = details + + +class ContainerServiceDiagnosticsProfile(Model): + """Profile for diagnostics on the container service cluster. + + All required parameters must be populated in order to send to Azure. + + :param vm_diagnostics: Required. Profile for diagnostics on the container + service VMs. + :type vm_diagnostics: + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceVMDiagnostics + """ + + _validation = { + 'vm_diagnostics': {'required': True}, + } + + _attribute_map = { + 'vm_diagnostics': {'key': 'vmDiagnostics', 'type': 'ContainerServiceVMDiagnostics'}, + } + + def __init__(self, *, vm_diagnostics, **kwargs) -> None: + super(ContainerServiceDiagnosticsProfile, self).__init__(**kwargs) + self.vm_diagnostics = vm_diagnostics + + +class ContainerServiceLinuxProfile(Model): + """Profile for Linux VMs in the container service cluster. + + All required parameters must be populated in order to send to Azure. + + :param admin_username: Required. The administrator username to use for + Linux VMs. + :type admin_username: str + :param ssh: Required. SSH configuration for Linux-based VMs running on + Azure. + :type ssh: + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceSshConfiguration + """ + + _validation = { + 'admin_username': {'required': True, 'pattern': r'^[A-Za-z][-A-Za-z0-9_]*$'}, + 'ssh': {'required': True}, + } + + _attribute_map = { + 'admin_username': {'key': 'adminUsername', 'type': 'str'}, + 'ssh': {'key': 'ssh', 'type': 'ContainerServiceSshConfiguration'}, + } + + def __init__(self, *, admin_username: str, ssh, **kwargs) -> None: + super(ContainerServiceLinuxProfile, self).__init__(**kwargs) + self.admin_username = admin_username + self.ssh = ssh + + +class ContainerServiceMasterProfile(Model): + """Profile for the container service master. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param count: Number of masters (VMs) in the container service cluster. + Allowed values are 1, 3, and 5. The default value is 1. Default value: 1 . + :type count: int + :param dns_prefix: Required. DNS prefix to be used to create the FQDN for + the master pool. + :type dns_prefix: str + :param vm_size: Required. Size of agent VMs. Possible values include: + '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', + 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', + 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', + 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', + 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', + 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', + 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', + 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', + 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', + 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', + 'Standard_DS11', 'Standard_DS11_v2', 'Standard_DS11_v2_Promo', + 'Standard_DS12', 'Standard_DS12_v2', 'Standard_DS12_v2_Promo', + 'Standard_DS13', 'Standard_DS13-2_v2', 'Standard_DS13-4_v2', + 'Standard_DS13_v2', 'Standard_DS13_v2_Promo', 'Standard_DS14', + 'Standard_DS14-4_v2', 'Standard_DS14-8_v2', 'Standard_DS14_v2', + 'Standard_DS14_v2_Promo', 'Standard_DS15_v2', 'Standard_DS1_v2', + 'Standard_DS2', 'Standard_DS2_v2', 'Standard_DS2_v2_Promo', + 'Standard_DS3', 'Standard_DS3_v2', 'Standard_DS3_v2_Promo', + 'Standard_DS4', 'Standard_DS4_v2', 'Standard_DS4_v2_Promo', + 'Standard_DS5_v2', 'Standard_DS5_v2_Promo', 'Standard_E16_v3', + 'Standard_E16s_v3', 'Standard_E2_v3', 'Standard_E2s_v3', + 'Standard_E32-16s_v3', 'Standard_E32-8s_v3', 'Standard_E32_v3', + 'Standard_E32s_v3', 'Standard_E4_v3', 'Standard_E4s_v3', + 'Standard_E64-16s_v3', 'Standard_E64-32s_v3', 'Standard_E64_v3', + 'Standard_E64s_v3', 'Standard_E8_v3', 'Standard_E8s_v3', 'Standard_F1', + 'Standard_F16', 'Standard_F16s', 'Standard_F16s_v2', 'Standard_F1s', + 'Standard_F2', 'Standard_F2s', 'Standard_F2s_v2', 'Standard_F32s_v2', + 'Standard_F4', 'Standard_F4s', 'Standard_F4s_v2', 'Standard_F64s_v2', + 'Standard_F72s_v2', 'Standard_F8', 'Standard_F8s', 'Standard_F8s_v2', + 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', + 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', + 'Standard_GS4-4', 'Standard_GS4-8', 'Standard_GS5', 'Standard_GS5-16', + 'Standard_GS5-8', 'Standard_H16', 'Standard_H16m', 'Standard_H16mr', + 'Standard_H16r', 'Standard_H8', 'Standard_H8m', 'Standard_L16s', + 'Standard_L32s', 'Standard_L4s', 'Standard_L8s', 'Standard_M128-32ms', + 'Standard_M128-64ms', 'Standard_M128ms', 'Standard_M128s', + 'Standard_M64-16ms', 'Standard_M64-32ms', 'Standard_M64ms', + 'Standard_M64s', 'Standard_NC12', 'Standard_NC12s_v2', + 'Standard_NC12s_v3', 'Standard_NC24', 'Standard_NC24r', + 'Standard_NC24rs_v2', 'Standard_NC24rs_v3', 'Standard_NC24s_v2', + 'Standard_NC24s_v3', 'Standard_NC6', 'Standard_NC6s_v2', + 'Standard_NC6s_v3', 'Standard_ND12s', 'Standard_ND24rs', 'Standard_ND24s', + 'Standard_ND6s', 'Standard_NV12', 'Standard_NV24', 'Standard_NV6' + :type vm_size: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceVMSizeTypes + :param os_disk_size_gb: 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. + :type os_disk_size_gb: int + :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet + identifier. + :type vnet_subnet_id: str + :param first_consecutive_static_ip: FirstConsecutiveStaticIP used to + specify the first static ip of masters. Default value: "10.240.255.5" . + :type first_consecutive_static_ip: str + :param storage_profile: Storage profile specifies what kind of storage + used. Choose from StorageAccount and ManagedDisks. Leave it empty, we will + choose for you based on the orchestrator choice. Possible values include: + 'StorageAccount', 'ManagedDisks' + :type storage_profile: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceStorageProfileTypes + :ivar fqdn: FQDN for the master pool. + :vartype fqdn: str + """ + + _validation = { + 'dns_prefix': {'required': True}, + 'vm_size': {'required': True}, + 'fqdn': {'readonly': True}, + } + + _attribute_map = { + 'count': {'key': 'count', 'type': 'int'}, + 'dns_prefix': {'key': 'dnsPrefix', 'type': 'str'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'os_disk_size_gb': {'key': 'osDiskSizeGB', 'type': 'int'}, + 'vnet_subnet_id': {'key': 'vnetSubnetID', 'type': 'str'}, + 'first_consecutive_static_ip': {'key': 'firstConsecutiveStaticIP', 'type': 'str'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'str'}, + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + } + + def __init__(self, *, dns_prefix: str, vm_size, count: int=1, os_disk_size_gb: int=None, vnet_subnet_id: str=None, first_consecutive_static_ip: str="10.240.255.5", storage_profile=None, **kwargs) -> None: + super(ContainerServiceMasterProfile, self).__init__(**kwargs) + self.count = count + self.dns_prefix = dns_prefix + self.vm_size = vm_size + self.os_disk_size_gb = os_disk_size_gb + self.vnet_subnet_id = vnet_subnet_id + self.first_consecutive_static_ip = first_consecutive_static_ip + self.storage_profile = storage_profile + self.fqdn = None + + +class ContainerServiceNetworkProfile(Model): + """Profile of network configuration. + + :param network_plugin: Network plugin used for building Kubernetes + network. Possible values include: 'azure', 'kubenet'. Default value: + "kubenet" . + :type network_plugin: str or + ~azure.mgmt.containerservice.v2020_04_01.models.NetworkPlugin + :param network_policy: Network policy used for building Kubernetes + network. Possible values include: 'calico', 'azure' + :type network_policy: str or + ~azure.mgmt.containerservice.v2020_04_01.models.NetworkPolicy + :param network_mode: Network mode used for building Kubernetes network. + Possible values include: 'transparent', 'bridge' + :type network_mode: str or + ~azure.mgmt.containerservice.v2020_04_01.models.NetworkMode + :param pod_cidr: A CIDR notation IP range from which to assign pod IPs + when kubenet is used. Default value: "10.244.0.0/16" . + :type pod_cidr: str + :param service_cidr: A CIDR notation IP range from which to assign service + cluster IPs. It must not overlap with any Subnet IP ranges. Default value: + "10.0.0.0/16" . + :type service_cidr: str + :param dns_service_ip: An IP address assigned to the Kubernetes DNS + service. It must be within the Kubernetes service address range specified + in serviceCidr. Default value: "10.0.0.10" . + :type dns_service_ip: str + :param docker_bridge_cidr: A CIDR notation IP range assigned to the Docker + bridge network. It must not overlap with any Subnet IP ranges or the + Kubernetes service address range. Default value: "172.17.0.1/16" . + :type docker_bridge_cidr: str + :param outbound_type: The outbound (egress) routing method. Possible + values include: 'loadBalancer', 'userDefinedRouting'. Default value: + "loadBalancer" . + :type outbound_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OutboundType + :param load_balancer_sku: The load balancer sku for the managed cluster. + Possible values include: 'standard', 'basic' + :type load_balancer_sku: str or + ~azure.mgmt.containerservice.v2020_04_01.models.LoadBalancerSku + :param load_balancer_profile: Profile of the cluster load balancer. + :type load_balancer_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterLoadBalancerProfile + """ + + _validation = { + 'pod_cidr': {'pattern': r'^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$'}, + 'service_cidr': {'pattern': r'^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$'}, + 'dns_service_ip': {'pattern': r'^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$'}, + 'docker_bridge_cidr': {'pattern': r'^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$'}, + } + + _attribute_map = { + 'network_plugin': {'key': 'networkPlugin', 'type': 'str'}, + 'network_policy': {'key': 'networkPolicy', 'type': 'str'}, + 'network_mode': {'key': 'networkMode', 'type': 'str'}, + 'pod_cidr': {'key': 'podCidr', 'type': 'str'}, + 'service_cidr': {'key': 'serviceCidr', 'type': 'str'}, + 'dns_service_ip': {'key': 'dnsServiceIP', 'type': 'str'}, + 'docker_bridge_cidr': {'key': 'dockerBridgeCidr', 'type': 'str'}, + 'outbound_type': {'key': 'outboundType', 'type': 'str'}, + 'load_balancer_sku': {'key': 'loadBalancerSku', 'type': 'str'}, + 'load_balancer_profile': {'key': 'loadBalancerProfile', 'type': 'ManagedClusterLoadBalancerProfile'}, + } + + def __init__(self, *, network_plugin="kubenet", network_policy=None, network_mode=None, pod_cidr: str="10.244.0.0/16", service_cidr: str="10.0.0.0/16", dns_service_ip: str="10.0.0.10", docker_bridge_cidr: str="172.17.0.1/16", outbound_type="loadBalancer", load_balancer_sku=None, load_balancer_profile=None, **kwargs) -> None: + super(ContainerServiceNetworkProfile, self).__init__(**kwargs) + self.network_plugin = network_plugin + self.network_policy = network_policy + self.network_mode = network_mode + self.pod_cidr = pod_cidr + self.service_cidr = service_cidr + self.dns_service_ip = dns_service_ip + self.docker_bridge_cidr = docker_bridge_cidr + self.outbound_type = outbound_type + self.load_balancer_sku = load_balancer_sku + self.load_balancer_profile = load_balancer_profile + + +class ContainerServiceSshConfiguration(Model): + """SSH configuration for Linux-based VMs running on Azure. + + All required parameters must be populated in order to send to Azure. + + :param public_keys: Required. The list of SSH public keys used to + authenticate with Linux-based VMs. Only expect one key specified. + :type public_keys: + list[~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceSshPublicKey] + """ + + _validation = { + 'public_keys': {'required': True}, + } + + _attribute_map = { + 'public_keys': {'key': 'publicKeys', 'type': '[ContainerServiceSshPublicKey]'}, + } + + def __init__(self, *, public_keys, **kwargs) -> None: + super(ContainerServiceSshConfiguration, self).__init__(**kwargs) + self.public_keys = public_keys + + +class ContainerServiceSshPublicKey(Model): + """Contains information about SSH certificate public key data. + + All required parameters must be populated in order to send to Azure. + + :param key_data: Required. Certificate public key used to authenticate + with VMs through SSH. The certificate must be in PEM format with or + without headers. + :type key_data: str + """ + + _validation = { + 'key_data': {'required': True}, + } + + _attribute_map = { + 'key_data': {'key': 'keyData', 'type': 'str'}, + } + + def __init__(self, *, key_data: str, **kwargs) -> None: + super(ContainerServiceSshPublicKey, self).__init__(**kwargs) + self.key_data = key_data + + +class ContainerServiceVMDiagnostics(Model): + """Profile for diagnostics on the container service VMs. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether the VM diagnostic agent is provisioned + on the VM. + :type enabled: bool + :ivar storage_uri: The URI of the storage account where diagnostics are + stored. + :vartype storage_uri: str + """ + + _validation = { + 'enabled': {'required': True}, + 'storage_uri': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'storage_uri': {'key': 'storageUri', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool, **kwargs) -> None: + super(ContainerServiceVMDiagnostics, self).__init__(**kwargs) + self.enabled = enabled + self.storage_uri = None + + +class CredentialResult(Model): + """The credential result response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of the credential. + :vartype name: str + :ivar value: Base64-encoded Kubernetes configuration file. + :vartype value: bytearray + """ + + _validation = { + 'name': {'readonly': True}, + 'value': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'bytearray'}, + } + + def __init__(self, **kwargs) -> None: + super(CredentialResult, self).__init__(**kwargs) + self.name = None + self.value = None + + +class CredentialResults(Model): + """The list of credential result response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar kubeconfigs: Base64-encoded Kubernetes configuration file. + :vartype kubeconfigs: + list[~azure.mgmt.containerservice.v2020_04_01.models.CredentialResult] + """ + + _validation = { + 'kubeconfigs': {'readonly': True}, + } + + _attribute_map = { + 'kubeconfigs': {'key': 'kubeconfigs', 'type': '[CredentialResult]'}, + } + + def __init__(self, **kwargs) -> None: + super(CredentialResults, self).__init__(**kwargs) + self.kubeconfigs = None + + +class Resource(Model): + """The Resource model definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = location + self.tags = tags + + +class ManagedCluster(Resource): + """Managed cluster. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :ivar provisioning_state: The current deployment or provisioning state, + which only appears in the response. + :vartype provisioning_state: str + :ivar max_agent_pools: The max number of agent pools for the managed + cluster. + :vartype max_agent_pools: int + :param kubernetes_version: Version of Kubernetes specified when creating + the managed cluster. + :type kubernetes_version: str + :param dns_prefix: DNS prefix specified when creating the managed cluster. + :type dns_prefix: str + :ivar fqdn: FQDN for the master pool. + :vartype fqdn: str + :ivar private_fqdn: FQDN of private cluster. + :vartype private_fqdn: str + :param agent_pool_profiles: Properties of the agent pool. + :type agent_pool_profiles: + list[~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAgentPoolProfile] + :param linux_profile: Profile for Linux VMs in the container service + cluster. + :type linux_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceLinuxProfile + :param windows_profile: Profile for Windows VMs in the container service + cluster. + :type windows_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterWindowsProfile + :param service_principal_profile: Information about a service principal + identity for the cluster to use for manipulating Azure APIs. + :type service_principal_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterServicePrincipalProfile + :param addon_profiles: Profile of managed cluster add-on. + :type addon_profiles: dict[str, + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAddonProfile] + :param node_resource_group: Name of the resource group containing agent + pool nodes. + :type node_resource_group: str + :param enable_rbac: Whether to enable Kubernetes Role-Based Access + Control. + :type enable_rbac: bool + :param enable_pod_security_policy: (PREVIEW) Whether to enable Kubernetes + Pod security policy. + :type enable_pod_security_policy: bool + :param network_profile: Profile of network configuration. + :type network_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceNetworkProfile + :param aad_profile: Profile of Azure Active Directory configuration. + :type aad_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAADProfile + :param auto_scaler_profile: Parameters to be applied to the + cluster-autoscaler when enabled + :type auto_scaler_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPropertiesAutoScalerProfile + :param api_server_access_profile: Access profile for managed cluster API + server. + :type api_server_access_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAPIServerAccessProfile + :param disk_encryption_set_id: ResourceId of the disk encryption set to + use for enabling encryption at rest. + :type disk_encryption_set_id: str + :param identity_profile: Identities associated with the cluster. + :type identity_profile: dict[str, + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPropertiesIdentityProfileValue] + :param identity: The identity of the managed cluster, if configured. + :type identity: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterIdentity + :param sku: The managed cluster SKU. + :type sku: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterSKU + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'max_agent_pools': {'readonly': True}, + 'fqdn': {'readonly': True}, + 'private_fqdn': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'max_agent_pools': {'key': 'properties.maxAgentPools', 'type': 'int'}, + 'kubernetes_version': {'key': 'properties.kubernetesVersion', 'type': 'str'}, + 'dns_prefix': {'key': 'properties.dnsPrefix', 'type': 'str'}, + 'fqdn': {'key': 'properties.fqdn', 'type': 'str'}, + 'private_fqdn': {'key': 'properties.privateFQDN', 'type': 'str'}, + 'agent_pool_profiles': {'key': 'properties.agentPoolProfiles', 'type': '[ManagedClusterAgentPoolProfile]'}, + 'linux_profile': {'key': 'properties.linuxProfile', 'type': 'ContainerServiceLinuxProfile'}, + 'windows_profile': {'key': 'properties.windowsProfile', 'type': 'ManagedClusterWindowsProfile'}, + 'service_principal_profile': {'key': 'properties.servicePrincipalProfile', 'type': 'ManagedClusterServicePrincipalProfile'}, + 'addon_profiles': {'key': 'properties.addonProfiles', 'type': '{ManagedClusterAddonProfile}'}, + 'node_resource_group': {'key': 'properties.nodeResourceGroup', 'type': 'str'}, + 'enable_rbac': {'key': 'properties.enableRBAC', 'type': 'bool'}, + 'enable_pod_security_policy': {'key': 'properties.enablePodSecurityPolicy', 'type': 'bool'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'ContainerServiceNetworkProfile'}, + 'aad_profile': {'key': 'properties.aadProfile', 'type': 'ManagedClusterAADProfile'}, + 'auto_scaler_profile': {'key': 'properties.autoScalerProfile', 'type': 'ManagedClusterPropertiesAutoScalerProfile'}, + 'api_server_access_profile': {'key': 'properties.apiServerAccessProfile', 'type': 'ManagedClusterAPIServerAccessProfile'}, + 'disk_encryption_set_id': {'key': 'properties.diskEncryptionSetID', 'type': 'str'}, + 'identity_profile': {'key': 'properties.identityProfile', 'type': '{ManagedClusterPropertiesIdentityProfileValue}'}, + 'identity': {'key': 'identity', 'type': 'ManagedClusterIdentity'}, + 'sku': {'key': 'sku', 'type': 'ManagedClusterSKU'}, + } + + def __init__(self, *, location: str, tags=None, kubernetes_version: str=None, dns_prefix: str=None, agent_pool_profiles=None, linux_profile=None, windows_profile=None, service_principal_profile=None, addon_profiles=None, node_resource_group: str=None, enable_rbac: bool=None, enable_pod_security_policy: bool=None, network_profile=None, aad_profile=None, auto_scaler_profile=None, api_server_access_profile=None, disk_encryption_set_id: str=None, identity_profile=None, identity=None, sku=None, **kwargs) -> None: + super(ManagedCluster, self).__init__(location=location, tags=tags, **kwargs) + self.provisioning_state = None + self.max_agent_pools = None + self.kubernetes_version = kubernetes_version + self.dns_prefix = dns_prefix + self.fqdn = None + self.private_fqdn = None + self.agent_pool_profiles = agent_pool_profiles + self.linux_profile = linux_profile + self.windows_profile = windows_profile + self.service_principal_profile = service_principal_profile + self.addon_profiles = addon_profiles + self.node_resource_group = node_resource_group + self.enable_rbac = enable_rbac + self.enable_pod_security_policy = enable_pod_security_policy + self.network_profile = network_profile + self.aad_profile = aad_profile + self.auto_scaler_profile = auto_scaler_profile + self.api_server_access_profile = api_server_access_profile + self.disk_encryption_set_id = disk_encryption_set_id + self.identity_profile = identity_profile + self.identity = identity + self.sku = sku + + +class ManagedClusterAADProfile(Model): + """AADProfile specifies attributes for Azure Active Directory integration. + + :param managed: Whether to enable managed AAD. + :type managed: bool + :param admin_group_object_ids: AAD group object IDs that will have admin + role of the cluster. + :type admin_group_object_ids: list[str] + :param client_app_id: The client AAD application ID. + :type client_app_id: str + :param server_app_id: The server AAD application ID. + :type server_app_id: str + :param server_app_secret: The server AAD application secret. + :type server_app_secret: str + :param tenant_id: The AAD tenant ID to use for authentication. If not + specified, will use the tenant of the deployment subscription. + :type tenant_id: str + """ + + _attribute_map = { + 'managed': {'key': 'managed', 'type': 'bool'}, + 'admin_group_object_ids': {'key': 'adminGroupObjectIDs', 'type': '[str]'}, + 'client_app_id': {'key': 'clientAppID', 'type': 'str'}, + 'server_app_id': {'key': 'serverAppID', 'type': 'str'}, + 'server_app_secret': {'key': 'serverAppSecret', 'type': 'str'}, + 'tenant_id': {'key': 'tenantID', 'type': 'str'}, + } + + def __init__(self, *, managed: bool=None, admin_group_object_ids=None, client_app_id: str=None, server_app_id: str=None, server_app_secret: str=None, tenant_id: str=None, **kwargs) -> None: + super(ManagedClusterAADProfile, self).__init__(**kwargs) + self.managed = managed + self.admin_group_object_ids = admin_group_object_ids + self.client_app_id = client_app_id + self.server_app_id = server_app_id + self.server_app_secret = server_app_secret + self.tenant_id = tenant_id + + +class ManagedClusterAccessProfile(Resource): + """Managed cluster Access Profile. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param kube_config: Base64-encoded Kubernetes configuration file. + :type kube_config: bytearray + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'kube_config': {'key': 'properties.kubeConfig', 'type': 'bytearray'}, + } + + def __init__(self, *, location: str, tags=None, kube_config: bytearray=None, **kwargs) -> None: + super(ManagedClusterAccessProfile, self).__init__(location=location, tags=tags, **kwargs) + self.kube_config = kube_config + + +class ManagedClusterAddonProfile(Model): + """A Kubernetes add-on profile for a managed cluster. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether the add-on is enabled or not. + :type enabled: bool + :param config: Key-value pairs for configuring an add-on. + :type config: dict[str, str] + :ivar identity: Information of user assigned identity used by this add-on. + :vartype identity: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAddonProfileIdentity + """ + + _validation = { + 'enabled': {'required': True}, + 'identity': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'config': {'key': 'config', 'type': '{str}'}, + 'identity': {'key': 'identity', 'type': 'ManagedClusterAddonProfileIdentity'}, + } + + def __init__(self, *, enabled: bool, config=None, **kwargs) -> None: + super(ManagedClusterAddonProfile, self).__init__(**kwargs) + self.enabled = enabled + self.config = config + self.identity = None + + +class UserAssignedIdentity(Model): + """UserAssignedIdentity. + + :param resource_id: The resource id of the user assigned identity. + :type resource_id: str + :param client_id: The client id of the user assigned identity. + :type client_id: str + :param object_id: The object id of the user assigned identity. + :type object_id: str + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + } + + def __init__(self, *, resource_id: str=None, client_id: str=None, object_id: str=None, **kwargs) -> None: + super(UserAssignedIdentity, self).__init__(**kwargs) + self.resource_id = resource_id + self.client_id = client_id + self.object_id = object_id + + +class ManagedClusterAddonProfileIdentity(UserAssignedIdentity): + """Information of user assigned identity used by this add-on. + + :param resource_id: The resource id of the user assigned identity. + :type resource_id: str + :param client_id: The client id of the user assigned identity. + :type client_id: str + :param object_id: The object id of the user assigned identity. + :type object_id: str + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + } + + def __init__(self, *, resource_id: str=None, client_id: str=None, object_id: str=None, **kwargs) -> None: + super(ManagedClusterAddonProfileIdentity, self).__init__(resource_id=resource_id, client_id=client_id, object_id=object_id, **kwargs) + + +class ManagedClusterAgentPoolProfileProperties(Model): + """Properties for the container service agent pool profile. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. + :type count: int + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', + 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', + 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', + 'Standard_DS11', 'Standard_DS11_v2', 'Standard_DS11_v2_Promo', + 'Standard_DS12', 'Standard_DS12_v2', 'Standard_DS12_v2_Promo', + 'Standard_DS13', 'Standard_DS13-2_v2', 'Standard_DS13-4_v2', + 'Standard_DS13_v2', 'Standard_DS13_v2_Promo', 'Standard_DS14', + 'Standard_DS14-4_v2', 'Standard_DS14-8_v2', 'Standard_DS14_v2', + 'Standard_DS14_v2_Promo', 'Standard_DS15_v2', 'Standard_DS1_v2', + 'Standard_DS2', 'Standard_DS2_v2', 'Standard_DS2_v2_Promo', + 'Standard_DS3', 'Standard_DS3_v2', 'Standard_DS3_v2_Promo', + 'Standard_DS4', 'Standard_DS4_v2', 'Standard_DS4_v2_Promo', + 'Standard_DS5_v2', 'Standard_DS5_v2_Promo', 'Standard_E16_v3', + 'Standard_E16s_v3', 'Standard_E2_v3', 'Standard_E2s_v3', + 'Standard_E32-16s_v3', 'Standard_E32-8s_v3', 'Standard_E32_v3', + 'Standard_E32s_v3', 'Standard_E4_v3', 'Standard_E4s_v3', + 'Standard_E64-16s_v3', 'Standard_E64-32s_v3', 'Standard_E64_v3', + 'Standard_E64s_v3', 'Standard_E8_v3', 'Standard_E8s_v3', 'Standard_F1', + 'Standard_F16', 'Standard_F16s', 'Standard_F16s_v2', 'Standard_F1s', + 'Standard_F2', 'Standard_F2s', 'Standard_F2s_v2', 'Standard_F32s_v2', + 'Standard_F4', 'Standard_F4s', 'Standard_F4s_v2', 'Standard_F64s_v2', + 'Standard_F72s_v2', 'Standard_F8', 'Standard_F8s', 'Standard_F8s_v2', + 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', + 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', + 'Standard_GS4-4', 'Standard_GS4-8', 'Standard_GS5', 'Standard_GS5-16', + 'Standard_GS5-8', 'Standard_H16', 'Standard_H16m', 'Standard_H16mr', + 'Standard_H16r', 'Standard_H8', 'Standard_H8m', 'Standard_L16s', + 'Standard_L32s', 'Standard_L4s', 'Standard_L8s', 'Standard_M128-32ms', + 'Standard_M128-64ms', 'Standard_M128ms', 'Standard_M128s', + 'Standard_M64-16ms', 'Standard_M64-32ms', 'Standard_M64ms', + 'Standard_M64s', 'Standard_NC12', 'Standard_NC12s_v2', + 'Standard_NC12s_v3', 'Standard_NC24', 'Standard_NC24r', + 'Standard_NC24rs_v2', 'Standard_NC24rs_v3', 'Standard_NC24s_v2', + 'Standard_NC24s_v3', 'Standard_NC6', 'Standard_NC6s_v2', + 'Standard_NC6s_v3', 'Standard_ND12s', 'Standard_ND24rs', 'Standard_ND24s', + 'Standard_ND6s', 'Standard_NV12', 'Standard_NV24', 'Standard_NV6' + :type vm_size: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceVMSizeTypes + :param os_disk_size_gb: 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. + :type os_disk_size_gb: int + :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet + identifier. + :type vnet_subnet_id: str + :param max_pods: Maximum number of pods that can run on a node. + :type max_pods: int + :param os_type: OsType to be used to specify os type. Choose from Linux + and Windows. Default to Linux. Possible values include: 'Linux', + 'Windows'. Default value: "Linux" . + :type os_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OSType + :param max_count: Maximum number of nodes for auto-scaling + :type max_count: int + :param min_count: Minimum number of nodes for auto-scaling + :type min_count: int + :param enable_auto_scaling: Whether to enable auto-scaler + :type enable_auto_scaling: bool + :param type: AgentPoolType represents types of an agent pool. Possible + values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :type type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolType + :param mode: AgentPoolMode represents mode of an agent pool. Possible + values include: 'System', 'User' + :type mode: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolMode + :param orchestrator_version: Version of orchestrator specified when + creating the managed cluster. + :type orchestrator_version: str + :param node_image_version: Version of node image + :type node_image_version: str + :param upgrade_settings: Settings for upgrading the agentpool + :type upgrade_settings: + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolUpgradeSettings + :ivar provisioning_state: The current deployment or provisioning state, + which only appears in the response. + :vartype provisioning_state: str + :param availability_zones: Availability zones for nodes. Must use + VirtualMachineScaleSets AgentPoolType. + :type availability_zones: list[str] + :param enable_node_public_ip: Enable public IP for nodes + :type enable_node_public_ip: bool + :param scale_set_priority: ScaleSetPriority to be used to specify virtual + machine scale set priority. Default to regular. Possible values include: + 'Spot', 'Regular'. Default value: "Regular" . + :type scale_set_priority: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetPriority + :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to + specify eviction policy for Spot virtual machine scale set. Default to + Delete. Possible values include: 'Delete', 'Deallocate'. Default value: + "Delete" . + :type scale_set_eviction_policy: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetEvictionPolicy + :param spot_max_price: SpotMaxPrice to be used to specify the maximum + price you are willing to pay in US Dollars. Possible values are any + decimal value greater than zero or -1 which indicates default price to be + up-to on-demand. + :type spot_max_price: float + :param tags: Agent pool tags to be persisted on the agent pool virtual + machine scale set. + :type tags: dict[str, str] + :param node_labels: Agent pool node labels to be persisted across all + nodes in agent pool. + :type node_labels: dict[str, str] + :param node_taints: Taints added to new nodes during node pool create and + scale. For example, key=value:NoSchedule. + :type node_taints: list[str] + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'count': {'key': 'count', 'type': 'int'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'os_disk_size_gb': {'key': 'osDiskSizeGB', 'type': 'int'}, + 'vnet_subnet_id': {'key': 'vnetSubnetID', 'type': 'str'}, + 'max_pods': {'key': 'maxPods', 'type': 'int'}, + 'os_type': {'key': 'osType', 'type': 'str'}, + 'max_count': {'key': 'maxCount', 'type': 'int'}, + 'min_count': {'key': 'minCount', 'type': 'int'}, + 'enable_auto_scaling': {'key': 'enableAutoScaling', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'mode': {'key': 'mode', 'type': 'str'}, + 'orchestrator_version': {'key': 'orchestratorVersion', 'type': 'str'}, + 'node_image_version': {'key': 'nodeImageVersion', 'type': 'str'}, + 'upgrade_settings': {'key': 'upgradeSettings', 'type': 'AgentPoolUpgradeSettings'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + 'availability_zones': {'key': 'availabilityZones', 'type': '[str]'}, + 'enable_node_public_ip': {'key': 'enableNodePublicIP', 'type': 'bool'}, + 'scale_set_priority': {'key': 'scaleSetPriority', 'type': 'str'}, + 'scale_set_eviction_policy': {'key': 'scaleSetEvictionPolicy', 'type': 'str'}, + 'spot_max_price': {'key': 'spotMaxPrice', 'type': 'float'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'node_labels': {'key': 'nodeLabels', 'type': '{str}'}, + 'node_taints': {'key': 'nodeTaints', 'type': '[str]'}, + } + + def __init__(self, *, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, mode=None, orchestrator_version: str=None, node_image_version: str=None, upgrade_settings=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + super(ManagedClusterAgentPoolProfileProperties, self).__init__(**kwargs) + self.count = count + self.vm_size = vm_size + self.os_disk_size_gb = os_disk_size_gb + self.vnet_subnet_id = vnet_subnet_id + self.max_pods = max_pods + self.os_type = os_type + self.max_count = max_count + self.min_count = min_count + self.enable_auto_scaling = enable_auto_scaling + self.type = type + self.mode = mode + self.orchestrator_version = orchestrator_version + self.node_image_version = node_image_version + self.upgrade_settings = upgrade_settings + self.provisioning_state = None + self.availability_zones = availability_zones + self.enable_node_public_ip = enable_node_public_ip + self.scale_set_priority = scale_set_priority + self.scale_set_eviction_policy = scale_set_eviction_policy + self.spot_max_price = spot_max_price + self.tags = tags + self.node_labels = node_labels + self.node_taints = node_taints + + +class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): + """Profile for the container service agent pool. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param count: Number of agents (VMs) to host docker containers. Allowed + values must be in the range of 0 to 100 (inclusive) for user pools and in + the range of 1 to 100 (inclusive) for system pools. The default value is + 1. + :type count: int + :param vm_size: Size of agent VMs. Possible values include: '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', 'Standard_D12_v2', + 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', + 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', + 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', + 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', + 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', + 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', + 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', + 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', + 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', + 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', + 'Standard_DS11', 'Standard_DS11_v2', 'Standard_DS11_v2_Promo', + 'Standard_DS12', 'Standard_DS12_v2', 'Standard_DS12_v2_Promo', + 'Standard_DS13', 'Standard_DS13-2_v2', 'Standard_DS13-4_v2', + 'Standard_DS13_v2', 'Standard_DS13_v2_Promo', 'Standard_DS14', + 'Standard_DS14-4_v2', 'Standard_DS14-8_v2', 'Standard_DS14_v2', + 'Standard_DS14_v2_Promo', 'Standard_DS15_v2', 'Standard_DS1_v2', + 'Standard_DS2', 'Standard_DS2_v2', 'Standard_DS2_v2_Promo', + 'Standard_DS3', 'Standard_DS3_v2', 'Standard_DS3_v2_Promo', + 'Standard_DS4', 'Standard_DS4_v2', 'Standard_DS4_v2_Promo', + 'Standard_DS5_v2', 'Standard_DS5_v2_Promo', 'Standard_E16_v3', + 'Standard_E16s_v3', 'Standard_E2_v3', 'Standard_E2s_v3', + 'Standard_E32-16s_v3', 'Standard_E32-8s_v3', 'Standard_E32_v3', + 'Standard_E32s_v3', 'Standard_E4_v3', 'Standard_E4s_v3', + 'Standard_E64-16s_v3', 'Standard_E64-32s_v3', 'Standard_E64_v3', + 'Standard_E64s_v3', 'Standard_E8_v3', 'Standard_E8s_v3', 'Standard_F1', + 'Standard_F16', 'Standard_F16s', 'Standard_F16s_v2', 'Standard_F1s', + 'Standard_F2', 'Standard_F2s', 'Standard_F2s_v2', 'Standard_F32s_v2', + 'Standard_F4', 'Standard_F4s', 'Standard_F4s_v2', 'Standard_F64s_v2', + 'Standard_F72s_v2', 'Standard_F8', 'Standard_F8s', 'Standard_F8s_v2', + 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', + 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', + 'Standard_GS4-4', 'Standard_GS4-8', 'Standard_GS5', 'Standard_GS5-16', + 'Standard_GS5-8', 'Standard_H16', 'Standard_H16m', 'Standard_H16mr', + 'Standard_H16r', 'Standard_H8', 'Standard_H8m', 'Standard_L16s', + 'Standard_L32s', 'Standard_L4s', 'Standard_L8s', 'Standard_M128-32ms', + 'Standard_M128-64ms', 'Standard_M128ms', 'Standard_M128s', + 'Standard_M64-16ms', 'Standard_M64-32ms', 'Standard_M64ms', + 'Standard_M64s', 'Standard_NC12', 'Standard_NC12s_v2', + 'Standard_NC12s_v3', 'Standard_NC24', 'Standard_NC24r', + 'Standard_NC24rs_v2', 'Standard_NC24rs_v3', 'Standard_NC24s_v2', + 'Standard_NC24s_v3', 'Standard_NC6', 'Standard_NC6s_v2', + 'Standard_NC6s_v3', 'Standard_ND12s', 'Standard_ND24rs', 'Standard_ND24s', + 'Standard_ND6s', 'Standard_NV12', 'Standard_NV24', 'Standard_NV6' + :type vm_size: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ContainerServiceVMSizeTypes + :param os_disk_size_gb: 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. + :type os_disk_size_gb: int + :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet + identifier. + :type vnet_subnet_id: str + :param max_pods: Maximum number of pods that can run on a node. + :type max_pods: int + :param os_type: OsType to be used to specify os type. Choose from Linux + and Windows. Default to Linux. Possible values include: 'Linux', + 'Windows'. Default value: "Linux" . + :type os_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OSType + :param max_count: Maximum number of nodes for auto-scaling + :type max_count: int + :param min_count: Minimum number of nodes for auto-scaling + :type min_count: int + :param enable_auto_scaling: Whether to enable auto-scaler + :type enable_auto_scaling: bool + :param type: AgentPoolType represents types of an agent pool. Possible + values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :type type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolType + :param mode: AgentPoolMode represents mode of an agent pool. Possible + values include: 'System', 'User' + :type mode: str or + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolMode + :param orchestrator_version: Version of orchestrator specified when + creating the managed cluster. + :type orchestrator_version: str + :param node_image_version: Version of node image + :type node_image_version: str + :param upgrade_settings: Settings for upgrading the agentpool + :type upgrade_settings: + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolUpgradeSettings + :ivar provisioning_state: The current deployment or provisioning state, + which only appears in the response. + :vartype provisioning_state: str + :param availability_zones: Availability zones for nodes. Must use + VirtualMachineScaleSets AgentPoolType. + :type availability_zones: list[str] + :param enable_node_public_ip: Enable public IP for nodes + :type enable_node_public_ip: bool + :param scale_set_priority: ScaleSetPriority to be used to specify virtual + machine scale set priority. Default to regular. Possible values include: + 'Spot', 'Regular'. Default value: "Regular" . + :type scale_set_priority: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetPriority + :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to + specify eviction policy for Spot virtual machine scale set. Default to + Delete. Possible values include: 'Delete', 'Deallocate'. Default value: + "Delete" . + :type scale_set_eviction_policy: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ScaleSetEvictionPolicy + :param spot_max_price: SpotMaxPrice to be used to specify the maximum + price you are willing to pay in US Dollars. Possible values are any + decimal value greater than zero or -1 which indicates default price to be + up-to on-demand. + :type spot_max_price: float + :param tags: Agent pool tags to be persisted on the agent pool virtual + machine scale set. + :type tags: dict[str, str] + :param node_labels: Agent pool node labels to be persisted across all + nodes in agent pool. + :type node_labels: dict[str, str] + :param node_taints: Taints added to new nodes during node pool create and + scale. For example, key=value:NoSchedule. + :type node_taints: list[str] + :param name: Required. Unique name of the agent pool profile in the + context of the subscription and resource group. + :type name: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'name': {'required': True, 'pattern': r'^[a-z][a-z0-9]{0,11}$'}, + } + + _attribute_map = { + 'count': {'key': 'count', 'type': 'int'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'os_disk_size_gb': {'key': 'osDiskSizeGB', 'type': 'int'}, + 'vnet_subnet_id': {'key': 'vnetSubnetID', 'type': 'str'}, + 'max_pods': {'key': 'maxPods', 'type': 'int'}, + 'os_type': {'key': 'osType', 'type': 'str'}, + 'max_count': {'key': 'maxCount', 'type': 'int'}, + 'min_count': {'key': 'minCount', 'type': 'int'}, + 'enable_auto_scaling': {'key': 'enableAutoScaling', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'mode': {'key': 'mode', 'type': 'str'}, + 'orchestrator_version': {'key': 'orchestratorVersion', 'type': 'str'}, + 'node_image_version': {'key': 'nodeImageVersion', 'type': 'str'}, + 'upgrade_settings': {'key': 'upgradeSettings', 'type': 'AgentPoolUpgradeSettings'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + 'availability_zones': {'key': 'availabilityZones', 'type': '[str]'}, + 'enable_node_public_ip': {'key': 'enableNodePublicIP', 'type': 'bool'}, + 'scale_set_priority': {'key': 'scaleSetPriority', 'type': 'str'}, + 'scale_set_eviction_policy': {'key': 'scaleSetEvictionPolicy', 'type': 'str'}, + 'spot_max_price': {'key': 'spotMaxPrice', 'type': 'float'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'node_labels': {'key': 'nodeLabels', 'type': '{str}'}, + 'node_taints': {'key': 'nodeTaints', 'type': '[str]'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str, count: int=None, vm_size=None, os_disk_size_gb: int=None, vnet_subnet_id: str=None, max_pods: int=None, os_type="Linux", max_count: int=None, min_count: int=None, enable_auto_scaling: bool=None, type=None, mode=None, orchestrator_version: str=None, node_image_version: str=None, upgrade_settings=None, availability_zones=None, enable_node_public_ip: bool=None, scale_set_priority="Regular", scale_set_eviction_policy="Delete", spot_max_price: float=None, tags=None, node_labels=None, node_taints=None, **kwargs) -> None: + super(ManagedClusterAgentPoolProfile, self).__init__(count=count, vm_size=vm_size, os_disk_size_gb=os_disk_size_gb, vnet_subnet_id=vnet_subnet_id, max_pods=max_pods, os_type=os_type, max_count=max_count, min_count=min_count, enable_auto_scaling=enable_auto_scaling, type=type, mode=mode, orchestrator_version=orchestrator_version, node_image_version=node_image_version, upgrade_settings=upgrade_settings, availability_zones=availability_zones, enable_node_public_ip=enable_node_public_ip, scale_set_priority=scale_set_priority, scale_set_eviction_policy=scale_set_eviction_policy, spot_max_price=spot_max_price, tags=tags, node_labels=node_labels, node_taints=node_taints, **kwargs) + self.name = name + + +class ManagedClusterAPIServerAccessProfile(Model): + """Access profile for managed cluster API server. + + :param authorized_ip_ranges: Authorized IP Ranges to kubernetes API + server. + :type authorized_ip_ranges: list[str] + :param enable_private_cluster: Whether to create the cluster as a private + cluster or not. + :type enable_private_cluster: bool + """ + + _attribute_map = { + 'authorized_ip_ranges': {'key': 'authorizedIPRanges', 'type': '[str]'}, + 'enable_private_cluster': {'key': 'enablePrivateCluster', 'type': 'bool'}, + } + + def __init__(self, *, authorized_ip_ranges=None, enable_private_cluster: bool=None, **kwargs) -> None: + super(ManagedClusterAPIServerAccessProfile, self).__init__(**kwargs) + self.authorized_ip_ranges = authorized_ip_ranges + self.enable_private_cluster = enable_private_cluster + + +class ManagedClusterIdentity(Model): + """Identity for the managed cluster. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of the system assigned identity which + is used by master components. + :vartype principal_id: str + :ivar tenant_id: The tenant id of the system assigned identity which is + used by master components. + :vartype tenant_id: str + :param type: 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. Possible values include: + 'SystemAssigned', 'None' + :type type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ResourceIdentityType + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ResourceIdentityType'}, + } + + def __init__(self, *, type=None, **kwargs) -> None: + super(ManagedClusterIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = type + + +class ManagedClusterLoadBalancerProfile(Model): + """Profile of the managed cluster load balancer. + + :param managed_outbound_ips: Desired managed outbound IPs for the cluster + load balancer. + :type managed_outbound_ips: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterLoadBalancerProfileManagedOutboundIPs + :param outbound_ip_prefixes: Desired outbound IP Prefix resources for the + cluster load balancer. + :type outbound_ip_prefixes: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterLoadBalancerProfileOutboundIPPrefixes + :param outbound_ips: Desired outbound IP resources for the cluster load + balancer. + :type outbound_ips: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterLoadBalancerProfileOutboundIPs + :param effective_outbound_ips: The effective outbound IP resources of the + cluster load balancer. + :type effective_outbound_ips: + list[~azure.mgmt.containerservice.v2020_04_01.models.ResourceReference] + :param allocated_outbound_ports: Desired number of allocated SNAT ports + per VM. Allowed values must be in the range of 0 to 64000 (inclusive). The + default value is 0 which results in Azure dynamically allocating ports. + Default value: 0 . + :type allocated_outbound_ports: int + :param idle_timeout_in_minutes: Desired outbound flow idle timeout in + minutes. Allowed values must be in the range of 4 to 120 (inclusive). The + default value is 30 minutes. Default value: 30 . + :type idle_timeout_in_minutes: int + """ + + _validation = { + 'allocated_outbound_ports': {'maximum': 64000, 'minimum': 0}, + 'idle_timeout_in_minutes': {'maximum': 120, 'minimum': 4}, + } + + _attribute_map = { + 'managed_outbound_ips': {'key': 'managedOutboundIPs', 'type': 'ManagedClusterLoadBalancerProfileManagedOutboundIPs'}, + 'outbound_ip_prefixes': {'key': 'outboundIPPrefixes', 'type': 'ManagedClusterLoadBalancerProfileOutboundIPPrefixes'}, + 'outbound_ips': {'key': 'outboundIPs', 'type': 'ManagedClusterLoadBalancerProfileOutboundIPs'}, + 'effective_outbound_ips': {'key': 'effectiveOutboundIPs', 'type': '[ResourceReference]'}, + 'allocated_outbound_ports': {'key': 'allocatedOutboundPorts', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'idleTimeoutInMinutes', 'type': 'int'}, + } + + def __init__(self, *, managed_outbound_ips=None, outbound_ip_prefixes=None, outbound_ips=None, effective_outbound_ips=None, allocated_outbound_ports: int=0, idle_timeout_in_minutes: int=30, **kwargs) -> None: + super(ManagedClusterLoadBalancerProfile, self).__init__(**kwargs) + self.managed_outbound_ips = managed_outbound_ips + self.outbound_ip_prefixes = outbound_ip_prefixes + self.outbound_ips = outbound_ips + self.effective_outbound_ips = effective_outbound_ips + self.allocated_outbound_ports = allocated_outbound_ports + self.idle_timeout_in_minutes = idle_timeout_in_minutes + + +class ManagedClusterLoadBalancerProfileManagedOutboundIPs(Model): + """Desired managed outbound IPs for the cluster load balancer. + + :param count: Desired number of outbound IP created/managed by Azure for + the cluster load balancer. Allowed values must be in the range of 1 to 100 + (inclusive). The default value is 1. . Default value: 1 . + :type count: int + """ + + _validation = { + 'count': {'maximum': 100, 'minimum': 1}, + } + + _attribute_map = { + 'count': {'key': 'count', 'type': 'int'}, + } + + def __init__(self, *, count: int=1, **kwargs) -> None: + super(ManagedClusterLoadBalancerProfileManagedOutboundIPs, self).__init__(**kwargs) + self.count = count + + +class ManagedClusterLoadBalancerProfileOutboundIPPrefixes(Model): + """Desired outbound IP Prefix resources for the cluster load balancer. + + :param public_ip_prefixes: A list of public IP prefix resources. + :type public_ip_prefixes: + list[~azure.mgmt.containerservice.v2020_04_01.models.ResourceReference] + """ + + _attribute_map = { + 'public_ip_prefixes': {'key': 'publicIPPrefixes', 'type': '[ResourceReference]'}, + } + + def __init__(self, *, public_ip_prefixes=None, **kwargs) -> None: + super(ManagedClusterLoadBalancerProfileOutboundIPPrefixes, self).__init__(**kwargs) + self.public_ip_prefixes = public_ip_prefixes + + +class ManagedClusterLoadBalancerProfileOutboundIPs(Model): + """Desired outbound IP resources for the cluster load balancer. + + :param public_ips: A list of public IP resources. + :type public_ips: + list[~azure.mgmt.containerservice.v2020_04_01.models.ResourceReference] + """ + + _attribute_map = { + 'public_ips': {'key': 'publicIPs', 'type': '[ResourceReference]'}, + } + + def __init__(self, *, public_ips=None, **kwargs) -> None: + super(ManagedClusterLoadBalancerProfileOutboundIPs, self).__init__(**kwargs) + self.public_ips = public_ips + + +class ManagedClusterPoolUpgradeProfile(Model): + """The list of available upgrade versions. + + All required parameters must be populated in order to send to Azure. + + :param kubernetes_version: Required. Kubernetes version (major, minor, + patch). + :type kubernetes_version: str + :param name: Pool name. + :type name: str + :param os_type: Required. OsType to be used to specify os type. Choose + from Linux and Windows. Default to Linux. Possible values include: + 'Linux', 'Windows'. Default value: "Linux" . + :type os_type: str or + ~azure.mgmt.containerservice.v2020_04_01.models.OSType + :param upgrades: List of orchestrator types and versions available for + upgrade. + :type upgrades: + list[~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPoolUpgradeProfileUpgradesItem] + """ + + _validation = { + 'kubernetes_version': {'required': True}, + 'os_type': {'required': True}, + } + + _attribute_map = { + 'kubernetes_version': {'key': 'kubernetesVersion', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'str'}, + 'upgrades': {'key': 'upgrades', 'type': '[ManagedClusterPoolUpgradeProfileUpgradesItem]'}, + } + + def __init__(self, *, kubernetes_version: str, name: str=None, os_type="Linux", upgrades=None, **kwargs) -> None: + super(ManagedClusterPoolUpgradeProfile, self).__init__(**kwargs) + self.kubernetes_version = kubernetes_version + self.name = name + self.os_type = os_type + self.upgrades = upgrades + + +class ManagedClusterPoolUpgradeProfileUpgradesItem(Model): + """ManagedClusterPoolUpgradeProfileUpgradesItem. + + :param kubernetes_version: Kubernetes version (major, minor, patch). + :type kubernetes_version: str + :param is_preview: Whether Kubernetes version is currently in preview. + :type is_preview: bool + """ + + _attribute_map = { + 'kubernetes_version': {'key': 'kubernetesVersion', 'type': 'str'}, + 'is_preview': {'key': 'isPreview', 'type': 'bool'}, + } + + def __init__(self, *, kubernetes_version: str=None, is_preview: bool=None, **kwargs) -> None: + super(ManagedClusterPoolUpgradeProfileUpgradesItem, self).__init__(**kwargs) + self.kubernetes_version = kubernetes_version + self.is_preview = is_preview + + +class ManagedClusterPropertiesAutoScalerProfile(Model): + """Parameters to be applied to the cluster-autoscaler when enabled. + + :param balance_similar_node_groups: + :type balance_similar_node_groups: str + :param scan_interval: + :type scan_interval: str + :param scale_down_delay_after_add: + :type scale_down_delay_after_add: str + :param scale_down_delay_after_delete: + :type scale_down_delay_after_delete: str + :param scale_down_delay_after_failure: + :type scale_down_delay_after_failure: str + :param scale_down_unneeded_time: + :type scale_down_unneeded_time: str + :param scale_down_unready_time: + :type scale_down_unready_time: str + :param scale_down_utilization_threshold: + :type scale_down_utilization_threshold: str + :param max_graceful_termination_sec: + :type max_graceful_termination_sec: str + """ + + _attribute_map = { + 'balance_similar_node_groups': {'key': 'balance-similar-node-groups', 'type': 'str'}, + 'scan_interval': {'key': 'scan-interval', 'type': 'str'}, + 'scale_down_delay_after_add': {'key': 'scale-down-delay-after-add', 'type': 'str'}, + 'scale_down_delay_after_delete': {'key': 'scale-down-delay-after-delete', 'type': 'str'}, + 'scale_down_delay_after_failure': {'key': 'scale-down-delay-after-failure', 'type': 'str'}, + 'scale_down_unneeded_time': {'key': 'scale-down-unneeded-time', 'type': 'str'}, + 'scale_down_unready_time': {'key': 'scale-down-unready-time', 'type': 'str'}, + 'scale_down_utilization_threshold': {'key': 'scale-down-utilization-threshold', 'type': 'str'}, + 'max_graceful_termination_sec': {'key': 'max-graceful-termination-sec', 'type': 'str'}, + } + + def __init__(self, *, balance_similar_node_groups: str=None, scan_interval: str=None, scale_down_delay_after_add: str=None, scale_down_delay_after_delete: str=None, scale_down_delay_after_failure: str=None, scale_down_unneeded_time: str=None, scale_down_unready_time: str=None, scale_down_utilization_threshold: str=None, max_graceful_termination_sec: str=None, **kwargs) -> None: + super(ManagedClusterPropertiesAutoScalerProfile, self).__init__(**kwargs) + self.balance_similar_node_groups = balance_similar_node_groups + self.scan_interval = scan_interval + self.scale_down_delay_after_add = scale_down_delay_after_add + self.scale_down_delay_after_delete = scale_down_delay_after_delete + self.scale_down_delay_after_failure = scale_down_delay_after_failure + self.scale_down_unneeded_time = scale_down_unneeded_time + self.scale_down_unready_time = scale_down_unready_time + self.scale_down_utilization_threshold = scale_down_utilization_threshold + self.max_graceful_termination_sec = max_graceful_termination_sec + + +class ManagedClusterPropertiesIdentityProfileValue(UserAssignedIdentity): + """ManagedClusterPropertiesIdentityProfileValue. + + :param resource_id: The resource id of the user assigned identity. + :type resource_id: str + :param client_id: The client id of the user assigned identity. + :type client_id: str + :param object_id: The object id of the user assigned identity. + :type object_id: str + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + } + + def __init__(self, *, resource_id: str=None, client_id: str=None, object_id: str=None, **kwargs) -> None: + super(ManagedClusterPropertiesIdentityProfileValue, self).__init__(resource_id=resource_id, client_id=client_id, object_id=object_id, **kwargs) + + +class ManagedClusterServicePrincipalProfile(Model): + """Information about a service principal identity for the cluster to use for + manipulating Azure APIs. + + All required parameters must be populated in order to send to Azure. + + :param client_id: Required. The ID for the service principal. + :type client_id: str + :param secret: The secret password associated with the service principal + in plain text. + :type secret: str + """ + + _validation = { + 'client_id': {'required': True}, + } + + _attribute_map = { + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'secret': {'key': 'secret', 'type': 'str'}, + } + + def __init__(self, *, client_id: str, secret: str=None, **kwargs) -> None: + super(ManagedClusterServicePrincipalProfile, self).__init__(**kwargs) + self.client_id = client_id + self.secret = secret + + +class ManagedClusterSKU(Model): + """ManagedClusterSKU. + + :param name: Name of a managed cluster SKU. Possible values include: + 'Basic' + :type name: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterSKUName + :param tier: Tier of a managed cluster SKU. Possible values include: + 'Paid', 'Free' + :type tier: str or + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterSKUTier + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, *, name=None, tier=None, **kwargs) -> None: + super(ManagedClusterSKU, self).__init__(**kwargs) + self.name = name + self.tier = tier + + +class ManagedClusterUpgradeProfile(Model): + """The list of available upgrades for compute pools. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Id of upgrade profile. + :vartype id: str + :ivar name: Name of upgrade profile. + :vartype name: str + :ivar type: Type of upgrade profile. + :vartype type: str + :param control_plane_profile: Required. The list of available upgrade + versions for the control plane. + :type control_plane_profile: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPoolUpgradeProfile + :param agent_pool_profiles: Required. The list of available upgrade + versions for agent pools. + :type agent_pool_profiles: + list[~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPoolUpgradeProfile] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'control_plane_profile': {'required': True}, + 'agent_pool_profiles': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'control_plane_profile': {'key': 'properties.controlPlaneProfile', 'type': 'ManagedClusterPoolUpgradeProfile'}, + 'agent_pool_profiles': {'key': 'properties.agentPoolProfiles', 'type': '[ManagedClusterPoolUpgradeProfile]'}, + } + + def __init__(self, *, control_plane_profile, agent_pool_profiles, **kwargs) -> None: + super(ManagedClusterUpgradeProfile, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.control_plane_profile = control_plane_profile + self.agent_pool_profiles = agent_pool_profiles + + +class ManagedClusterWindowsProfile(Model): + """Profile for Windows VMs in the container service cluster. + + All required parameters must be populated in order to send to Azure. + + :param admin_username: Required. The administrator username to use for + Windows VMs. + :type admin_username: str + :param admin_password: The administrator password to use for Windows VMs. + :type admin_password: str + """ + + _validation = { + 'admin_username': {'required': True, 'pattern': r'^[a-zA-Z0-9]+([._]?[a-zA-Z0-9]+)*$'}, + 'admin_password': {'pattern': r'^(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%\^&\*\(\)])[a-zA-Z\d!@#$%\^&\*\(\)]{12,123}$'}, + } + + _attribute_map = { + 'admin_username': {'key': 'adminUsername', 'type': 'str'}, + 'admin_password': {'key': 'adminPassword', 'type': 'str'}, + } + + def __init__(self, *, admin_username: str, admin_password: str=None, **kwargs) -> None: + super(ManagedClusterWindowsProfile, self).__init__(**kwargs) + self.admin_username = admin_username + self.admin_password = admin_password + + +class OperationValue(Model): + """Describes the properties of a Compute Operation value. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar origin: The origin of the compute operation. + :vartype origin: str + :ivar name: The name of the compute operation. + :vartype name: str + :ivar operation: The display name of the compute operation. + :vartype operation: str + :ivar resource: The display name of the resource the operation applies to. + :vartype resource: str + :ivar description: The description of the operation. + :vartype description: str + :ivar provider: The resource provider for the operation. + :vartype provider: str + """ + + _validation = { + 'origin': {'readonly': True}, + 'name': {'readonly': True}, + 'operation': {'readonly': True}, + 'resource': {'readonly': True}, + 'description': {'readonly': True}, + 'provider': {'readonly': True}, + } + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'operation': {'key': 'display.operation', 'type': 'str'}, + 'resource': {'key': 'display.resource', 'type': 'str'}, + 'description': {'key': 'display.description', 'type': 'str'}, + 'provider': {'key': 'display.provider', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(OperationValue, self).__init__(**kwargs) + self.origin = None + self.name = None + self.operation = None + self.resource = None + self.description = None + self.provider = None + + +class ResourceReference(Model): + """A reference to an Azure resource. + + :param id: The fully qualified Azure resource id. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ResourceReference, self).__init__(**kwargs) + self.id = id + + +class TagsObject(Model): + """Tags object for patch operations. + + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(TagsObject, self).__init__(**kwargs) + self.tags = tags diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_paged_models.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_paged_models.py new file mode 100644 index 000000000000..a32e4c22c1bb --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/models/_paged_models.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class OperationValuePaged(Paged): + """ + A paging container for iterating over a list of :class:`OperationValue ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[OperationValue]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationValuePaged, self).__init__(*args, **kwargs) +class ManagedClusterPaged(Paged): + """ + A paging container for iterating over a list of :class:`ManagedCluster ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ManagedCluster]'} + } + + def __init__(self, *args, **kwargs): + + super(ManagedClusterPaged, self).__init__(*args, **kwargs) +class AgentPoolPaged(Paged): + """ + A paging container for iterating over a list of :class:`AgentPool ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AgentPool]'} + } + + def __init__(self, *args, **kwargs): + + super(AgentPoolPaged, self).__init__(*args, **kwargs) diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/__init__.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/__init__.py new file mode 100644 index 000000000000..d1b67f7888b7 --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/__init__.py @@ -0,0 +1,20 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from ._operations import Operations +from ._managed_clusters_operations import ManagedClustersOperations +from ._agent_pools_operations import AgentPoolsOperations + +__all__ = [ + 'Operations', + 'ManagedClustersOperations', + 'AgentPoolsOperations', +] diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/_agent_pools_operations.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/_agent_pools_operations.py new file mode 100644 index 000000000000..cac05714e4d0 --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/_agent_pools_operations.py @@ -0,0 +1,511 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class AgentPoolsOperations(object): + """AgentPoolsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2020-04-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2020-04-01" + + self.config = config + + def list( + self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of agent pools in the specified managed cluster. + + Gets a list of agent pools in the specified managed cluster. The + operation returns properties of each agent pool. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AgentPool + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolPaged[~azure.mgmt.containerservice.v2020_04_01.models.AgentPool] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AgentPoolPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools'} + + def get( + self, resource_group_name, resource_name, agent_pool_name, custom_headers=None, raw=False, **operation_config): + """Gets the agent pool. + + Gets the details of the agent pool by managed cluster and resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param agent_pool_name: The name of the agent pool. + :type agent_pool_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AgentPool or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.containerservice.v2020_04_01.models.AgentPool or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$'), + 'agentPoolName': self._serialize.url("agent_pool_name", agent_pool_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('AgentPool', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}'} + + + def _create_or_update_initial( + self, resource_group_name, resource_name, agent_pool_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$'), + 'agentPoolName': self._serialize.url("agent_pool_name", agent_pool_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AgentPool') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AgentPool', response) + if response.status_code == 201: + deserialized = self._deserialize('AgentPool', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, resource_name, agent_pool_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an agent pool. + + Creates or updates an agent pool in the specified managed cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param agent_pool_name: The name of the agent pool. + :type agent_pool_name: str + :param parameters: Parameters supplied to the Create or Update an + agent pool operation. + :type parameters: + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPool + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AgentPool or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerservice.v2020_04_01.models.AgentPool] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerservice.v2020_04_01.models.AgentPool]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + resource_name=resource_name, + agent_pool_name=agent_pool_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AgentPool', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}'} + + + def _delete_initial( + self, resource_group_name, resource_name, agent_pool_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$'), + 'agentPoolName': self._serialize.url("agent_pool_name", agent_pool_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, resource_name, agent_pool_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes an agent pool. + + Deletes the agent pool in the specified managed cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param agent_pool_name: The name of the agent pool. + :type agent_pool_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + resource_name=resource_name, + agent_pool_name=agent_pool_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}'} + + def get_upgrade_profile( + self, resource_group_name, resource_name, agent_pool_name, custom_headers=None, raw=False, **operation_config): + """Gets upgrade profile for an agent pool. + + Gets the details of the upgrade profile for an agent pool with a + specified resource group and managed cluster name. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param agent_pool_name: The name of the agent pool. + :type agent_pool_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AgentPoolUpgradeProfile or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolUpgradeProfile + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_upgrade_profile.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$'), + 'agentPoolName': self._serialize.url("agent_pool_name", agent_pool_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('AgentPoolUpgradeProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_upgrade_profile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeProfiles/default'} + + def get_available_agent_pool_versions( + self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of supported versions for the specified agent pool. + + Gets a list of supported versions for the specified agent pool. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AgentPoolAvailableVersions or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.AgentPoolAvailableVersions + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_available_agent_pool_versions.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('AgentPoolAvailableVersions', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_available_agent_pool_versions.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/availableAgentPoolVersions'} diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/_managed_clusters_operations.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/_managed_clusters_operations.py new file mode 100644 index 000000000000..8426985728b3 --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/_managed_clusters_operations.py @@ -0,0 +1,1139 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ManagedClustersOperations(object): + """ManagedClustersOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2020-04-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2020-04-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets a list of managed clusters in the specified subscription. + + Gets a list of managed clusters in the specified subscription. The + operation returns properties of each managed cluster. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ManagedCluster + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPaged[~azure.mgmt.containerservice.v2020_04_01.models.ManagedCluster] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ManagedClusterPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/managedClusters'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists managed clusters in the specified subscription and resource + group. + + Lists managed clusters in the specified subscription and resource + group. The operation returns properties of each managed cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ManagedCluster + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterPaged[~azure.mgmt.containerservice.v2020_04_01.models.ManagedCluster] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ManagedClusterPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters'} + + def get_upgrade_profile( + self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): + """Gets upgrade profile for a managed cluster. + + Gets the details of the upgrade profile for a managed cluster with a + specified resource group and name. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ManagedClusterUpgradeProfile or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterUpgradeProfile + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_upgrade_profile.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ManagedClusterUpgradeProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_upgrade_profile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/upgradeProfiles/default'} + + def get_access_profile( + self, resource_group_name, resource_name, role_name, custom_headers=None, raw=False, **operation_config): + """Gets an access profile of a managed cluster. + + Gets the accessProfile for the specified role name of the managed + cluster with a specified resource group and name. **WARNING**: This API + will be deprecated. Instead use + [ListClusterUserCredentials](https://docs.microsoft.com/en-us/rest/api/aks/managedclusters/listclusterusercredentials) + or + [ListClusterAdminCredentials](https://docs.microsoft.com/en-us/rest/api/aks/managedclusters/listclusteradmincredentials) + . + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param role_name: The name of the role for managed cluster + accessProfile resource. + :type role_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ManagedClusterAccessProfile or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAccessProfile + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_access_profile.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$'), + 'roleName': self._serialize.url("role_name", role_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ManagedClusterAccessProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_access_profile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/accessProfiles/{roleName}/listCredential'} + + def list_cluster_admin_credentials( + self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): + """Gets cluster admin credential of a managed cluster. + + Gets cluster admin credential of the managed cluster with a specified + resource group and name. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CredentialResults or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.CredentialResults or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_cluster_admin_credentials.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('CredentialResults', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_cluster_admin_credentials.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterAdminCredential'} + + def list_cluster_user_credentials( + self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): + """Gets cluster user credential of a managed cluster. + + Gets cluster user credential of the managed cluster with a specified + resource group and name. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CredentialResults or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.CredentialResults or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_cluster_user_credentials.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('CredentialResults', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_cluster_user_credentials.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterUserCredential'} + + def list_cluster_monitoring_user_credentials( + self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): + """Gets cluster monitoring user credential of a managed cluster. + + Gets cluster monitoring user credential of the managed cluster with a + specified resource group and name. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CredentialResults or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.CredentialResults or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_cluster_monitoring_user_credentials.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('CredentialResults', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_cluster_monitoring_user_credentials.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterMonitoringUserCredential'} + + def get( + self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): + """Gets a managed cluster. + + Gets the details of the managed cluster with a specified resource group + and name. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ManagedCluster or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.containerservice.v2020_04_01.models.ManagedCluster + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ManagedCluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}'} + + + def _create_or_update_initial( + self, resource_group_name, resource_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ManagedCluster') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ManagedCluster', response) + if response.status_code == 201: + deserialized = self._deserialize('ManagedCluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, resource_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a managed cluster. + + Creates or updates a managed cluster with the specified configuration + for agents and Kubernetes version. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param parameters: Parameters supplied to the Create or Update a + Managed Cluster operation. + :type parameters: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedCluster + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ManagedCluster or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerservice.v2020_04_01.models.ManagedCluster] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerservice.v2020_04_01.models.ManagedCluster]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + resource_name=resource_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ManagedCluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}'} + + + def _update_tags_initial( + self, resource_group_name, resource_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ManagedCluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, resource_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates tags on a managed cluster. + + Updates a managed cluster with the specified tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ManagedCluster or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerservice.v2020_04_01.models.ManagedCluster] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerservice.v2020_04_01.models.ManagedCluster]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + resource_name=resource_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ManagedCluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}'} + + + def _delete_initial( + self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, resource_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a managed cluster. + + Deletes the managed cluster with a specified resource group and name. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + resource_name=resource_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}'} + + + def _reset_service_principal_profile_initial( + self, resource_group_name, resource_name, client_id, secret=None, custom_headers=None, raw=False, **operation_config): + parameters = models.ManagedClusterServicePrincipalProfile(client_id=client_id, secret=secret) + + # Construct URL + url = self.reset_service_principal_profile.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ManagedClusterServicePrincipalProfile') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def reset_service_principal_profile( + self, resource_group_name, resource_name, client_id, secret=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Reset Service Principal Profile of a managed cluster. + + Update the service principal Profile for a managed cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param client_id: The ID for the service principal. + :type client_id: str + :param secret: The secret password associated with the service + principal in plain text. + :type secret: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_service_principal_profile_initial( + resource_group_name=resource_group_name, + resource_name=resource_name, + client_id=client_id, + secret=secret, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset_service_principal_profile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetServicePrincipalProfile'} + + + def _reset_aad_profile_initial( + self, resource_group_name, resource_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.reset_aad_profile.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ManagedClusterAADProfile') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def reset_aad_profile( + self, resource_group_name, resource_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Reset AAD Profile of a managed cluster. + + Update the AAD Profile for a managed cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param parameters: Parameters supplied to the Reset AAD Profile + operation for a Managed Cluster. + :type parameters: + ~azure.mgmt.containerservice.v2020_04_01.models.ManagedClusterAADProfile + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_aad_profile_initial( + resource_group_name=resource_group_name, + resource_name=resource_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset_aad_profile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetAADProfile'} + + + def _rotate_cluster_certificates_initial( + self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.rotate_cluster_certificates.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', min_length=1), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=63, min_length=1, pattern=r'^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def rotate_cluster_certificates( + self, resource_group_name, resource_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Rotate certificates of a managed cluster. + + Rotate certificates of a managed cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param resource_name: The name of the managed cluster resource. + :type resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._rotate_cluster_certificates_initial( + resource_group_name=resource_group_name, + resource_name=resource_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + rotate_cluster_certificates.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/rotateClusterCertificates'} diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/_operations.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/_operations.py new file mode 100644 index 000000000000..9e91e7c03210 --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/operations/_operations.py @@ -0,0 +1,102 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2020-04-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2020-04-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets a list of compute operations. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of OperationValue + :rtype: + ~azure.mgmt.containerservice.v2020_04_01.models.OperationValuePaged[~azure.mgmt.containerservice.v2020_04_01.models.OperationValue] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.OperationValuePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/providers/Microsoft.ContainerService/operations'} diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/version.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/version.py new file mode 100644 index 000000000000..b4a222521b46 --- /dev/null +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_04_01/version.py @@ -0,0 +1,13 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +VERSION = "2020-04-01" + diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/version.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/version.py index b4b29031bc85..376acad4586b 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/version.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/version.py @@ -9,4 +9,4 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "9.0.1" +VERSION = "9.1.0" diff --git a/sdk/containerservice/azure-mgmt-containerservice/setup.py b/sdk/containerservice/azure-mgmt-containerservice/setup.py index 628c0a2ab545..2f9b0177a7a5 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/setup.py +++ b/sdk/containerservice/azure-mgmt-containerservice/setup.py @@ -36,7 +36,9 @@ pass # Version extraction inspired from 'requests' -with open(os.path.join(package_folder_path, 'version.py'), 'r') as fd: +with open(os.path.join(package_folder_path, 'version.py') + if os.path.exists(os.path.join(package_folder_path, 'version.py')) + else os.path.join(package_folder_path, '_version.py'), 'r') as fd: version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', fd.read(), re.MULTILINE).group(1) diff --git a/sdk/containerservice/azure-mgmt-containerservice/tests/recordings/test_mgmt_containerservice.test_container.yaml b/sdk/containerservice/azure-mgmt-containerservice/tests/recordings/test_mgmt_containerservice.test_container.yaml index e3aa758144f9..d44cf40dd884 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/tests/recordings/test_mgmt_containerservice.test_container.yaml +++ b/sdk/containerservice/azure-mgmt-containerservice/tests/recordings/test_mgmt_containerservice.test_container.yaml @@ -1,1399 +1,1453 @@ interactions: - request: - body: '{"location": "westus2", "properties": {"orchestratorProfile": {"orchestratorType": - "DCOS"}, "masterProfile": {"count": 1, "dnsPrefix": "MasterPrefixTest", "vmSize": - "Standard_D2_v2"}, "agentPoolProfiles": [{"name": "agentpool0", "count": 3, - "vmSize": "Standard_A2_v2"}], "linuxProfile": {"adminUsername": "acslinuxadmin", - "ssh": {"publicKeys": [{"keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ== - azureuser@linuxvm"}]}}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['763'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + body: '{"location": "westus", "properties": {"addressSpace": {"addressPrefixes": + ["10.0.0.0/8"]}}}' + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '91' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/10.2.0 Azure-SDK-For-Python + accept-language: + - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8?api-version=2017-07-01 - response: - body: {string: "{\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ - ,\n \"location\": \"westus2\",\n \"name\": \"pycontainer665810f8\",\n \"\ - type\": \"Microsoft.ContainerService/ContainerServices\",\n \"properties\"\ - : {\n \"provisioningState\": \"Updating\",\n \"orchestratorProfile\":\ - \ {\n \"orchestratorType\": \"DCOS\",\n \"orchestratorVersion\": \"\ - 1.9.0\"\n },\n \"masterProfile\": {\n \"count\": 1,\n \"dnsPrefix\"\ - : \"MasterPrefixTest\",\n \"vmSize\": \"Standard_D2_v2\",\n \"firstConsecutiveStaticIP\"\ - : \"172.16.0.5\",\n \"storageProfile\": \"ManagedDisks\",\n \"fqdn\"\ - : \"masterprefixtest.westus2.cloudapp.azure.com\"\n },\n \"agentPoolProfiles\"\ - : [\n {\n \"name\": \"agentpool0\",\n \"count\": 3,\n \"vmSize\"\ - : \"Standard_A2_v2\",\n \"dnsPrefix\": \"\",\n \"fqdn\": \"\",\n \ - \ \"storageProfile\": \"ManagedDisks\",\n \"osType\": \"Linux\"\n \ - \ }\n ],\n \"linuxProfile\": {\n \"adminUsername\": \"acslinuxadmin\"\ - ,\n \"ssh\": {\n \"publicKeys\": [\n {\n \"keyData\": \"\ - ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ==\ - \ azureuser@linuxvm\"\n }\n ]\n }\n }\n }\n }"} - headers: - Azure-AsyncOperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30'] - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:53:46 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['1505'] - x-ms-correlation-request-id: [2f0fd7f4-a0c0-439f-811b-e18287cc66bf] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - x-ms-request-id: [0062da6b-ac14-4048-a662-e9604a748e51] - x-ms-routing-request-id: ['WESTUS:20171017T185347Z:2f0fd7f4-a0c0-439f-811b-e18287cc66bf'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 - response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:54:18 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [86250e3c-2656-4558-b903-e73bbc7709ee] - x-ms-ratelimit-remaining-subscription-reads: ['14991'] - x-ms-request-id: [c28a6b62-2d1d-43ab-84c5-f78cc43b4114] - x-ms-routing-request-id: ['WESTUS:20171017T185418Z:86250e3c-2656-4558-b903-e73bbc7709ee'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet?api-version=2020-04-01 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:54:49 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [c33a6cc4-4ab7-4858-be4f-dd845a5fb331] - x-ms-ratelimit-remaining-subscription-reads: ['14992'] - x-ms-request-id: [6df01aeb-65ab-42ce-a649-f457ad582ea2] - x-ms-routing-request-id: ['WESTUS2:20171017T185449Z:c33a6cc4-4ab7-4858-be4f-dd845a5fb331'] - status: {code: 200, message: OK} + body: + string: "{\r\n \"name\": \"vnet\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet\"\ + ,\r\n \"etag\": \"W/\\\"4b29dc8b-ef57-436f-b207-f3b2ed66d38f\\\"\",\r\n \ + \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ + \ \"resourceGuid\": \"0158381f-8a8b-401a-ab91-8c932ddd8708\",\r\n \"\ + addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/8\"\ + \r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\"\ + : [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ + : false\r\n }\r\n}" + headers: + azure-asyncnotification: + - Enabled + azure-asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/86003e89-bb5f-4814-9913-15de87860260?api-version=2020-04-01 + cache-control: + - no-cache + content-length: + - '668' + content-type: + - application/json; charset=utf-8 + date: + - Mon, 08 Jun 2020 15:52:11 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - a8ec7b40-167b-44ab-9eeb-ab3fb761c749 + x-ms-ratelimit-remaining-subscription-writes: + - '1199' + status: + code: 201 + message: Created - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/10.2.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/86003e89-bb5f-4814-9913-15de87860260?api-version=2020-04-01 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:55:20 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [50934c9f-2e27-4e94-b32d-61ac6193d4e0] - x-ms-ratelimit-remaining-subscription-reads: ['14977'] - x-ms-request-id: [9cb5e5b3-54b2-48f1-a281-de0c79dd53e8] - x-ms-routing-request-id: ['WESTUS2:20171017T185520Z:50934c9f-2e27-4e94-b32d-61ac6193d4e0'] - status: {code: 200, message: OK} + body: + string: "{\r\n \"status\": \"Succeeded\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '29' + content-type: + - application/json; charset=utf-8 + date: + - Mon, 08 Jun 2020 15:52:15 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - 483d710f-acc3-4ac5-a873-5c758b1a71d6 + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/10.2.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet?api-version=2020-04-01 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:55:51 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [bfe6b7c8-3aa0-4184-8dc9-e461bd38e73d] - x-ms-ratelimit-remaining-subscription-reads: ['14991'] - x-ms-request-id: [29d5de11-430e-4f38-81dd-8f32bd3d5433] - x-ms-routing-request-id: ['WESTUS2:20171017T185551Z:bfe6b7c8-3aa0-4184-8dc9-e461bd38e73d'] - status: {code: 200, message: OK} + body: + string: "{\r\n \"name\": \"vnet\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet\"\ + ,\r\n \"etag\": \"W/\\\"d3ef5414-3ec8-44f2-9168-2827d2d405a9\\\"\",\r\n \ + \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ + \ \"resourceGuid\": \"0158381f-8a8b-401a-ab91-8c932ddd8708\",\r\n \"\ + addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/8\"\ + \r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\"\ + : [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ + : false\r\n }\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '669' + content-type: + - application/json; charset=utf-8 + date: + - Mon, 08 Jun 2020 15:52:16 GMT + etag: + - W/"d3ef5414-3ec8-44f2-9168-2827d2d405a9" + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - 799e68ec-bc42-4be9-ae50-dfb78dd5403c + status: + code: 200 + message: OK - request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 - response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:56:21 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [ec2ae310-7212-45c0-8805-af1043315df3] - x-ms-ratelimit-remaining-subscription-reads: ['14984'] - x-ms-request-id: [4e7c041e-eff8-4e83-a1cd-bd1184cb3b9c] - x-ms-routing-request-id: ['WESTUS2:20171017T185622Z:ec2ae310-7212-45c0-8805-af1043315df3'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + body: '{"properties": {"addressPrefix": "10.0.0.0/8"}}' + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '47' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/10.2.0 Azure-SDK-For-Python + accept-language: + - en-US + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet?api-version=2020-04-01 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:56:52 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [f0ae742d-0698-4d00-b861-cfb80122fdec] - x-ms-ratelimit-remaining-subscription-reads: ['14988'] - x-ms-request-id: [56cf0b50-e579-4077-8b7e-1e57a19ed883] - x-ms-routing-request-id: ['WESTUS2:20171017T185653Z:f0ae742d-0698-4d00-b861-cfb80122fdec'] - status: {code: 200, message: OK} + body: + string: "{\r\n \"name\": \"v-subnet\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\r\n \"etag\": \"W/\\\"e70d1502-358e-4dbe-b166-4b71e88f789c\\\"\",\r\n \ + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ + addressPrefix\": \"10.0.0.0/8\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ + : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ + \n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" + headers: + azure-asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f0fe09ae-3369-4647-b286-9b6505ebf5e6?api-version=2020-04-01 + cache-control: + - no-cache + content-length: + - '559' + content-type: + - application/json; charset=utf-8 + date: + - Mon, 08 Jun 2020 15:52:16 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - cd57ff0d-9df6-4be4-a3cc-2b11825882ae + x-ms-ratelimit-remaining-subscription-writes: + - '1198' + status: + code: 201 + message: Created - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/10.2.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f0fe09ae-3369-4647-b286-9b6505ebf5e6?api-version=2020-04-01 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:57:23 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [bc4095b3-c8d8-4a0f-a867-0308961f5cfc] - x-ms-ratelimit-remaining-subscription-reads: ['14982'] - x-ms-request-id: [606bab65-b5d7-4d5a-b550-a70b39daf00d] - x-ms-routing-request-id: ['WESTUS2:20171017T185724Z:bc4095b3-c8d8-4a0f-a867-0308961f5cfc'] - status: {code: 200, message: OK} + body: + string: "{\r\n \"status\": \"Succeeded\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '29' + content-type: + - application/json; charset=utf-8 + date: + - Mon, 08 Jun 2020 15:52:20 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - 15d14953-39ce-4140-a0b9-a3f7729ce033 + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/10.2.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet?api-version=2020-04-01 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:57:55 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [6997c6e1-ae20-4bc8-9286-a8864ed09a86] - x-ms-ratelimit-remaining-subscription-reads: ['14977'] - x-ms-request-id: [e120ac60-b2fc-4332-a5b3-28cf3eb34504] - x-ms-routing-request-id: ['WESTUS2:20171017T185755Z:6997c6e1-ae20-4bc8-9286-a8864ed09a86'] - status: {code: 200, message: OK} + body: + string: "{\r\n \"name\": \"v-subnet\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\r\n \"etag\": \"W/\\\"1af8273f-4a45-40ef-80be-2dbb1de938e6\\\"\",\r\n \ + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ + addressPrefix\": \"10.0.0.0/8\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ + : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ + \n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '560' + content-type: + - application/json; charset=utf-8 + date: + - Mon, 08 Jun 2020 15:52:21 GMT + etag: + - W/"1af8273f-4a45-40ef-80be-2dbb1de938e6" + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - 6f5cf56e-746d-4d75-9cba-c08f18009f74 + status: + code: 200 + message: OK - request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + body: 'b''b\''{"location": "westus", "properties": {"orchestratorProfile": {"orchestratorType": + "Swarm"}, "masterProfile": {"count": 1, "dnsPrefix": "MasterPrefixTest", "vmSize": + "Standard_D2_v2", "vnetSubnetID": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet"}, + "agentPoolProfiles": [{"name": "agentpool0", "count": 3, "vmSize": "Standard_A2_v2", + "vnetSubnetID": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet"}], + "linuxProfile": {"adminUsername": "acslinuxadmin", "ssh": {"publicKeys": [{"keyData": + "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ== + azureuser@linuxvm"}]}}}}\''''' + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '1167' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python + accept-language: + - en-US + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8?api-version=2017-07-01 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:58:25 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [c89a5cf1-66de-455d-9ef7-d599044dd79e] - x-ms-ratelimit-remaining-subscription-reads: ['14945'] - x-ms-request-id: [bface3a8-42da-4f60-b88b-7052be37ec2f] - x-ms-routing-request-id: ['WESTUS2:20171017T185825Z:c89a5cf1-66de-455d-9ef7-d599044dd79e'] - status: {code: 200, message: OK} + body: + string: "{\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ + ,\n \"location\": \"westus\",\n \"name\": \"pycontainer665810f8\",\n \"\ + type\": \"Microsoft.ContainerService/ContainerServices\",\n \"properties\"\ + : {\n \"provisioningState\": \"Creating\",\n \"orchestratorProfile\":\ + \ {\n \"orchestratorType\": \"Swarm\"\n },\n \"masterProfile\": {\n\ + \ \"count\": 1,\n \"dnsPrefix\": \"MasterPrefixTest\",\n \"vmSize\"\ + : \"Standard_D2_v2\",\n \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"firstConsecutiveStaticIP\": \"10.240.255.5\",\n \"storageProfile\"\ + : \"ManagedDisks\"\n },\n \"agentPoolProfiles\": [\n {\n \"name\"\ + : \"agentpool0\",\n \"count\": 3,\n \"vmSize\": \"Standard_A2_v2\"\ + ,\n \"dnsPrefix\": \"\",\n \"fqdn\": \"\",\n \"storageProfile\"\ + : \"ManagedDisks\",\n \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"osType\": \"Linux\"\n }\n ],\n \"linuxProfile\": {\n \"\ + adminUsername\": \"acslinuxadmin\",\n \"ssh\": {\n \"publicKeys\":\ + \ [\n {\n \"keyData\": \"ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ==\ + \ azureuser@linuxvm\"\n }\n ]\n }\n }\n }\n }" + headers: + azure-asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/d0f8a6a4-8265-40cf-b81b-be87af4688c2?api-version=2016-03-30 + cache-control: + - no-cache + content-length: + - '1825' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:52:34 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-ms-ratelimit-remaining-subscription-writes: + - '1199' + status: + code: 201 + message: Created - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/d0f8a6a4-8265-40cf-b81b-be87af4688c2?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:58:56 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [742c1f27-2543-4e81-a564-429ddb1213e1] - x-ms-ratelimit-remaining-subscription-reads: ['14988'] - x-ms-request-id: [14acec88-ba40-44d5-9c85-b5fe3fb8aac9] - x-ms-routing-request-id: ['WESTUS2:20171017T185856Z:742c1f27-2543-4e81-a564-429ddb1213e1'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"a4a6f8d0-6582-cf40-b81b-be87af4688c2\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:52:33.4267015Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:53:05 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/d0f8a6a4-8265-40cf-b81b-be87af4688c2?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:59:26 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [d0068d95-4ffe-4040-8498-d92d728ce8e0] - x-ms-ratelimit-remaining-subscription-reads: ['14999'] - x-ms-request-id: [22bee806-c737-4763-8914-ccb2f9491647] - x-ms-routing-request-id: ['WESTUS2:20171017T185927Z:d0068d95-4ffe-4040-8498-d92d728ce8e0'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"a4a6f8d0-6582-cf40-b81b-be87af4688c2\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:52:33.4267015Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:53:35 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/d0f8a6a4-8265-40cf-b81b-be87af4688c2?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 18:59:58 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [6c0d977d-2e87-475a-8a4c-848789989955] - x-ms-ratelimit-remaining-subscription-reads: ['14986'] - x-ms-request-id: [2c4afe64-c6b7-49a3-b179-eae717eef9f5] - x-ms-routing-request-id: ['WESTUS2:20171017T185958Z:6c0d977d-2e87-475a-8a4c-848789989955'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"a4a6f8d0-6582-cf40-b81b-be87af4688c2\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:52:33.4267015Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:54:07 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/d0f8a6a4-8265-40cf-b81b-be87af4688c2?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:00:28 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [19d23878-b675-40b3-8b12-69917bbef9fb] - x-ms-ratelimit-remaining-subscription-reads: ['14994'] - x-ms-request-id: [cb2d39b6-175c-429a-b51c-5c95cbf7fb4d] - x-ms-routing-request-id: ['WESTUS2:20171017T190029Z:19d23878-b675-40b3-8b12-69917bbef9fb'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"a4a6f8d0-6582-cf40-b81b-be87af4688c2\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:52:33.4267015Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:54:37 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/d0f8a6a4-8265-40cf-b81b-be87af4688c2?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:01:00 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [8acf084e-4f93-400b-b7aa-09fb1a302929] - x-ms-ratelimit-remaining-subscription-reads: ['14989'] - x-ms-request-id: [21780136-ebfd-4378-b3eb-74aa540306f8] - x-ms-routing-request-id: ['WESTUS:20171017T190101Z:8acf084e-4f93-400b-b7aa-09fb1a302929'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"a4a6f8d0-6582-cf40-b81b-be87af4688c2\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:52:33.4267015Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:55:07 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/d0f8a6a4-8265-40cf-b81b-be87af4688c2?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:01:32 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [6422858b-21f1-4fce-bfb0-b9eab85ef614] - x-ms-ratelimit-remaining-subscription-reads: ['14984'] - x-ms-request-id: [ae51ba70-1785-4b12-84cc-ac91febc23ed] - x-ms-routing-request-id: ['WESTUS:20171017T190133Z:6422858b-21f1-4fce-bfb0-b9eab85ef614'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"a4a6f8d0-6582-cf40-b81b-be87af4688c2\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:52:33.4267015Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:55:38 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/0062da6b-ac14-4048-a662-e9604a748e51?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/d0f8a6a4-8265-40cf-b81b-be87af4688c2?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"6bda6200-14ac-4840-a662-e9604a748e51\",\n \"\ - status\": \"Succeeded\",\n \"startTime\": \"2017-10-17T18:53:46.3596786Z\"\ - ,\n \"endTime\": \"2017-10-17T19:01:32.8680673Z\"\n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:02:03 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['170'] - x-ms-correlation-request-id: [13b3143f-d3d9-4578-8508-82d8fbbdcbce] - x-ms-ratelimit-remaining-subscription-reads: ['14992'] - x-ms-request-id: [b1476334-7f4c-4bb5-b81b-efc910a9198c] - x-ms-routing-request-id: ['WESTUS2:20171017T190204Z:13b3143f-d3d9-4578-8508-82d8fbbdcbce'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"a4a6f8d0-6582-cf40-b81b-be87af4688c2\",\n \"status\"\ + : \"Succeeded\",\n \"startTime\": \"2020-06-08T15:52:33.4267015Z\",\n \"\ + endTime\": \"2020-06-08T15:55:44.9174575Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '170' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:56:09 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [7ab2f98c-b36c-11e7-8f56-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8?api-version=2017-07-01 response: - body: {string: "{\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ - ,\n \"location\": \"westus2\",\n \"name\": \"pycontainer665810f8\",\n \"\ + body: + string: "{\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ + ,\n \"location\": \"westus\",\n \"name\": \"pycontainer665810f8\",\n \"\ type\": \"Microsoft.ContainerService/ContainerServices\",\n \"properties\"\ : {\n \"provisioningState\": \"Succeeded\",\n \"orchestratorProfile\"\ - : {\n \"orchestratorType\": \"DCOS\",\n \"orchestratorVersion\": \"\ - 1.9.0\"\n },\n \"masterProfile\": {\n \"count\": 1,\n \"dnsPrefix\"\ - : \"MasterPrefixTest\",\n \"vmSize\": \"Standard_D2_v2\",\n \"firstConsecutiveStaticIP\"\ - : \"172.16.0.5\",\n \"storageProfile\": \"ManagedDisks\",\n \"fqdn\"\ - : \"masterprefixtest.westus2.cloudapp.azure.com\"\n },\n \"agentPoolProfiles\"\ - : [\n {\n \"name\": \"agentpool0\",\n \"count\": 3,\n \"vmSize\"\ - : \"Standard_A2_v2\",\n \"dnsPrefix\": \"\",\n \"fqdn\": \"\",\n \ - \ \"storageProfile\": \"ManagedDisks\",\n \"osType\": \"Linux\"\n \ - \ }\n ],\n \"linuxProfile\": {\n \"adminUsername\": \"acslinuxadmin\"\ - ,\n \"ssh\": {\n \"publicKeys\": [\n {\n \"keyData\": \"\ - ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ==\ - \ azureuser@linuxvm\"\n }\n ]\n }\n }\n }\n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:02:04 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['1506'] - x-ms-correlation-request-id: [a8c38a1a-1ff9-437f-a893-92f0ee68b89f] - x-ms-ratelimit-remaining-subscription-reads: ['14985'] - x-ms-request-id: [4a0f5178-2f25-4472-b4d1-08b0b23230e4] - x-ms-routing-request-id: ['WESTUS2:20171017T190205Z:a8c38a1a-1ff9-437f-a893-92f0ee68b89f'] - status: {code: 200, message: OK} + : {\n \"orchestratorType\": \"Swarm\"\n },\n \"masterProfile\": {\n\ + \ \"count\": 1,\n \"dnsPrefix\": \"MasterPrefixTest\",\n \"vmSize\"\ + : \"Standard_D2_v2\",\n \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"firstConsecutiveStaticIP\": \"10.240.255.5\",\n \"storageProfile\"\ + : \"ManagedDisks\",\n \"fqdn\": \"masterprefixtest.westus.cloudapp.azure.com\"\ + \n },\n \"agentPoolProfiles\": [\n {\n \"name\": \"agentpool0\"\ + ,\n \"count\": 3,\n \"vmSize\": \"Standard_A2_v2\",\n \"dnsPrefix\"\ + : \"\",\n \"fqdn\": \"\",\n \"storageProfile\": \"ManagedDisks\",\n\ + \ \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"osType\": \"Linux\"\n }\n ],\n \"linuxProfile\": {\n \"\ + adminUsername\": \"acslinuxadmin\",\n \"ssh\": {\n \"publicKeys\":\ + \ [\n {\n \"keyData\": \"ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ==\ + \ azureuser@linuxvm\"\n }\n ]\n }\n }\n }\n }" + headers: + cache-control: + - no-cache + content-length: + - '1884' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:56:10 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [a9a0c7a8-b36d-11e7-8380-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python + accept-language: + - en-US method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8?api-version=2017-07-01 response: - body: {string: "{\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ - ,\n \"location\": \"westus2\",\n \"name\": \"pycontainer665810f8\",\n \"\ + body: + string: "{\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ + ,\n \"location\": \"westus\",\n \"name\": \"pycontainer665810f8\",\n \"\ type\": \"Microsoft.ContainerService/ContainerServices\",\n \"properties\"\ : {\n \"provisioningState\": \"Succeeded\",\n \"orchestratorProfile\"\ - : {\n \"orchestratorType\": \"DCOS\",\n \"orchestratorVersion\": \"\ - 1.9.0\"\n },\n \"masterProfile\": {\n \"count\": 1,\n \"dnsPrefix\"\ - : \"MasterPrefixTest\",\n \"vmSize\": \"Standard_D2_v2\",\n \"firstConsecutiveStaticIP\"\ - : \"172.16.0.5\",\n \"storageProfile\": \"ManagedDisks\",\n \"fqdn\"\ - : \"masterprefixtest.westus2.cloudapp.azure.com\"\n },\n \"agentPoolProfiles\"\ - : [\n {\n \"name\": \"agentpool0\",\n \"count\": 3,\n \"vmSize\"\ - : \"Standard_A2_v2\",\n \"dnsPrefix\": \"\",\n \"fqdn\": \"\",\n \ - \ \"storageProfile\": \"ManagedDisks\",\n \"osType\": \"Linux\"\n \ - \ }\n ],\n \"linuxProfile\": {\n \"adminUsername\": \"acslinuxadmin\"\ - ,\n \"ssh\": {\n \"publicKeys\": [\n {\n \"keyData\": \"\ - ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ==\ - \ azureuser@linuxvm\"\n }\n ]\n }\n }\n }\n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:02:05 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['1506'] - x-ms-correlation-request-id: [90b3a123-6362-4c21-8c6f-c5e5c0f3008b] - x-ms-ratelimit-remaining-subscription-reads: ['14984'] - x-ms-request-id: [d1788e28-2d41-4251-a73e-f9b4740668a8] - x-ms-routing-request-id: ['WESTUS2:20171017T190205Z:90b3a123-6362-4c21-8c6f-c5e5c0f3008b'] - status: {code: 200, message: OK} + : {\n \"orchestratorType\": \"Swarm\"\n },\n \"masterProfile\": {\n\ + \ \"count\": 1,\n \"dnsPrefix\": \"MasterPrefixTest\",\n \"vmSize\"\ + : \"Standard_D2_v2\",\n \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"firstConsecutiveStaticIP\": \"10.240.255.5\",\n \"storageProfile\"\ + : \"ManagedDisks\",\n \"fqdn\": \"masterprefixtest.westus.cloudapp.azure.com\"\ + \n },\n \"agentPoolProfiles\": [\n {\n \"name\": \"agentpool0\"\ + ,\n \"count\": 3,\n \"vmSize\": \"Standard_A2_v2\",\n \"dnsPrefix\"\ + : \"\",\n \"fqdn\": \"\",\n \"storageProfile\": \"ManagedDisks\",\n\ + \ \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"osType\": \"Linux\"\n }\n ],\n \"linuxProfile\": {\n \"\ + adminUsername\": \"acslinuxadmin\",\n \"ssh\": {\n \"publicKeys\":\ + \ [\n {\n \"keyData\": \"ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ==\ + \ azureuser@linuxvm\"\n }\n ]\n }\n }\n }\n }" + headers: + cache-control: + - no-cache + content-length: + - '1884' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:56:11 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [aa1ef838-b36d-11e7-9a70-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python + accept-language: + - en-US method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices?api-version=2017-07-01 response: - body: {string: "{\n \"value\": [\n {\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ - ,\n \"location\": \"westus2\",\n \"name\": \"pycontainer665810f8\",\n\ + body: + string: "{\n \"value\": [\n {\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ + ,\n \"location\": \"westus\",\n \"name\": \"pycontainer665810f8\",\n\ \ \"type\": \"Microsoft.ContainerService/ContainerServices\",\n \"properties\"\ : {\n \"provisioningState\": \"Succeeded\",\n \"orchestratorProfile\"\ - : {\n \"orchestratorType\": \"DCOS\",\n \"orchestratorVersion\"\ - : \"1.9.0\"\n },\n \"masterProfile\": {\n \"count\": 1,\n \ - \ \"dnsPrefix\": \"MasterPrefixTest\",\n \"vmSize\": \"Standard_D2_v2\"\ - ,\n \"firstConsecutiveStaticIP\": \"172.16.0.5\",\n \"storageProfile\"\ - : \"ManagedDisks\",\n \"fqdn\": \"masterprefixtest.westus2.cloudapp.azure.com\"\ + : {\n \"orchestratorType\": \"Swarm\"\n },\n \"masterProfile\"\ + : {\n \"count\": 1,\n \"dnsPrefix\": \"MasterPrefixTest\",\n \ + \ \"vmSize\": \"Standard_D2_v2\",\n \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"firstConsecutiveStaticIP\": \"10.240.255.5\",\n \"storageProfile\"\ + : \"ManagedDisks\",\n \"fqdn\": \"masterprefixtest.westus.cloudapp.azure.com\"\ \n },\n \"agentPoolProfiles\": [\n {\n \"name\": \"agentpool0\"\ ,\n \"count\": 3,\n \"vmSize\": \"Standard_A2_v2\",\n \"\ dnsPrefix\": \"\",\n \"fqdn\": \"\",\n \"storageProfile\": \"\ - ManagedDisks\",\n \"osType\": \"Linux\"\n }\n ],\n \"linuxProfile\"\ - : {\n \"adminUsername\": \"acslinuxadmin\",\n \"ssh\": {\n \ + ManagedDisks\",\n \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"osType\": \"Linux\"\n }\n ],\n \"linuxProfile\":\ + \ {\n \"adminUsername\": \"acslinuxadmin\",\n \"ssh\": {\n \ \ \"publicKeys\": [\n {\n \"keyData\": \"ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ==\ \ azureuser@linuxvm\"\n }\n ]\n }\n }\n }\n }\n\ - \ ]\n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:02:06 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['1613'] - x-ms-correlation-request-id: [d721aa01-d46d-437f-80ad-6a2ab4f790e7] - x-ms-ratelimit-remaining-subscription-reads: ['14994'] - x-ms-request-id: [2cf81fc4-f438-499d-9a03-dc945a037817] - x-ms-routing-request-id: ['WESTUS2:20171017T190206Z:d721aa01-d46d-437f-80ad-6a2ab4f790e7'] - status: {code: 200, message: OK} + \ ]\n }" + headers: + cache-control: + - no-cache + content-length: + - '1993' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:56:11 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [aaa7512e-b36d-11e7-ac81-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python + accept-language: + - en-US method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/containerServices?api-version=2017-07-01 response: - body: {string: "{\n \"value\": [\n {\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/lmazuel-ci-msi/providers/Microsoft.ContainerService/containerServices/lmazuel-ci-msi\"\ - ,\n \"location\": \"westus2\",\n \"name\": \"lmazuel-ci-msi\",\n \ - \ \"type\": \"Microsoft.ContainerService/ContainerServices\",\n \"properties\"\ - : {\n \"provisioningState\": \"Succeeded\",\n \"orchestratorProfile\"\ - : {\n \"orchestratorType\": \"DCOS\",\n \"orchestratorVersion\"\ - : \"1.9.0\"\n },\n \"masterProfile\": {\n \"count\": 1,\n \ - \ \"dnsPrefix\": \"lmazuel-ci-msimgmt\",\n \"vmSize\": \"Standard_D2_v2\"\ - ,\n \"firstConsecutiveStaticIP\": \"172.16.0.5\",\n \"storageProfile\"\ - : \"StorageAccount\",\n \"fqdn\": \"lmazuel-ci-msimgmt.westus2.cloudapp.azure.com\"\ - \n },\n \"agentPoolProfiles\": [\n {\n \"name\": \"agentpool\"\ - ,\n \"count\": 1,\n \"vmSize\": \"Standard_DS2_v2\",\n \"\ - dnsPrefix\": \"\",\n \"fqdn\": \"\",\n \"storageProfile\": \"\ - StorageAccount\",\n \"osType\": \"Linux\"\n },\n {\n \ - \ \"name\": \"agentpool-public\",\n \"count\": 1,\n \"vmSize\"\ - : \"Standard_DS2_v2\",\n \"dnsPrefix\": \"lmazuel-ci-msiagents\",\n\ - \ \"fqdn\": \"lmazuel-ci-msiagents.westus2.cloudapp.azure.com\",\n \ - \ \"ports\": [\n 80,\n 443,\n 8080\n ],\n\ - \ \"storageProfile\": \"StorageAccount\",\n \"osType\": \"Linux\"\ - \n }\n ],\n \"linuxProfile\": {\n \"adminUsername\": \"\ - lmazuel\",\n \"ssh\": {\n \"publicKeys\": [\n {\n \ - \ \"keyData\": \"ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAkqQRrXqHNTHfuJa5QoDuNPiQHCDLKGeINwK8NOVR7LCgqYVM4g7W3bMC72FrUigTOf6XD0bpX1NBuXhkaCa2Dt8IvLY4U5bmESrDbs5ue73NaV+69qAdws5MvgZ0NklNlcnZ3zxCyuCS7isVXPWZphTS1+/xq8x+h9vxq8Nbh4/8krVPsXSMNA8oY4/1KE+CF1RLdeQ7vFOSIUKobMRE1AKhum8+z2Tt/XAaGqc703ueRxkDqKhe9Ux/f3228ppU9npKNu89nwm2R+IjMpxfOmx7JSnNrr7E2StDqPMQty071c1uP7Zw/cR6eVUQHJUg0Qde9X4FwnDItGxinTLjGw==\"\ - \n }\n ]\n }\n }\n }\n },\n {\n \"id\": \"\ - /subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ - ,\n \"location\": \"westus2\",\n \"name\": \"pycontainer665810f8\",\n\ + body: + string: "{\n \"value\": [\n {\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ + ,\n \"location\": \"westus\",\n \"name\": \"pycontainer665810f8\",\n\ \ \"type\": \"Microsoft.ContainerService/ContainerServices\",\n \"properties\"\ : {\n \"provisioningState\": \"Succeeded\",\n \"orchestratorProfile\"\ - : {\n \"orchestratorType\": \"DCOS\",\n \"orchestratorVersion\"\ - : \"1.9.0\"\n },\n \"masterProfile\": {\n \"count\": 1,\n \ - \ \"dnsPrefix\": \"MasterPrefixTest\",\n \"vmSize\": \"Standard_D2_v2\"\ - ,\n \"firstConsecutiveStaticIP\": \"172.16.0.5\",\n \"storageProfile\"\ - : \"ManagedDisks\",\n \"fqdn\": \"masterprefixtest.westus2.cloudapp.azure.com\"\ + : {\n \"orchestratorType\": \"Swarm\"\n },\n \"masterProfile\"\ + : {\n \"count\": 1,\n \"dnsPrefix\": \"MasterPrefixTest\",\n \ + \ \"vmSize\": \"Standard_D2_v2\",\n \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"firstConsecutiveStaticIP\": \"10.240.255.5\",\n \"storageProfile\"\ + : \"ManagedDisks\",\n \"fqdn\": \"masterprefixtest.westus.cloudapp.azure.com\"\ \n },\n \"agentPoolProfiles\": [\n {\n \"name\": \"agentpool0\"\ ,\n \"count\": 3,\n \"vmSize\": \"Standard_A2_v2\",\n \"\ dnsPrefix\": \"\",\n \"fqdn\": \"\",\n \"storageProfile\": \"\ - ManagedDisks\",\n \"osType\": \"Linux\"\n }\n ],\n \"linuxProfile\"\ - : {\n \"adminUsername\": \"acslinuxadmin\",\n \"ssh\": {\n \ + ManagedDisks\",\n \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"osType\": \"Linux\"\n }\n ],\n \"linuxProfile\":\ + \ {\n \"adminUsername\": \"acslinuxadmin\",\n \"ssh\": {\n \ \ \"publicKeys\": [\n {\n \"keyData\": \"ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ==\ \ azureuser@linuxvm\"\n }\n ]\n }\n }\n }\n }\n\ - \ ]\n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:02:06 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['3496'] - x-ms-correlation-request-id: [617af578-9981-4a2b-a563-861841b04372] - x-ms-ratelimit-remaining-subscription-reads: ['14993'] - x-ms-request-id: [e041c573-b940-4a4c-bafd-956526fa6cac] - x-ms-routing-request-id: ['WESTUS2:20171017T190207Z:617af578-9981-4a2b-a563-861841b04372'] - status: {code: 200, message: OK} + \ ]\n }" + headers: + cache-control: + - no-cache + content-length: + - '1993' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:56:12 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python + accept-language: + - en-US method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8?api-version=2017-07-01 response: - body: {string: "{\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ - ,\n \"location\": \"westus2\",\n \"name\": \"pycontainer665810f8\",\n \"\ + body: + string: "{\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.ContainerService/containerServices/pycontainer665810f8\"\ + ,\n \"location\": \"westus\",\n \"name\": \"pycontainer665810f8\",\n \"\ type\": \"Microsoft.ContainerService/ContainerServices\",\n \"properties\"\ : {\n \"provisioningState\": \"Deleting\",\n \"orchestratorProfile\":\ - \ {\n \"orchestratorType\": \"DCOS\",\n \"orchestratorVersion\": \"\ - 1.9.0\"\n },\n \"masterProfile\": {\n \"count\": 1,\n \"dnsPrefix\"\ - : \"MasterPrefixTest\",\n \"vmSize\": \"Standard_D2_v2\",\n \"firstConsecutiveStaticIP\"\ - : \"172.16.0.5\",\n \"storageProfile\": \"ManagedDisks\",\n \"fqdn\"\ - : \"masterprefixtest.westus2.cloudapp.azure.com\"\n },\n \"agentPoolProfiles\"\ - : [\n {\n \"name\": \"agentpool0\",\n \"count\": 3,\n \"vmSize\"\ - : \"Standard_A2_v2\",\n \"dnsPrefix\": \"\",\n \"fqdn\": \"\",\n \ - \ \"storageProfile\": \"ManagedDisks\",\n \"osType\": \"Linux\"\n \ - \ }\n ],\n \"linuxProfile\": {\n \"adminUsername\": \"acslinuxadmin\"\ - ,\n \"ssh\": {\n \"publicKeys\": [\n {\n \"keyData\": \"\ - ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ==\ - \ azureuser@linuxvm\"\n }\n ]\n }\n }\n }\n }"} - headers: - Azure-AsyncOperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30'] - Cache-Control: [no-cache] - Content-Length: ['1505'] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:02:10 GMT'] - Expires: ['-1'] - Location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - x-ms-correlation-request-id: [61f0168c-bf55-4dbb-8d5e-50f23793e8d8] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] - x-ms-request-id: [b2cafb91-51a1-4026-81e9-fd0a968dda56] - x-ms-routing-request-id: ['WESTUS2:20171017T190210Z:61f0168c-bf55-4dbb-8d5e-50f23793e8d8'] - status: {code: 202, message: Accepted} + \ {\n \"orchestratorType\": \"Swarm\"\n },\n \"masterProfile\": {\n\ + \ \"count\": 1,\n \"dnsPrefix\": \"MasterPrefixTest\",\n \"vmSize\"\ + : \"Standard_D2_v2\",\n \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"firstConsecutiveStaticIP\": \"10.240.255.5\",\n \"storageProfile\"\ + : \"ManagedDisks\",\n \"fqdn\": \"masterprefixtest.westus.cloudapp.azure.com\"\ + \n },\n \"agentPoolProfiles\": [\n {\n \"name\": \"agentpool0\"\ + ,\n \"count\": 3,\n \"vmSize\": \"Standard_A2_v2\",\n \"dnsPrefix\"\ + : \"\",\n \"fqdn\": \"\",\n \"storageProfile\": \"ManagedDisks\",\n\ + \ \"vnetSubnetID\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerservice_test_container665810f8/providers/Microsoft.Network/virtualNetworks/vnet/subnets/v-subnet\"\ + ,\n \"osType\": \"Linux\"\n }\n ],\n \"linuxProfile\": {\n \"\ + adminUsername\": \"acslinuxadmin\",\n \"ssh\": {\n \"publicKeys\":\ + \ [\n {\n \"keyData\": \"ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlj9UC6+57XWVu0fd6zqXa256EU9EZdoLGE3TqdZqu9fvUvLQOX2G0d5DmFhDCyTmWLQUx3/ONQ9RotYmHGymBIPQcpx43nnxsuihAILcpGZ5NjCj4IOYnmhdULxN4ti7k00S+udqokrRYpmwt0N4NA4VT9cN+7uJDL8Opqa1FYu0CT/RqSW+3aoQ0nfGj11axoxM37FuOMZ/c7mBSxvuI9NsDmcDQOUmPXjlgNlxrLzf6VcjxnJh4AO83zbyLok37mW/C7CuNK4WowjPO1Ix2kqRHRxBrzxYZ9xqZPc8GpFTw/dxJEYdJ3xlitbOoBoDgrL5gSITv6ESlNqjPk6kHQ==\ + \ azureuser@linuxvm\"\n }\n ]\n }\n }\n }\n }" + headers: + azure-asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 + cache-control: + - no-cache + content-length: + - '1883' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:56:15 GMT + expires: + - '-1' + location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operationresults/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-ms-ratelimit-remaining-subscription-deletes: + - '14999' + status: + code: 202 + message: Accepted - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:02:40 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [790d4db8-26b7-45b9-8505-89077d7951df] - x-ms-ratelimit-remaining-subscription-reads: ['14994'] - x-ms-request-id: [e6e07863-87b5-4ab8-8cfc-a2f09c00626a] - x-ms-routing-request-id: ['WESTUS2:20171017T190241Z:790d4db8-26b7-45b9-8505-89077d7951df'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 - response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:03:11 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [cd99f82d-56e7-40f5-b98c-6de0266ab757] - x-ms-ratelimit-remaining-subscription-reads: ['14985'] - x-ms-request-id: [78c4f55e-0896-49dc-87bf-bcf3f26e79a1] - x-ms-routing-request-id: ['WESTUS2:20171017T190312Z:cd99f82d-56e7-40f5-b98c-6de0266ab757'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 - response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:03:43 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [2049194b-b3ac-4786-9988-edc58330c897] - x-ms-ratelimit-remaining-subscription-reads: ['14998'] - x-ms-request-id: [b0e208fb-808d-43c6-9c1c-43ea42498728] - x-ms-routing-request-id: ['WESTUS2:20171017T190343Z:2049194b-b3ac-4786-9988-edc58330c897'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 - response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:04:14 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [2bdf9cfe-0627-4899-add9-f08545c49367] - x-ms-ratelimit-remaining-subscription-reads: ['14962'] - x-ms-request-id: [562aefc3-4b8f-420a-b1f9-07cbbb816936] - x-ms-routing-request-id: ['WESTUS2:20171017T190414Z:2bdf9cfe-0627-4899-add9-f08545c49367'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 - response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:04:45 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [9654cc1f-71e9-453d-96fa-c637a9a8cb85] - x-ms-ratelimit-remaining-subscription-reads: ['14975'] - x-ms-request-id: [47b2babb-6de4-490a-9701-4ee715e54839] - x-ms-routing-request-id: ['WESTUS2:20171017T190445Z:9654cc1f-71e9-453d-96fa-c637a9a8cb85'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 - response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:05:16 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [6f14307f-5447-4ee4-ac29-d4927d58a4fa] - x-ms-ratelimit-remaining-subscription-reads: ['14989'] - x-ms-request-id: [ea6058c8-1c14-464d-9fd4-00ed1631a9f5] - x-ms-routing-request-id: ['WESTUS:20171017T190516Z:6f14307f-5447-4ee4-ac29-d4927d58a4fa'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 - response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:05:47 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [b0245ace-914c-4db8-bc7e-8149b1f47070] - x-ms-ratelimit-remaining-subscription-reads: ['14994'] - x-ms-request-id: [ebd0935e-6970-485a-8068-c4f700a2a051] - x-ms-routing-request-id: ['WESTUS:20171017T190547Z:b0245ace-914c-4db8-bc7e-8149b1f47070'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 - response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:06:17 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [315515f8-bfd8-4bd2-9f21-63a503be0e83] - x-ms-ratelimit-remaining-subscription-reads: ['14996'] - x-ms-request-id: [f6cac62f-a4d9-45be-adfd-1a1086816412] - x-ms-routing-request-id: ['WESTUS2:20171017T190618Z:315515f8-bfd8-4bd2-9f21-63a503be0e83'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"4f06e68a-2623-ad41-9bb6-09ecbae74202\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:56:14.9505148Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:56:46 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:06:49 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [f04dd1f7-81b2-4b3a-bb15-8568bd856eff] - x-ms-ratelimit-remaining-subscription-reads: ['14969'] - x-ms-request-id: [640163b7-0781-4d2b-81d7-4ab4243b327e] - x-ms-routing-request-id: ['WESTUS2:20171017T190649Z:f04dd1f7-81b2-4b3a-bb15-8568bd856eff'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"4f06e68a-2623-ad41-9bb6-09ecbae74202\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:56:14.9505148Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:57:16 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:07:19 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [b7b5c6df-3759-4f77-9f5f-6a466c0c1372] - x-ms-ratelimit-remaining-subscription-reads: ['14993'] - x-ms-request-id: [06992e04-02e0-40b0-8fee-d1678095b165] - x-ms-routing-request-id: ['WESTUS2:20171017T190720Z:b7b5c6df-3759-4f77-9f5f-6a466c0c1372'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"4f06e68a-2623-ad41-9bb6-09ecbae74202\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:56:14.9505148Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:57:47 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:07:51 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [4fb588b8-4641-4fc1-b73f-bcf85119d76c] - x-ms-ratelimit-remaining-subscription-reads: ['14992'] - x-ms-request-id: [c48b2cf7-63cb-4627-9645-e5ee38ada48a] - x-ms-routing-request-id: ['WESTUS:20171017T190751Z:4fb588b8-4641-4fc1-b73f-bcf85119d76c'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"4f06e68a-2623-ad41-9bb6-09ecbae74202\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:56:14.9505148Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:58:18 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:08:22 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [ff3dcd96-bafe-4dbc-88e8-ec57a157d336] - x-ms-ratelimit-remaining-subscription-reads: ['14981'] - x-ms-request-id: [3bf4b860-58fc-421d-8f2e-613e19d93b09] - x-ms-routing-request-id: ['WESTUS:20171017T190823Z:ff3dcd96-bafe-4dbc-88e8-ec57a157d336'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"4f06e68a-2623-ad41-9bb6-09ecbae74202\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:56:14.9505148Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:58:48 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:08:53 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [6261f2c9-2fce-4b4a-8687-5a7cd253fad9] - x-ms-ratelimit-remaining-subscription-reads: ['14995'] - x-ms-request-id: [d8073fd5-0da4-4787-ade2-3fe1d1d4ca41] - x-ms-routing-request-id: ['WESTUS:20171017T190854Z:6261f2c9-2fce-4b4a-8687-5a7cd253fad9'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"4f06e68a-2623-ad41-9bb6-09ecbae74202\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:56:14.9505148Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:59:19 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:09:24 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [bcb71078-7690-4341-81dc-dcdf90183706] - x-ms-ratelimit-remaining-subscription-reads: ['14992'] - x-ms-request-id: [d47b421d-5fa3-4b70-b45d-1e021b1d5b76] - x-ms-routing-request-id: ['WESTUS:20171017T190925Z:bcb71078-7690-4341-81dc-dcdf90183706'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"4f06e68a-2623-ad41-9bb6-09ecbae74202\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:56:14.9505148Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 15:59:50 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:09:56 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [76f72c58-1adf-4d22-91a5-158f31161417] - x-ms-ratelimit-remaining-subscription-reads: ['14988'] - x-ms-request-id: [f52379fe-4139-4b33-be1f-a27946d6cc20] - x-ms-routing-request-id: ['WESTUS:20171017T190956Z:76f72c58-1adf-4d22-91a5-158f31161417'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"4f06e68a-2623-ad41-9bb6-09ecbae74202\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:56:14.9505148Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 16:00:20 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"InProgress\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - \n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:10:28 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['126'] - x-ms-correlation-request-id: [67ab80e9-3fca-4820-a08f-f4edd319d112] - x-ms-ratelimit-remaining-subscription-reads: ['14996'] - x-ms-request-id: [ba8a8596-f110-459b-b7bb-447e6c8c765a] - x-ms-routing-request-id: ['WESTUS:20171017T191028Z:67ab80e9-3fca-4820-a08f-f4edd319d112'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"4f06e68a-2623-ad41-9bb6-09ecbae74202\",\n \"status\"\ + : \"InProgress\",\n \"startTime\": \"2020-06-08T15:56:14.9505148Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '126' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 16:00:51 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK - request: body: null headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.15063-SP0) requests/2.18.4 msrest/0.4.16 - msrest_azure/0.4.14 azure-mgmt-containerservice/2.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [ab3ce130-b36d-11e7-98f5-20cf30e81033] + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.19.76-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-containerservice/9.1.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus2/operations/b2cafb91-51a1-4026-81e9-fd0a968dda56?api-version=2016-03-30 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerService/locations/westus/operations/8ae6064f-2326-41ad-9bb6-09ecbae74202?api-version=2016-03-30 response: - body: {string: "{\n \"name\": \"91fbcab2-a151-2640-81e9-fd0a968dda56\",\n \"\ - status\": \"Succeeded\",\n \"startTime\": \"2017-10-17T19:02:09.8024491Z\"\ - ,\n \"endTime\": \"2017-10-17T19:10:54.24677Z\"\n }"} - headers: - Cache-Control: [no-cache] - Content-Type: [application/json] - Date: ['Tue, 17 Oct 2017 19:10:59 GMT'] - Expires: ['-1'] - Pragma: [no-cache] - Server: [nginx] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['168'] - x-ms-correlation-request-id: [ebb45d51-3499-4792-abfa-78437f0dbf06] - x-ms-ratelimit-remaining-subscription-reads: ['14988'] - x-ms-request-id: [a4a385fe-a825-4ce5-90f5-97f790e171e8] - x-ms-routing-request-id: ['WESTUS2:20171017T191059Z:ebb45d51-3499-4792-abfa-78437f0dbf06'] - status: {code: 200, message: OK} + body: + string: "{\n \"name\": \"4f06e68a-2623-ad41-9bb6-09ecbae74202\",\n \"status\"\ + : \"Succeeded\",\n \"startTime\": \"2020-06-08T15:56:14.9505148Z\",\n \"\ + endTime\": \"2020-06-08T16:01:03.7463221Z\"\n }" + headers: + cache-control: + - no-cache + content-length: + - '170' + content-type: + - application/json + date: + - Mon, 08 Jun 2020 16:01:22 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - nginx + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK version: 1 diff --git a/sdk/containerservice/azure-mgmt-containerservice/tests/test_mgmt_containerservice.py b/sdk/containerservice/azure-mgmt-containerservice/tests/test_mgmt_containerservice.py index f670450f41bc..235046f9cbbd 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/tests/test_mgmt_containerservice.py +++ b/sdk/containerservice/azure-mgmt-containerservice/tests/test_mgmt_containerservice.py @@ -19,10 +19,47 @@ def setUp(self): self.cs_client = self.create_mgmt_client( azure.mgmt.containerservice.ContainerServiceClient ) + if self.is_live: + from azure.mgmt.network import NetworkManagementClient + self.network_client = self.create_mgmt_client( + NetworkManagementClient + ) + + def create_subet(self, group_name, location): + # Create virtual network + self.network_client.virtual_networks.create_or_update( + group_name, + "vnet", + { + "address_space": { + "address_prefixes": [ + "10.0.0.0/8" + ] + }, + "location": location + } + ).result() + + # Create subnet + subnet = self.network_client.subnets.create_or_update( + group_name, + "vnet", + "v-subnet", + { + "address_prefix": "10.0.0.0/8" + } + ).result() + + return subnet.id - @ResourceGroupPreparer(location='westus2') + @ResourceGroupPreparer(location='westus') def test_container(self, resource_group, location): container_name = self.get_resource_name('pycontainer') + + if self.is_live: + subnet_id = self.create_subet(resource_group.name, location) + else: + subnet_id = "" async_create = self.cs_client.container_services.create_or_update( resource_group.name, @@ -30,18 +67,20 @@ def test_container(self, resource_group, location): { 'location': location, "orchestrator_profile": { - "orchestrator_type": "DCOS" + "orchestrator_type": "Swarm" }, "master_profile": { "count": 1, "dns_prefix": "MasterPrefixTest", - "vm_size": ContainerServiceVMSizeTypes.standard_d2_v2 + "vm_size": ContainerServiceVMSizeTypes.standard_d2_v2, + "vnet_subnet_id": subnet_id }, "agent_pool_profiles": [{ "name": "agentpool0", "count": 3, "vm_size": "Standard_A2_v2", # "dns_prefix": "AgentPrefixTest" - Optional in latest version + "vnet_subnet_id": subnet_id }], "linux_profile": { "admin_username": "acslinuxadmin",