1# coding=utf-8 2# -------------------------------------------------------------------------- 3# Copyright (c) Microsoft Corporation. All rights reserved. 4# Licensed under the MIT License. See License.txt in the project root for 5# license information. 6# 7# Code generated by Microsoft (R) AutoRest Code Generator. 8# Changes may cause incorrect behavior and will be lost if the code is 9# regenerated. 10# -------------------------------------------------------------------------- 11 12from typing import Any, Optional, TYPE_CHECKING 13 14from azure.core.pipeline.transport import AsyncHttpResponse, HttpRequest 15from azure.mgmt.core import AsyncARMPipelineClient 16from azure.profiles import KnownProfiles, ProfileDefinition 17from azure.profiles.multiapiclient import MultiApiClientMixin 18from msrest import Deserializer, Serializer 19 20from ._configuration import ContainerServiceClientConfiguration 21 22if TYPE_CHECKING: 23 # pylint: disable=unused-import,ungrouped-imports 24 from azure.core.credentials_async import AsyncTokenCredential 25 26class _SDKClient(object): 27 def __init__(self, *args, **kwargs): 28 """This is a fake class to support current implemetation of MultiApiClientMixin." 29 Will be removed in final version of multiapi azure-core based client 30 """ 31 pass 32 33class ContainerServiceClient(MultiApiClientMixin, _SDKClient): 34 """The Container Service Client. 35 36 This ready contains multiple API versions, to help you deal with all of the Azure clouds 37 (Azure Stack, Azure Government, Azure China, etc.). 38 By default, it uses the latest API version available on public Azure. 39 For production, you should stick to a particular api-version and/or profile. 40 The profile sets a mapping between an operation group and its API version. 41 The api-version parameter sets the default API version if the operation 42 group is not described in the profile. 43 44 :param credential: Credential needed for the client to connect to Azure. 45 :type credential: ~azure.core.credentials_async.AsyncTokenCredential 46 :param subscription_id: Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. 47 :type subscription_id: str 48 :param api_version: API version to use if no profile is provided, or if missing in profile. 49 :type api_version: str 50 :param base_url: Service URL 51 :type base_url: str 52 :param profile: A profile definition, from KnownProfiles to dict. 53 :type profile: azure.profiles.KnownProfiles 54 :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. 55 """ 56 57 DEFAULT_API_VERSION = '2021-07-01' 58 _PROFILE_TAG = "azure.mgmt.containerservice.ContainerServiceClient" 59 LATEST_PROFILE = ProfileDefinition({ 60 _PROFILE_TAG: { 61 None: DEFAULT_API_VERSION, 62 'container_services': '2017-07-01', 63 'open_shift_managed_clusters': '2019-04-30', 64 }}, 65 _PROFILE_TAG + " latest" 66 ) 67 68 def __init__( 69 self, 70 credential: "AsyncTokenCredential", 71 subscription_id: str, 72 api_version: Optional[str] = None, 73 base_url: Optional[str] = None, 74 profile: KnownProfiles = KnownProfiles.default, 75 **kwargs # type: Any 76 ) -> None: 77 if not base_url: 78 base_url = 'https://management.azure.com' 79 self._config = ContainerServiceClientConfiguration(credential, subscription_id, **kwargs) 80 self._client = AsyncARMPipelineClient(base_url=base_url, config=self._config, **kwargs) 81 super(ContainerServiceClient, self).__init__( 82 api_version=api_version, 83 profile=profile 84 ) 85 86 @classmethod 87 def _models_dict(cls, api_version): 88 return {k: v for k, v in cls.models(api_version).__dict__.items() if isinstance(v, type)} 89 90 @classmethod 91 def models(cls, api_version=DEFAULT_API_VERSION): 92 """Module depends on the API version: 93 94 * 2017-07-01: :mod:`v2017_07_01.models<azure.mgmt.containerservice.v2017_07_01.models>` 95 * 2018-03-31: :mod:`v2018_03_31.models<azure.mgmt.containerservice.v2018_03_31.models>` 96 * 2018-08-01-preview: :mod:`v2018_08_01_preview.models<azure.mgmt.containerservice.v2018_08_01_preview.models>` 97 * 2018-09-30-preview: :mod:`v2018_09_30_preview.models<azure.mgmt.containerservice.v2018_09_30_preview.models>` 98 * 2019-02-01: :mod:`v2019_02_01.models<azure.mgmt.containerservice.v2019_02_01.models>` 99 * 2019-04-01: :mod:`v2019_04_01.models<azure.mgmt.containerservice.v2019_04_01.models>` 100 * 2019-04-30: :mod:`v2019_04_30.models<azure.mgmt.containerservice.v2019_04_30.models>` 101 * 2019-06-01: :mod:`v2019_06_01.models<azure.mgmt.containerservice.v2019_06_01.models>` 102 * 2019-08-01: :mod:`v2019_08_01.models<azure.mgmt.containerservice.v2019_08_01.models>` 103 * 2019-09-30-preview: :mod:`v2019_09_30_preview.models<azure.mgmt.containerservice.v2019_09_30_preview.models>` 104 * 2019-10-01: :mod:`v2019_10_01.models<azure.mgmt.containerservice.v2019_10_01.models>` 105 * 2019-10-27-preview: :mod:`v2019_10_27_preview.models<azure.mgmt.containerservice.v2019_10_27_preview.models>` 106 * 2019-11-01: :mod:`v2019_11_01.models<azure.mgmt.containerservice.v2019_11_01.models>` 107 * 2020-01-01: :mod:`v2020_01_01.models<azure.mgmt.containerservice.v2020_01_01.models>` 108 * 2020-02-01: :mod:`v2020_02_01.models<azure.mgmt.containerservice.v2020_02_01.models>` 109 * 2020-03-01: :mod:`v2020_03_01.models<azure.mgmt.containerservice.v2020_03_01.models>` 110 * 2020-04-01: :mod:`v2020_04_01.models<azure.mgmt.containerservice.v2020_04_01.models>` 111 * 2020-06-01: :mod:`v2020_06_01.models<azure.mgmt.containerservice.v2020_06_01.models>` 112 * 2020-07-01: :mod:`v2020_07_01.models<azure.mgmt.containerservice.v2020_07_01.models>` 113 * 2020-09-01: :mod:`v2020_09_01.models<azure.mgmt.containerservice.v2020_09_01.models>` 114 * 2020-11-01: :mod:`v2020_11_01.models<azure.mgmt.containerservice.v2020_11_01.models>` 115 * 2020-12-01: :mod:`v2020_12_01.models<azure.mgmt.containerservice.v2020_12_01.models>` 116 * 2021-02-01: :mod:`v2021_02_01.models<azure.mgmt.containerservice.v2021_02_01.models>` 117 * 2021-03-01: :mod:`v2021_03_01.models<azure.mgmt.containerservice.v2021_03_01.models>` 118 * 2021-05-01: :mod:`v2021_05_01.models<azure.mgmt.containerservice.v2021_05_01.models>` 119 * 2021-07-01: :mod:`v2021_07_01.models<azure.mgmt.containerservice.v2021_07_01.models>` 120 """ 121 if api_version == '2017-07-01': 122 from ..v2017_07_01 import models 123 return models 124 elif api_version == '2018-03-31': 125 from ..v2018_03_31 import models 126 return models 127 elif api_version == '2018-08-01-preview': 128 from ..v2018_08_01_preview import models 129 return models 130 elif api_version == '2018-09-30-preview': 131 from ..v2018_09_30_preview import models 132 return models 133 elif api_version == '2019-02-01': 134 from ..v2019_02_01 import models 135 return models 136 elif api_version == '2019-04-01': 137 from ..v2019_04_01 import models 138 return models 139 elif api_version == '2019-04-30': 140 from ..v2019_04_30 import models 141 return models 142 elif api_version == '2019-06-01': 143 from ..v2019_06_01 import models 144 return models 145 elif api_version == '2019-08-01': 146 from ..v2019_08_01 import models 147 return models 148 elif api_version == '2019-09-30-preview': 149 from ..v2019_09_30_preview import models 150 return models 151 elif api_version == '2019-10-01': 152 from ..v2019_10_01 import models 153 return models 154 elif api_version == '2019-10-27-preview': 155 from ..v2019_10_27_preview import models 156 return models 157 elif api_version == '2019-11-01': 158 from ..v2019_11_01 import models 159 return models 160 elif api_version == '2020-01-01': 161 from ..v2020_01_01 import models 162 return models 163 elif api_version == '2020-02-01': 164 from ..v2020_02_01 import models 165 return models 166 elif api_version == '2020-03-01': 167 from ..v2020_03_01 import models 168 return models 169 elif api_version == '2020-04-01': 170 from ..v2020_04_01 import models 171 return models 172 elif api_version == '2020-06-01': 173 from ..v2020_06_01 import models 174 return models 175 elif api_version == '2020-07-01': 176 from ..v2020_07_01 import models 177 return models 178 elif api_version == '2020-09-01': 179 from ..v2020_09_01 import models 180 return models 181 elif api_version == '2020-11-01': 182 from ..v2020_11_01 import models 183 return models 184 elif api_version == '2020-12-01': 185 from ..v2020_12_01 import models 186 return models 187 elif api_version == '2021-02-01': 188 from ..v2021_02_01 import models 189 return models 190 elif api_version == '2021-03-01': 191 from ..v2021_03_01 import models 192 return models 193 elif api_version == '2021-05-01': 194 from ..v2021_05_01 import models 195 return models 196 elif api_version == '2021-07-01': 197 from ..v2021_07_01 import models 198 return models 199 raise ValueError("API version {} is not available".format(api_version)) 200 201 @property 202 def agent_pools(self): 203 """Instance depends on the API version: 204 205 * 2019-02-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2019_02_01.aio.operations.AgentPoolsOperations>` 206 * 2019-04-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2019_04_01.aio.operations.AgentPoolsOperations>` 207 * 2019-06-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2019_06_01.aio.operations.AgentPoolsOperations>` 208 * 2019-08-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2019_08_01.aio.operations.AgentPoolsOperations>` 209 * 2019-10-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2019_10_01.aio.operations.AgentPoolsOperations>` 210 * 2019-11-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2019_11_01.aio.operations.AgentPoolsOperations>` 211 * 2020-01-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2020_01_01.aio.operations.AgentPoolsOperations>` 212 * 2020-02-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2020_02_01.aio.operations.AgentPoolsOperations>` 213 * 2020-03-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2020_03_01.aio.operations.AgentPoolsOperations>` 214 * 2020-04-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2020_04_01.aio.operations.AgentPoolsOperations>` 215 * 2020-06-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2020_06_01.aio.operations.AgentPoolsOperations>` 216 * 2020-07-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2020_07_01.aio.operations.AgentPoolsOperations>` 217 * 2020-09-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2020_09_01.aio.operations.AgentPoolsOperations>` 218 * 2020-11-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2020_11_01.aio.operations.AgentPoolsOperations>` 219 * 2020-12-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2020_12_01.aio.operations.AgentPoolsOperations>` 220 * 2021-02-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2021_02_01.aio.operations.AgentPoolsOperations>` 221 * 2021-03-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2021_03_01.aio.operations.AgentPoolsOperations>` 222 * 2021-05-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2021_05_01.aio.operations.AgentPoolsOperations>` 223 * 2021-07-01: :class:`AgentPoolsOperations<azure.mgmt.containerservice.v2021_07_01.aio.operations.AgentPoolsOperations>` 224 """ 225 api_version = self._get_api_version('agent_pools') 226 if api_version == '2019-02-01': 227 from ..v2019_02_01.aio.operations import AgentPoolsOperations as OperationClass 228 elif api_version == '2019-04-01': 229 from ..v2019_04_01.aio.operations import AgentPoolsOperations as OperationClass 230 elif api_version == '2019-06-01': 231 from ..v2019_06_01.aio.operations import AgentPoolsOperations as OperationClass 232 elif api_version == '2019-08-01': 233 from ..v2019_08_01.aio.operations import AgentPoolsOperations as OperationClass 234 elif api_version == '2019-10-01': 235 from ..v2019_10_01.aio.operations import AgentPoolsOperations as OperationClass 236 elif api_version == '2019-11-01': 237 from ..v2019_11_01.aio.operations import AgentPoolsOperations as OperationClass 238 elif api_version == '2020-01-01': 239 from ..v2020_01_01.aio.operations import AgentPoolsOperations as OperationClass 240 elif api_version == '2020-02-01': 241 from ..v2020_02_01.aio.operations import AgentPoolsOperations as OperationClass 242 elif api_version == '2020-03-01': 243 from ..v2020_03_01.aio.operations import AgentPoolsOperations as OperationClass 244 elif api_version == '2020-04-01': 245 from ..v2020_04_01.aio.operations import AgentPoolsOperations as OperationClass 246 elif api_version == '2020-06-01': 247 from ..v2020_06_01.aio.operations import AgentPoolsOperations as OperationClass 248 elif api_version == '2020-07-01': 249 from ..v2020_07_01.aio.operations import AgentPoolsOperations as OperationClass 250 elif api_version == '2020-09-01': 251 from ..v2020_09_01.aio.operations import AgentPoolsOperations as OperationClass 252 elif api_version == '2020-11-01': 253 from ..v2020_11_01.aio.operations import AgentPoolsOperations as OperationClass 254 elif api_version == '2020-12-01': 255 from ..v2020_12_01.aio.operations import AgentPoolsOperations as OperationClass 256 elif api_version == '2021-02-01': 257 from ..v2021_02_01.aio.operations import AgentPoolsOperations as OperationClass 258 elif api_version == '2021-03-01': 259 from ..v2021_03_01.aio.operations import AgentPoolsOperations as OperationClass 260 elif api_version == '2021-05-01': 261 from ..v2021_05_01.aio.operations import AgentPoolsOperations as OperationClass 262 elif api_version == '2021-07-01': 263 from ..v2021_07_01.aio.operations import AgentPoolsOperations as OperationClass 264 else: 265 raise ValueError("API version {} does not have operation group 'agent_pools'".format(api_version)) 266 return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) 267 268 @property 269 def container_services(self): 270 """Instance depends on the API version: 271 272 * 2017-07-01: :class:`ContainerServicesOperations<azure.mgmt.containerservice.v2017_07_01.aio.operations.ContainerServicesOperations>` 273 """ 274 api_version = self._get_api_version('container_services') 275 if api_version == '2017-07-01': 276 from ..v2017_07_01.aio.operations import ContainerServicesOperations as OperationClass 277 else: 278 raise ValueError("API version {} does not have operation group 'container_services'".format(api_version)) 279 return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) 280 281 @property 282 def maintenance_configurations(self): 283 """Instance depends on the API version: 284 285 * 2020-12-01: :class:`MaintenanceConfigurationsOperations<azure.mgmt.containerservice.v2020_12_01.aio.operations.MaintenanceConfigurationsOperations>` 286 * 2021-02-01: :class:`MaintenanceConfigurationsOperations<azure.mgmt.containerservice.v2021_02_01.aio.operations.MaintenanceConfigurationsOperations>` 287 * 2021-03-01: :class:`MaintenanceConfigurationsOperations<azure.mgmt.containerservice.v2021_03_01.aio.operations.MaintenanceConfigurationsOperations>` 288 * 2021-05-01: :class:`MaintenanceConfigurationsOperations<azure.mgmt.containerservice.v2021_05_01.aio.operations.MaintenanceConfigurationsOperations>` 289 * 2021-07-01: :class:`MaintenanceConfigurationsOperations<azure.mgmt.containerservice.v2021_07_01.aio.operations.MaintenanceConfigurationsOperations>` 290 """ 291 api_version = self._get_api_version('maintenance_configurations') 292 if api_version == '2020-12-01': 293 from ..v2020_12_01.aio.operations import MaintenanceConfigurationsOperations as OperationClass 294 elif api_version == '2021-02-01': 295 from ..v2021_02_01.aio.operations import MaintenanceConfigurationsOperations as OperationClass 296 elif api_version == '2021-03-01': 297 from ..v2021_03_01.aio.operations import MaintenanceConfigurationsOperations as OperationClass 298 elif api_version == '2021-05-01': 299 from ..v2021_05_01.aio.operations import MaintenanceConfigurationsOperations as OperationClass 300 elif api_version == '2021-07-01': 301 from ..v2021_07_01.aio.operations import MaintenanceConfigurationsOperations as OperationClass 302 else: 303 raise ValueError("API version {} does not have operation group 'maintenance_configurations'".format(api_version)) 304 return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) 305 306 @property 307 def managed_clusters(self): 308 """Instance depends on the API version: 309 310 * 2018-03-31: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2018_03_31.aio.operations.ManagedClustersOperations>` 311 * 2018-08-01-preview: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2018_08_01_preview.aio.operations.ManagedClustersOperations>` 312 * 2019-02-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2019_02_01.aio.operations.ManagedClustersOperations>` 313 * 2019-04-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2019_04_01.aio.operations.ManagedClustersOperations>` 314 * 2019-06-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2019_06_01.aio.operations.ManagedClustersOperations>` 315 * 2019-08-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2019_08_01.aio.operations.ManagedClustersOperations>` 316 * 2019-10-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2019_10_01.aio.operations.ManagedClustersOperations>` 317 * 2019-11-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2019_11_01.aio.operations.ManagedClustersOperations>` 318 * 2020-01-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2020_01_01.aio.operations.ManagedClustersOperations>` 319 * 2020-02-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2020_02_01.aio.operations.ManagedClustersOperations>` 320 * 2020-03-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2020_03_01.aio.operations.ManagedClustersOperations>` 321 * 2020-04-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2020_04_01.aio.operations.ManagedClustersOperations>` 322 * 2020-06-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2020_06_01.aio.operations.ManagedClustersOperations>` 323 * 2020-07-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2020_07_01.aio.operations.ManagedClustersOperations>` 324 * 2020-09-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2020_09_01.aio.operations.ManagedClustersOperations>` 325 * 2020-11-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2020_11_01.aio.operations.ManagedClustersOperations>` 326 * 2020-12-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2020_12_01.aio.operations.ManagedClustersOperations>` 327 * 2021-02-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2021_02_01.aio.operations.ManagedClustersOperations>` 328 * 2021-03-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2021_03_01.aio.operations.ManagedClustersOperations>` 329 * 2021-05-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2021_05_01.aio.operations.ManagedClustersOperations>` 330 * 2021-07-01: :class:`ManagedClustersOperations<azure.mgmt.containerservice.v2021_07_01.aio.operations.ManagedClustersOperations>` 331 """ 332 api_version = self._get_api_version('managed_clusters') 333 if api_version == '2018-03-31': 334 from ..v2018_03_31.aio.operations import ManagedClustersOperations as OperationClass 335 elif api_version == '2018-08-01-preview': 336 from ..v2018_08_01_preview.aio.operations import ManagedClustersOperations as OperationClass 337 elif api_version == '2019-02-01': 338 from ..v2019_02_01.aio.operations import ManagedClustersOperations as OperationClass 339 elif api_version == '2019-04-01': 340 from ..v2019_04_01.aio.operations import ManagedClustersOperations as OperationClass 341 elif api_version == '2019-06-01': 342 from ..v2019_06_01.aio.operations import ManagedClustersOperations as OperationClass 343 elif api_version == '2019-08-01': 344 from ..v2019_08_01.aio.operations import ManagedClustersOperations as OperationClass 345 elif api_version == '2019-10-01': 346 from ..v2019_10_01.aio.operations import ManagedClustersOperations as OperationClass 347 elif api_version == '2019-11-01': 348 from ..v2019_11_01.aio.operations import ManagedClustersOperations as OperationClass 349 elif api_version == '2020-01-01': 350 from ..v2020_01_01.aio.operations import ManagedClustersOperations as OperationClass 351 elif api_version == '2020-02-01': 352 from ..v2020_02_01.aio.operations import ManagedClustersOperations as OperationClass 353 elif api_version == '2020-03-01': 354 from ..v2020_03_01.aio.operations import ManagedClustersOperations as OperationClass 355 elif api_version == '2020-04-01': 356 from ..v2020_04_01.aio.operations import ManagedClustersOperations as OperationClass 357 elif api_version == '2020-06-01': 358 from ..v2020_06_01.aio.operations import ManagedClustersOperations as OperationClass 359 elif api_version == '2020-07-01': 360 from ..v2020_07_01.aio.operations import ManagedClustersOperations as OperationClass 361 elif api_version == '2020-09-01': 362 from ..v2020_09_01.aio.operations import ManagedClustersOperations as OperationClass 363 elif api_version == '2020-11-01': 364 from ..v2020_11_01.aio.operations import ManagedClustersOperations as OperationClass 365 elif api_version == '2020-12-01': 366 from ..v2020_12_01.aio.operations import ManagedClustersOperations as OperationClass 367 elif api_version == '2021-02-01': 368 from ..v2021_02_01.aio.operations import ManagedClustersOperations as OperationClass 369 elif api_version == '2021-03-01': 370 from ..v2021_03_01.aio.operations import ManagedClustersOperations as OperationClass 371 elif api_version == '2021-05-01': 372 from ..v2021_05_01.aio.operations import ManagedClustersOperations as OperationClass 373 elif api_version == '2021-07-01': 374 from ..v2021_07_01.aio.operations import ManagedClustersOperations as OperationClass 375 else: 376 raise ValueError("API version {} does not have operation group 'managed_clusters'".format(api_version)) 377 return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) 378 379 @property 380 def open_shift_managed_clusters(self): 381 """Instance depends on the API version: 382 383 * 2018-09-30-preview: :class:`OpenShiftManagedClustersOperations<azure.mgmt.containerservice.v2018_09_30_preview.aio.operations.OpenShiftManagedClustersOperations>` 384 * 2019-04-30: :class:`OpenShiftManagedClustersOperations<azure.mgmt.containerservice.v2019_04_30.aio.operations.OpenShiftManagedClustersOperations>` 385 * 2019-09-30-preview: :class:`OpenShiftManagedClustersOperations<azure.mgmt.containerservice.v2019_09_30_preview.aio.operations.OpenShiftManagedClustersOperations>` 386 * 2019-10-27-preview: :class:`OpenShiftManagedClustersOperations<azure.mgmt.containerservice.v2019_10_27_preview.aio.operations.OpenShiftManagedClustersOperations>` 387 """ 388 api_version = self._get_api_version('open_shift_managed_clusters') 389 if api_version == '2018-09-30-preview': 390 from ..v2018_09_30_preview.aio.operations import OpenShiftManagedClustersOperations as OperationClass 391 elif api_version == '2019-04-30': 392 from ..v2019_04_30.aio.operations import OpenShiftManagedClustersOperations as OperationClass 393 elif api_version == '2019-09-30-preview': 394 from ..v2019_09_30_preview.aio.operations import OpenShiftManagedClustersOperations as OperationClass 395 elif api_version == '2019-10-27-preview': 396 from ..v2019_10_27_preview.aio.operations import OpenShiftManagedClustersOperations as OperationClass 397 else: 398 raise ValueError("API version {} does not have operation group 'open_shift_managed_clusters'".format(api_version)) 399 return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) 400 401 @property 402 def operations(self): 403 """Instance depends on the API version: 404 405 * 2018-03-31: :class:`Operations<azure.mgmt.containerservice.v2018_03_31.aio.operations.Operations>` 406 * 2018-08-01-preview: :class:`Operations<azure.mgmt.containerservice.v2018_08_01_preview.aio.operations.Operations>` 407 * 2019-02-01: :class:`Operations<azure.mgmt.containerservice.v2019_02_01.aio.operations.Operations>` 408 * 2019-04-01: :class:`Operations<azure.mgmt.containerservice.v2019_04_01.aio.operations.Operations>` 409 * 2019-06-01: :class:`Operations<azure.mgmt.containerservice.v2019_06_01.aio.operations.Operations>` 410 * 2019-08-01: :class:`Operations<azure.mgmt.containerservice.v2019_08_01.aio.operations.Operations>` 411 * 2019-10-01: :class:`Operations<azure.mgmt.containerservice.v2019_10_01.aio.operations.Operations>` 412 * 2019-11-01: :class:`Operations<azure.mgmt.containerservice.v2019_11_01.aio.operations.Operations>` 413 * 2020-01-01: :class:`Operations<azure.mgmt.containerservice.v2020_01_01.aio.operations.Operations>` 414 * 2020-02-01: :class:`Operations<azure.mgmt.containerservice.v2020_02_01.aio.operations.Operations>` 415 * 2020-03-01: :class:`Operations<azure.mgmt.containerservice.v2020_03_01.aio.operations.Operations>` 416 * 2020-04-01: :class:`Operations<azure.mgmt.containerservice.v2020_04_01.aio.operations.Operations>` 417 * 2020-06-01: :class:`Operations<azure.mgmt.containerservice.v2020_06_01.aio.operations.Operations>` 418 * 2020-07-01: :class:`Operations<azure.mgmt.containerservice.v2020_07_01.aio.operations.Operations>` 419 * 2020-09-01: :class:`Operations<azure.mgmt.containerservice.v2020_09_01.aio.operations.Operations>` 420 * 2020-11-01: :class:`Operations<azure.mgmt.containerservice.v2020_11_01.aio.operations.Operations>` 421 * 2020-12-01: :class:`Operations<azure.mgmt.containerservice.v2020_12_01.aio.operations.Operations>` 422 * 2021-02-01: :class:`Operations<azure.mgmt.containerservice.v2021_02_01.aio.operations.Operations>` 423 * 2021-03-01: :class:`Operations<azure.mgmt.containerservice.v2021_03_01.aio.operations.Operations>` 424 * 2021-05-01: :class:`Operations<azure.mgmt.containerservice.v2021_05_01.aio.operations.Operations>` 425 * 2021-07-01: :class:`Operations<azure.mgmt.containerservice.v2021_07_01.aio.operations.Operations>` 426 """ 427 api_version = self._get_api_version('operations') 428 if api_version == '2018-03-31': 429 from ..v2018_03_31.aio.operations import Operations as OperationClass 430 elif api_version == '2018-08-01-preview': 431 from ..v2018_08_01_preview.aio.operations import Operations as OperationClass 432 elif api_version == '2019-02-01': 433 from ..v2019_02_01.aio.operations import Operations as OperationClass 434 elif api_version == '2019-04-01': 435 from ..v2019_04_01.aio.operations import Operations as OperationClass 436 elif api_version == '2019-06-01': 437 from ..v2019_06_01.aio.operations import Operations as OperationClass 438 elif api_version == '2019-08-01': 439 from ..v2019_08_01.aio.operations import Operations as OperationClass 440 elif api_version == '2019-10-01': 441 from ..v2019_10_01.aio.operations import Operations as OperationClass 442 elif api_version == '2019-11-01': 443 from ..v2019_11_01.aio.operations import Operations as OperationClass 444 elif api_version == '2020-01-01': 445 from ..v2020_01_01.aio.operations import Operations as OperationClass 446 elif api_version == '2020-02-01': 447 from ..v2020_02_01.aio.operations import Operations as OperationClass 448 elif api_version == '2020-03-01': 449 from ..v2020_03_01.aio.operations import Operations as OperationClass 450 elif api_version == '2020-04-01': 451 from ..v2020_04_01.aio.operations import Operations as OperationClass 452 elif api_version == '2020-06-01': 453 from ..v2020_06_01.aio.operations import Operations as OperationClass 454 elif api_version == '2020-07-01': 455 from ..v2020_07_01.aio.operations import Operations as OperationClass 456 elif api_version == '2020-09-01': 457 from ..v2020_09_01.aio.operations import Operations as OperationClass 458 elif api_version == '2020-11-01': 459 from ..v2020_11_01.aio.operations import Operations as OperationClass 460 elif api_version == '2020-12-01': 461 from ..v2020_12_01.aio.operations import Operations as OperationClass 462 elif api_version == '2021-02-01': 463 from ..v2021_02_01.aio.operations import Operations as OperationClass 464 elif api_version == '2021-03-01': 465 from ..v2021_03_01.aio.operations import Operations as OperationClass 466 elif api_version == '2021-05-01': 467 from ..v2021_05_01.aio.operations import Operations as OperationClass 468 elif api_version == '2021-07-01': 469 from ..v2021_07_01.aio.operations import Operations as OperationClass 470 else: 471 raise ValueError("API version {} does not have operation group 'operations'".format(api_version)) 472 return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) 473 474 @property 475 def private_endpoint_connections(self): 476 """Instance depends on the API version: 477 478 * 2020-06-01: :class:`PrivateEndpointConnectionsOperations<azure.mgmt.containerservice.v2020_06_01.aio.operations.PrivateEndpointConnectionsOperations>` 479 * 2020-07-01: :class:`PrivateEndpointConnectionsOperations<azure.mgmt.containerservice.v2020_07_01.aio.operations.PrivateEndpointConnectionsOperations>` 480 * 2020-09-01: :class:`PrivateEndpointConnectionsOperations<azure.mgmt.containerservice.v2020_09_01.aio.operations.PrivateEndpointConnectionsOperations>` 481 * 2020-11-01: :class:`PrivateEndpointConnectionsOperations<azure.mgmt.containerservice.v2020_11_01.aio.operations.PrivateEndpointConnectionsOperations>` 482 * 2020-12-01: :class:`PrivateEndpointConnectionsOperations<azure.mgmt.containerservice.v2020_12_01.aio.operations.PrivateEndpointConnectionsOperations>` 483 * 2021-02-01: :class:`PrivateEndpointConnectionsOperations<azure.mgmt.containerservice.v2021_02_01.aio.operations.PrivateEndpointConnectionsOperations>` 484 * 2021-03-01: :class:`PrivateEndpointConnectionsOperations<azure.mgmt.containerservice.v2021_03_01.aio.operations.PrivateEndpointConnectionsOperations>` 485 * 2021-05-01: :class:`PrivateEndpointConnectionsOperations<azure.mgmt.containerservice.v2021_05_01.aio.operations.PrivateEndpointConnectionsOperations>` 486 * 2021-07-01: :class:`PrivateEndpointConnectionsOperations<azure.mgmt.containerservice.v2021_07_01.aio.operations.PrivateEndpointConnectionsOperations>` 487 """ 488 api_version = self._get_api_version('private_endpoint_connections') 489 if api_version == '2020-06-01': 490 from ..v2020_06_01.aio.operations import PrivateEndpointConnectionsOperations as OperationClass 491 elif api_version == '2020-07-01': 492 from ..v2020_07_01.aio.operations import PrivateEndpointConnectionsOperations as OperationClass 493 elif api_version == '2020-09-01': 494 from ..v2020_09_01.aio.operations import PrivateEndpointConnectionsOperations as OperationClass 495 elif api_version == '2020-11-01': 496 from ..v2020_11_01.aio.operations import PrivateEndpointConnectionsOperations as OperationClass 497 elif api_version == '2020-12-01': 498 from ..v2020_12_01.aio.operations import PrivateEndpointConnectionsOperations as OperationClass 499 elif api_version == '2021-02-01': 500 from ..v2021_02_01.aio.operations import PrivateEndpointConnectionsOperations as OperationClass 501 elif api_version == '2021-03-01': 502 from ..v2021_03_01.aio.operations import PrivateEndpointConnectionsOperations as OperationClass 503 elif api_version == '2021-05-01': 504 from ..v2021_05_01.aio.operations import PrivateEndpointConnectionsOperations as OperationClass 505 elif api_version == '2021-07-01': 506 from ..v2021_07_01.aio.operations import PrivateEndpointConnectionsOperations as OperationClass 507 else: 508 raise ValueError("API version {} does not have operation group 'private_endpoint_connections'".format(api_version)) 509 return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) 510 511 @property 512 def private_link_resources(self): 513 """Instance depends on the API version: 514 515 * 2020-09-01: :class:`PrivateLinkResourcesOperations<azure.mgmt.containerservice.v2020_09_01.aio.operations.PrivateLinkResourcesOperations>` 516 * 2020-11-01: :class:`PrivateLinkResourcesOperations<azure.mgmt.containerservice.v2020_11_01.aio.operations.PrivateLinkResourcesOperations>` 517 * 2020-12-01: :class:`PrivateLinkResourcesOperations<azure.mgmt.containerservice.v2020_12_01.aio.operations.PrivateLinkResourcesOperations>` 518 * 2021-02-01: :class:`PrivateLinkResourcesOperations<azure.mgmt.containerservice.v2021_02_01.aio.operations.PrivateLinkResourcesOperations>` 519 * 2021-03-01: :class:`PrivateLinkResourcesOperations<azure.mgmt.containerservice.v2021_03_01.aio.operations.PrivateLinkResourcesOperations>` 520 * 2021-05-01: :class:`PrivateLinkResourcesOperations<azure.mgmt.containerservice.v2021_05_01.aio.operations.PrivateLinkResourcesOperations>` 521 * 2021-07-01: :class:`PrivateLinkResourcesOperations<azure.mgmt.containerservice.v2021_07_01.aio.operations.PrivateLinkResourcesOperations>` 522 """ 523 api_version = self._get_api_version('private_link_resources') 524 if api_version == '2020-09-01': 525 from ..v2020_09_01.aio.operations import PrivateLinkResourcesOperations as OperationClass 526 elif api_version == '2020-11-01': 527 from ..v2020_11_01.aio.operations import PrivateLinkResourcesOperations as OperationClass 528 elif api_version == '2020-12-01': 529 from ..v2020_12_01.aio.operations import PrivateLinkResourcesOperations as OperationClass 530 elif api_version == '2021-02-01': 531 from ..v2021_02_01.aio.operations import PrivateLinkResourcesOperations as OperationClass 532 elif api_version == '2021-03-01': 533 from ..v2021_03_01.aio.operations import PrivateLinkResourcesOperations as OperationClass 534 elif api_version == '2021-05-01': 535 from ..v2021_05_01.aio.operations import PrivateLinkResourcesOperations as OperationClass 536 elif api_version == '2021-07-01': 537 from ..v2021_07_01.aio.operations import PrivateLinkResourcesOperations as OperationClass 538 else: 539 raise ValueError("API version {} does not have operation group 'private_link_resources'".format(api_version)) 540 return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) 541 542 @property 543 def resolve_private_link_service_id(self): 544 """Instance depends on the API version: 545 546 * 2020-09-01: :class:`ResolvePrivateLinkServiceIdOperations<azure.mgmt.containerservice.v2020_09_01.aio.operations.ResolvePrivateLinkServiceIdOperations>` 547 * 2020-11-01: :class:`ResolvePrivateLinkServiceIdOperations<azure.mgmt.containerservice.v2020_11_01.aio.operations.ResolvePrivateLinkServiceIdOperations>` 548 * 2020-12-01: :class:`ResolvePrivateLinkServiceIdOperations<azure.mgmt.containerservice.v2020_12_01.aio.operations.ResolvePrivateLinkServiceIdOperations>` 549 * 2021-02-01: :class:`ResolvePrivateLinkServiceIdOperations<azure.mgmt.containerservice.v2021_02_01.aio.operations.ResolvePrivateLinkServiceIdOperations>` 550 * 2021-03-01: :class:`ResolvePrivateLinkServiceIdOperations<azure.mgmt.containerservice.v2021_03_01.aio.operations.ResolvePrivateLinkServiceIdOperations>` 551 * 2021-05-01: :class:`ResolvePrivateLinkServiceIdOperations<azure.mgmt.containerservice.v2021_05_01.aio.operations.ResolvePrivateLinkServiceIdOperations>` 552 * 2021-07-01: :class:`ResolvePrivateLinkServiceIdOperations<azure.mgmt.containerservice.v2021_07_01.aio.operations.ResolvePrivateLinkServiceIdOperations>` 553 """ 554 api_version = self._get_api_version('resolve_private_link_service_id') 555 if api_version == '2020-09-01': 556 from ..v2020_09_01.aio.operations import ResolvePrivateLinkServiceIdOperations as OperationClass 557 elif api_version == '2020-11-01': 558 from ..v2020_11_01.aio.operations import ResolvePrivateLinkServiceIdOperations as OperationClass 559 elif api_version == '2020-12-01': 560 from ..v2020_12_01.aio.operations import ResolvePrivateLinkServiceIdOperations as OperationClass 561 elif api_version == '2021-02-01': 562 from ..v2021_02_01.aio.operations import ResolvePrivateLinkServiceIdOperations as OperationClass 563 elif api_version == '2021-03-01': 564 from ..v2021_03_01.aio.operations import ResolvePrivateLinkServiceIdOperations as OperationClass 565 elif api_version == '2021-05-01': 566 from ..v2021_05_01.aio.operations import ResolvePrivateLinkServiceIdOperations as OperationClass 567 elif api_version == '2021-07-01': 568 from ..v2021_07_01.aio.operations import ResolvePrivateLinkServiceIdOperations as OperationClass 569 else: 570 raise ValueError("API version {} does not have operation group 'resolve_private_link_service_id'".format(api_version)) 571 return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) 572 573 async def close(self): 574 await self._client.close() 575 async def __aenter__(self): 576 await self._client.__aenter__() 577 return self 578 async def __aexit__(self, *exc_details): 579 await self._client.__aexit__(*exc_details) 580