99# regenerated.
1010# --------------------------------------------------------------------------
1111
12- from typing import Any , Optional , TYPE_CHECKING
12+ from typing import Any , Optional , TYPE_CHECKING , cast
13+ from typing_extensions import Self
1314
15+ from azure .core .pipeline import policies
16+ from azure .core .settings import settings
1417from azure .mgmt .core import ARMPipelineClient
18+ from azure .mgmt .core .policies import ARMAutoResourceProviderRegistrationPolicy
19+ from azure .mgmt .core .tools import get_arm_endpoints
1520from azure .profiles import KnownProfiles , ProfileDefinition
1621from azure .profiles .multiapiclient import MultiApiClientMixin
1722
1823from ._configuration import SourceControlConfigurationClientConfiguration
19- from ._serialization import Deserializer , Serializer
24+ from ._utils . serialization import Deserializer , Serializer
2025
2126if TYPE_CHECKING :
2227 # pylint: disable=unused-import,ungrouped-imports
2328 from azure .core .credentials import TokenCredential
2429
2530class _SDKClient (object ):
2631 def __init__ (self , * args , ** kwargs ):
27- """This is a fake class to support current implemetation of MultiApiClientMixin."
32+ """This is a fake class to support current implementation of MultiApiClientMixin."
2833 Will be removed in final version of multiapi azure-core based client
2934 """
3035 pass
@@ -74,14 +79,37 @@ def __init__(
7479 credential : "TokenCredential" ,
7580 subscription_id : str ,
7681 api_version : Optional [str ]= None ,
77- base_url : str = "https://management.azure.com" ,
82+ base_url : Optional [ str ] = None ,
7883 profile : KnownProfiles = KnownProfiles .default ,
7984 ** kwargs : Any
8085 ):
8186 if api_version :
8287 kwargs .setdefault ('api_version' , api_version )
83- self ._config = SourceControlConfigurationClientConfiguration (credential , subscription_id , ** kwargs )
84- self ._client = ARMPipelineClient (base_url = base_url , config = self ._config , ** kwargs )
88+ _cloud = kwargs .pop ("cloud_setting" , None ) or settings .current .azure_cloud # type: ignore
89+ _endpoints = get_arm_endpoints (_cloud )
90+ if not base_url :
91+ base_url = _endpoints ["resource_manager" ]
92+ credential_scopes = kwargs .pop ("credential_scopes" , _endpoints ["credential_scopes" ])
93+ self ._config = SourceControlConfigurationClientConfiguration (credential , subscription_id , credential_scopes = credential_scopes , ** kwargs )
94+ _policies = kwargs .pop ("policies" , None )
95+ if _policies is None :
96+ _policies = [
97+ policies .RequestIdPolicy (** kwargs ),
98+ self ._config .headers_policy ,
99+ self ._config .user_agent_policy ,
100+ self ._config .proxy_policy ,
101+ policies .ContentDecodePolicy (** kwargs ),
102+ ARMAutoResourceProviderRegistrationPolicy (),
103+ self ._config .redirect_policy ,
104+ self ._config .retry_policy ,
105+ self ._config .authentication_policy ,
106+ self ._config .custom_hook_policy ,
107+ self ._config .logging_policy ,
108+ policies .DistributedTracingPolicy (** kwargs ),
109+ policies .SensitiveHeaderCleanupPolicy (** kwargs ) if self ._config .redirect_policy else None ,
110+ self ._config .http_logging_policy ,
111+ ]
112+ self ._client : ARMPipelineClient = ARMPipelineClient (base_url = cast (str , base_url ), policies = _policies , ** kwargs )
85113 super (SourceControlConfigurationClient , self ).__init__ (
86114 api_version = api_version ,
87115 profile = profile
@@ -108,6 +136,7 @@ def models(cls, api_version=DEFAULT_API_VERSION):
108136 * 2022-07-01: :mod:`v2022_07_01.models<azure.mgmt.kubernetesconfiguration.v2022_07_01.models>`
109137 * 2022-11-01: :mod:`v2022_11_01.models<azure.mgmt.kubernetesconfiguration.v2022_11_01.models>`
110138 * 2023-05-01: :mod:`v2023_05_01.models<azure.mgmt.kubernetesconfiguration.v2023_05_01.models>`
139+ * 2024-04-01-preview: :mod:`v2024_04_01_preview.models<azure.mgmt.kubernetesconfiguration.v2024_04_01_preview.models>`
111140 """
112141 if api_version == '2020-07-01-preview' :
113142 from .v2020_07_01_preview import models
@@ -148,6 +177,9 @@ def models(cls, api_version=DEFAULT_API_VERSION):
148177 elif api_version == '2023-05-01' :
149178 from .v2023_05_01 import models
150179 return models
180+ elif api_version == '2024-04-01-preview' :
181+ from .v2024_04_01_preview import models
182+ return models
151183 raise ValueError ("API version {} is not available" .format (api_version ))
152184
153185 @property
@@ -270,6 +302,7 @@ def flux_config_operation_status(self):
270302 * 2022-07-01: :class:`FluxConfigOperationStatusOperations<azure.mgmt.kubernetesconfiguration.v2022_07_01.operations.FluxConfigOperationStatusOperations>`
271303 * 2022-11-01: :class:`FluxConfigOperationStatusOperations<azure.mgmt.kubernetesconfiguration.v2022_11_01.operations.FluxConfigOperationStatusOperations>`
272304 * 2023-05-01: :class:`FluxConfigOperationStatusOperations<azure.mgmt.kubernetesconfiguration.v2023_05_01.operations.FluxConfigOperationStatusOperations>`
305+ * 2024-04-01-preview: :class:`FluxConfigOperationStatusOperations<azure.mgmt.kubernetesconfiguration.v2024_04_01_preview.operations.FluxConfigOperationStatusOperations>`
273306 """
274307 api_version = self ._get_api_version ('flux_config_operation_status' )
275308 if api_version == '2021-11-01-preview' :
@@ -284,6 +317,8 @@ def flux_config_operation_status(self):
284317 from .v2022_11_01 .operations import FluxConfigOperationStatusOperations as OperationClass
285318 elif api_version == '2023-05-01' :
286319 from .v2023_05_01 .operations import FluxConfigOperationStatusOperations as OperationClass
320+ elif api_version == '2024-04-01-preview' :
321+ from .v2024_04_01_preview .operations import FluxConfigOperationStatusOperations as OperationClass
287322 else :
288323 raise ValueError ("API version {} does not have operation group 'flux_config_operation_status'" .format (api_version ))
289324 self ._config .api_version = api_version
@@ -299,6 +334,7 @@ def flux_configurations(self):
299334 * 2022-07-01: :class:`FluxConfigurationsOperations<azure.mgmt.kubernetesconfiguration.v2022_07_01.operations.FluxConfigurationsOperations>`
300335 * 2022-11-01: :class:`FluxConfigurationsOperations<azure.mgmt.kubernetesconfiguration.v2022_11_01.operations.FluxConfigurationsOperations>`
301336 * 2023-05-01: :class:`FluxConfigurationsOperations<azure.mgmt.kubernetesconfiguration.v2023_05_01.operations.FluxConfigurationsOperations>`
337+ * 2024-04-01-preview: :class:`FluxConfigurationsOperations<azure.mgmt.kubernetesconfiguration.v2024_04_01_preview.operations.FluxConfigurationsOperations>`
302338 """
303339 api_version = self ._get_api_version ('flux_configurations' )
304340 if api_version == '2021-11-01-preview' :
@@ -313,6 +349,8 @@ def flux_configurations(self):
313349 from .v2022_11_01 .operations import FluxConfigurationsOperations as OperationClass
314350 elif api_version == '2023-05-01' :
315351 from .v2023_05_01 .operations import FluxConfigurationsOperations as OperationClass
352+ elif api_version == '2024-04-01-preview' :
353+ from .v2024_04_01_preview .operations import FluxConfigurationsOperations as OperationClass
316354 else :
317355 raise ValueError ("API version {} does not have operation group 'flux_configurations'" .format (api_version ))
318356 self ._config .api_version = api_version
0 commit comments