Skip to content

Commit 9d3f4aa

Browse files
authored
code and test (#41686)
Co-authored-by: azure-sdk <PythonSdkPipelines>
1 parent 3f6b6be commit 9d3f4aa

File tree

1,435 files changed

+19448
-648445
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,435 files changed

+19448
-648445
lines changed

sdk/resources/azure-mgmt-resource/CHANGELOG.md

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,133 @@
11
# Release History
22

3+
## 25.0.0 (2025-06-20)
4+
5+
### Features Added
6+
7+
- Client `ApplicationClient` added operation group `applications`
8+
- Client `ApplicationClient` added operation group `application_definitions`
9+
- Client `ApplicationClient` added operation group `jit_requests`
10+
- Client `FeatureClient` added operation group `features`
11+
- Client `FeatureClient` added operation group `subscription_feature_registrations`
12+
- Client `SubscriptionClient` added operation group `operations`
13+
- Client `SubscriptionClient` added operation group `subscriptions`
14+
- Client `SubscriptionClient` added operation group `tenants`
15+
- Client `PolicyClient` added operation group `data_policy_manifests`
16+
- Client `PolicyClient` added operation group `policy_exemptions`
17+
- Client `PolicyClient` added operation group `variables`
18+
- Client `PolicyClient` added operation group `variable_values`
19+
- Added model `Alias`
20+
- Added model `AliasPath`
21+
- Added enum `AliasPathAttributes`
22+
- Added model `AliasPathMetadata`
23+
- Added enum `AliasPathTokenType`
24+
- Added model `AliasPattern`
25+
- Added enum `AliasPatternType`
26+
- Added enum `AliasType`
27+
- Added enum `AssignmentScopeValidation`
28+
- Added model `DataEffect`
29+
- Added model `DataManifestCustomResourceFunctionDefinition`
30+
- Added model `DataPolicyManifest`
31+
- Added model `DataPolicyManifestListResult`
32+
- Added enum `ExemptionCategory`
33+
- Added model `PolicyExemption`
34+
- Added model `PolicyExemptionListResult`
35+
- Added model `PolicyExemptionUpdate`
36+
- Added model `PolicyVariableColumn`
37+
- Added model `PolicyVariableValueColumnValue`
38+
- Added model `ResourceTypeAliases`
39+
- Added model `Variable`
40+
- Added model `VariableListResult`
41+
- Added model `VariableValue`
42+
- Added model `VariableValueListResult`
43+
- Added model `DataPolicyManifestsOperations`
44+
- Added model `PolicyExemptionsOperations`
45+
- Added model `VariableValuesOperations`
46+
- Added model `VariablesOperations`
47+
48+
### Breaking Changes
49+
50+
- Client `ApplicationClient` deleted or renamed instance variable `api_version`
51+
- Method `ApplicationClient.__init__` deleted or renamed its parameter `api_version` of kind `positional_or_keyword`
52+
- Method `ApplicationClient.__init__` deleted or renamed its parameter `profile` of kind `positional_or_keyword`
53+
- Deleted or renamed client method `ApplicationClient.models`
54+
- Client `FeatureClient` deleted or renamed instance variable `api_version`
55+
- Method `FeatureClient.__init__` deleted or renamed its parameter `api_version` of kind `positional_or_keyword`
56+
- Method `FeatureClient.__init__` deleted or renamed its parameter `profile` of kind `positional_or_keyword`
57+
- Deleted or renamed client method `FeatureClient.models`
58+
- Method `ManagementLinkClient.__init__` deleted or renamed its parameter `api_version` of kind `positional_or_keyword`
59+
- Method `ManagementLinkClient.__init__` deleted or renamed its parameter `profile` of kind `positional_or_keyword`
60+
- Deleted or renamed client method `ManagementLinkClient.models`
61+
- Method `ManagementLockClient.__init__` deleted or renamed its parameter `api_version` of kind `positional_or_keyword`
62+
- Method `ManagementLockClient.__init__` deleted or renamed its parameter `profile` of kind `positional_or_keyword`
63+
- Deleted or renamed client method `ManagementLockClient.models`
64+
- Method `PolicyClient.__init__` deleted or renamed its parameter `api_version` of kind `positional_or_keyword`
65+
- Method `PolicyClient.__init__` deleted or renamed its parameter `profile` of kind `positional_or_keyword`
66+
- Deleted or renamed client method `PolicyClient.models`
67+
- Method `ResourceManagementClient.__init__` deleted or renamed its parameter `api_version` of kind `positional_or_keyword`
68+
- Method `ResourceManagementClient.__init__` deleted or renamed its parameter `profile` of kind `positional_or_keyword`
69+
- Deleted or renamed client method `ResourceManagementClient.models`
70+
- Client `SubscriptionClient` deleted or renamed instance variable `api_version`
71+
- Method `SubscriptionClient.__init__` deleted or renamed its parameter `api_version` of kind `positional_or_keyword`
72+
- Method `SubscriptionClient.__init__` deleted or renamed its parameter `profile` of kind `positional_or_keyword`
73+
- Deleted or renamed client method `SubscriptionClient.models`
74+
- Deleted or renamed client operation group `ResourceManagementClient.deployments`
75+
- Deleted or renamed client operation group `ResourceManagementClient.deployment_operations`
76+
- Deleted or renamed model `BasicDependency`
77+
- Deleted or renamed model `ChangeType`
78+
- Deleted or renamed model `DebugSetting`
79+
- Deleted or renamed model `Dependency`
80+
- Deleted or renamed model `Deployment`
81+
- Deleted or renamed model `DeploymentDiagnosticsDefinition`
82+
- Deleted or renamed model `DeploymentExportResult`
83+
- Deleted or renamed model `DeploymentExtended`
84+
- Deleted or renamed model `DeploymentExtendedFilter`
85+
- Deleted or renamed model `DeploymentExtensionConfigItem`
86+
- Deleted or renamed model `DeploymentExtensionDefinition`
87+
- Deleted or renamed model `DeploymentExternalInput`
88+
- Deleted or renamed model `DeploymentExternalInputDefinition`
89+
- Deleted or renamed model `DeploymentIdentity`
90+
- Deleted or renamed model `DeploymentIdentityType`
91+
- Deleted or renamed model `DeploymentMode`
92+
- Deleted or renamed model `DeploymentOperation`
93+
- Deleted or renamed model `DeploymentOperationProperties`
94+
- Deleted or renamed model `DeploymentParameter`
95+
- Deleted or renamed model `DeploymentProperties`
96+
- Deleted or renamed model `DeploymentPropertiesExtended`
97+
- Deleted or renamed model `DeploymentValidateResult`
98+
- Deleted or renamed model `DeploymentWhatIf`
99+
- Deleted or renamed model `DeploymentWhatIfProperties`
100+
- Deleted or renamed model `DeploymentWhatIfSettings`
101+
- Deleted or renamed model `ExpressionEvaluationOptions`
102+
- Deleted or renamed model `ExpressionEvaluationOptionsScopeType`
103+
- Deleted or renamed model `ExtensionConfigPropertyType`
104+
- Deleted or renamed model `HttpMessage`
105+
- Deleted or renamed model `KeyVaultParameterReference`
106+
- Deleted or renamed model `KeyVaultReference`
107+
- Deleted or renamed model `Level`
108+
- Deleted or renamed model `OnErrorDeployment`
109+
- Deleted or renamed model `OnErrorDeploymentExtended`
110+
- Deleted or renamed model `OnErrorDeploymentType`
111+
- Deleted or renamed model `ParametersLink`
112+
- Deleted or renamed model `PropertyChangeType`
113+
- Deleted or renamed model `ProvisioningOperation`
114+
- Deleted or renamed model `ProvisioningState`
115+
- Deleted or renamed model `ResourceReference`
116+
- Deleted or renamed model `ScopedDeployment`
117+
- Deleted or renamed model `ScopedDeploymentWhatIf`
118+
- Deleted or renamed model `StatusMessage`
119+
- Deleted or renamed model `TargetResource`
120+
- Deleted or renamed model `TemplateHashResult`
121+
- Deleted or renamed model `TemplateLink`
122+
- Deleted or renamed model `UserAssignedIdentity`
123+
- Deleted or renamed model `ValidationLevel`
124+
- Deleted or renamed model `WhatIfChange`
125+
- Deleted or renamed model `WhatIfOperationResult`
126+
- Deleted or renamed model `WhatIfPropertyChange`
127+
- Deleted or renamed model `WhatIfResultFormat`
128+
- Deleted or renamed model `DeploymentOperationsOperations`
129+
- Deleted or renamed model `DeploymentsOperations`
130+
3131
## 24.0.0 (2025-06-16)
4132

5133
### Features Added

sdk/resources/azure-mgmt-resource/_metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"commit": "7fafef79f974d996d4d9f3474bfee09e5d9bdc3b",
2+
"commit": "f20334f6cfbd2c0fa1c9a0df94da2f2f939fd06a",
33
"repository_url": "https://github.com/Azure/azure-rest-api-specs",
44
"autorest": "3.10.2",
55
"use": [

sdk/resources/azure-mgmt-resource/azure/mgmt/resource/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@
55
# license information.
66
# --------------------------------------------------------------------------
77

8-
VERSION = "24.0.0"
8+
VERSION = "25.0.0"

sdk/resources/azure-mgmt-resource/azure/mgmt/resource/changes/__init__.py

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,28 @@
55
# Code generated by Microsoft (R) AutoRest Code Generator.
66
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
77
# --------------------------------------------------------------------------
8+
# pylint: disable=wrong-import-position
89

9-
from ._changes_client import ChangesClient
10-
__all__ = ['ChangesClient']
10+
from typing import TYPE_CHECKING
1111

12-
try:
13-
from ._patch import patch_sdk # type: ignore
14-
patch_sdk()
15-
except ImportError:
16-
pass
12+
if TYPE_CHECKING:
13+
from ._patch import * # pylint: disable=unused-wildcard-import
1714

15+
from ._changes_client import ChangesClient # type: ignore
1816
from ._version import VERSION
1917

2018
__version__ = VERSION
19+
20+
try:
21+
from ._patch import __all__ as _patch_all
22+
from ._patch import *
23+
except ImportError:
24+
_patch_all = []
25+
from ._patch import patch_sdk as _patch_sdk
26+
27+
__all__ = [
28+
"ChangesClient",
29+
]
30+
__all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore
31+
32+
_patch_sdk()
Lines changed: 50 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -1,88 +1,60 @@
11
# coding=utf-8
22
# --------------------------------------------------------------------------
33
# 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-
#
4+
# Licensed under the MIT License. See License.txt in the project root for license information.
75
# Code generated by Microsoft (R) AutoRest Code Generator.
8-
# Changes may cause incorrect behavior and will be lost if the code is
9-
# regenerated.
6+
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
107
# --------------------------------------------------------------------------
118

9+
from copy import deepcopy
1210
from typing import Any, Optional, TYPE_CHECKING, cast
1311
from typing_extensions import Self
1412

1513
from azure.core.pipeline import policies
14+
from azure.core.rest import HttpRequest, HttpResponse
1615
from azure.core.settings import settings
1716
from azure.mgmt.core import ARMPipelineClient
1817
from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy
1918
from azure.mgmt.core.tools import get_arm_endpoints
20-
from azure.profiles import KnownProfiles, ProfileDefinition
21-
from azure.profiles.multiapiclient import MultiApiClientMixin
2219

20+
from . import models as _models
2321
from ._configuration import ChangesClientConfiguration
24-
from ._serialization import Deserializer, Serializer
22+
from ._utils.serialization import Deserializer, Serializer
23+
from .operations import ChangesOperations
2524

2625
if TYPE_CHECKING:
27-
# pylint: disable=unused-import,ungrouped-imports
2826
from azure.core.credentials import TokenCredential
2927

30-
class _SDKClient(object):
31-
def __init__(self, *args, **kwargs):
32-
"""This is a fake class to support current implementation of MultiApiClientMixin."
33-
Will be removed in final version of multiapi azure-core based client
34-
"""
35-
pass
3628

37-
class ChangesClient(MultiApiClientMixin, _SDKClient):
29+
class ChangesClient:
3830
"""The Resource Changes Client.
3931
40-
This ready contains multiple API versions, to help you deal with all of the Azure clouds
41-
(Azure Stack, Azure Government, Azure China, etc.).
42-
By default, it uses the latest API version available on public Azure.
43-
For production, you should stick to a particular api-version and/or profile.
44-
The profile sets a mapping between an operation group and its API version.
45-
The api-version parameter sets the default API version if the operation
46-
group is not described in the profile.
47-
32+
:ivar changes: ChangesOperations operations
33+
:vartype changes: azure.mgmt.resource.changes.operations.ChangesOperations
4834
:param credential: Credential needed for the client to connect to Azure. Required.
4935
:type credential: ~azure.core.credentials.TokenCredential
50-
:param subscription_id: The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000). Required.
36+
:param subscription_id: The Azure subscription ID. This is a GUID-formatted string (e.g.
37+
00000000-0000-0000-0000-000000000000). Required.
5138
:type subscription_id: str
52-
:param api_version: API version to use if no profile is provided, or if missing in profile.
53-
:type api_version: str
54-
:param base_url: Service URL
39+
:param base_url: Service URL. Default value is None.
5540
:type base_url: str
56-
:param profile: A profile definition, from KnownProfiles to dict.
57-
:type profile: azure.profiles.KnownProfiles
41+
:keyword api_version: Api Version. Default value is "2022-05-01". Note that overriding this
42+
default value may result in unsupported behavior.
43+
:paramtype api_version: str
5844
"""
5945

60-
DEFAULT_API_VERSION = '2022-05-01'
61-
_PROFILE_TAG = "azure.mgmt.resource.changes.ChangesClient"
62-
LATEST_PROFILE = ProfileDefinition({
63-
_PROFILE_TAG: {
64-
None: DEFAULT_API_VERSION,
65-
}},
66-
_PROFILE_TAG + " latest"
67-
)
68-
6946
def __init__(
70-
self,
71-
credential: "TokenCredential",
72-
subscription_id: str,
73-
api_version: Optional[str]=None,
74-
base_url: Optional[str] = None,
75-
profile: KnownProfiles=KnownProfiles.default,
76-
**kwargs: Any
77-
):
78-
if api_version:
79-
kwargs.setdefault('api_version', api_version)
47+
self, credential: "TokenCredential", subscription_id: str, base_url: Optional[str] = None, **kwargs: Any
48+
) -> None:
8049
_cloud = kwargs.pop("cloud_setting", None) or settings.current.azure_cloud # type: ignore
8150
_endpoints = get_arm_endpoints(_cloud)
8251
if not base_url:
8352
base_url = _endpoints["resource_manager"]
8453
credential_scopes = kwargs.pop("credential_scopes", _endpoints["credential_scopes"])
85-
self._config = ChangesClientConfiguration(credential, subscription_id, credential_scopes=credential_scopes, **kwargs)
54+
self._config = ChangesClientConfiguration(
55+
credential=credential, subscription_id=subscription_id, credential_scopes=credential_scopes, **kwargs
56+
)
57+
8658
_policies = kwargs.pop("policies", None)
8759
if _policies is None:
8860
_policies = [
@@ -102,44 +74,41 @@ def __init__(
10274
self._config.http_logging_policy,
10375
]
10476
self._client: ARMPipelineClient = ARMPipelineClient(base_url=cast(str, base_url), policies=_policies, **kwargs)
105-
super(ChangesClient, self).__init__(
106-
api_version=api_version,
107-
profile=profile
108-
)
10977

110-
@classmethod
111-
def _models_dict(cls, api_version):
112-
return {k: v for k, v in cls.models(api_version).__dict__.items() if isinstance(v, type)}
78+
client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)}
79+
self._serialize = Serializer(client_models)
80+
self._deserialize = Deserializer(client_models)
81+
self._serialize.client_side_validation = False
82+
self.changes = ChangesOperations(self._client, self._config, self._serialize, self._deserialize)
11383

114-
@classmethod
115-
def models(cls, api_version=DEFAULT_API_VERSION):
116-
"""Module depends on the API version:
84+
def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse:
85+
"""Runs the network request through the client's chained policies.
11786
118-
* 2022-05-01: :mod:`v2022_05_01.models<azure.mgmt.resource.changes.v2022_05_01.models>`
119-
"""
120-
if api_version == '2022-05-01':
121-
from .v2022_05_01 import models
122-
return models
123-
raise ValueError("API version {} is not available".format(api_version))
87+
>>> from azure.core.rest import HttpRequest
88+
>>> request = HttpRequest("GET", "https://www.example.org/")
89+
<HttpRequest [GET], url: 'https://www.example.org/'>
90+
>>> response = client._send_request(request)
91+
<HttpResponse: 200 OK>
12492
125-
@property
126-
def changes(self):
127-
"""Instance depends on the API version:
93+
For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request
12894
129-
* 2022-05-01: :class:`ChangesOperations<azure.mgmt.resource.changes.v2022_05_01.operations.ChangesOperations>`
95+
:param request: The network request you want to make. Required.
96+
:type request: ~azure.core.rest.HttpRequest
97+
:keyword bool stream: Whether the response payload will be streamed. Defaults to False.
98+
:return: The response of your network call. Does not do error handling on your response.
99+
:rtype: ~azure.core.rest.HttpResponse
130100
"""
131-
api_version = self._get_api_version('changes')
132-
if api_version == '2022-05-01':
133-
from .v2022_05_01.operations import ChangesOperations as OperationClass
134-
else:
135-
raise ValueError("API version {} does not have operation group 'changes'".format(api_version))
136-
self._config.api_version = api_version
137-
return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version)
138-
139-
def close(self):
101+
102+
request_copy = deepcopy(request)
103+
request_copy.url = self._client.format_url(request_copy.url)
104+
return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore
105+
106+
def close(self) -> None:
140107
self._client.close()
141-
def __enter__(self):
108+
109+
def __enter__(self) -> Self:
142110
self._client.__enter__()
143111
return self
144-
def __exit__(self, *exc_details):
112+
113+
def __exit__(self, *exc_details: Any) -> None:
145114
self._client.__exit__(*exc_details)

0 commit comments

Comments
 (0)