Skip to content

Commit ea981c3

Browse files
azure-sdkmsyyc
andauthored
[AutoRelease] t2-resourcegraph-2025-11-24-25505(can only be merged by SDK owner) (#44151)
* code and test * update version and changelog --------- Co-authored-by: azure-sdk <PythonSdkPipelines> Co-authored-by: Yuchao Yan <[email protected]>
1 parent 61069ca commit ea981c3

Some content is hidden

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

55 files changed

+3287
-2343
lines changed

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

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

3+
## 8.0.1 (2025-11-24)
4+
5+
### Other Changes
6+
7+
- Regenerated with latest codegen tool for api-version "2021-03-01"
8+
39
## 8.1.0b3 (2022-12-26)
410

511
### Features Added
Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
include _meta.json
2-
recursive-include tests *.py *.json
3-
recursive-include samples *.py *.md
41
include *.md
5-
include azure/__init__.py
6-
include azure/mgmt/__init__.py
72
include LICENSE
83
include azure/mgmt/resourcegraph/py.typed
4+
recursive-include tests *.py
5+
recursive-include samples *.py *.md
6+
include azure/__init__.py
7+
include azure/mgmt/__init__.py

sdk/resources/azure-mgmt-resourcegraph/_meta.json

Lines changed: 0 additions & 11 deletions
This file was deleted.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"commit": "e96c24570a484cff13d153fb472f812878866a39",
3+
"repository_url": "https://github.com/Azure/azure-rest-api-specs",
4+
"autorest": "3.10.2",
5+
"use": [
6+
"@autorest/[email protected]",
7+
"@autorest/[email protected]"
8+
],
9+
"autorest_command": "autorest specification/resourcegraph/resource-manager/readme.md --generate-sample=True --generate-test=True --include-x-ms-examples-original-file=True --package-mode=azure-mgmt --python --python-sdks-folder=/mnt/vss/_work/1/azure-sdk-for-python/sdk --tag=package-2021-03 --use=@autorest/[email protected] --use=@autorest/[email protected] --version=3.10.2 --version-tolerant=False",
10+
"readme": "specification/resourcegraph/resource-manager/readme.md"
11+
}
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
{
2+
"CrossLanguagePackageId": null,
3+
"CrossLanguageDefinitionId": {
4+
"azure.mgmt.resourcegraph.models.Column": null,
5+
"azure.mgmt.resourcegraph.models.Error": null,
6+
"azure.mgmt.resourcegraph.models.ErrorDetails": null,
7+
"azure.mgmt.resourcegraph.models.ErrorFieldContract": null,
8+
"azure.mgmt.resourcegraph.models.ErrorResponse": null,
9+
"azure.mgmt.resourcegraph.models.Facet": null,
10+
"azure.mgmt.resourcegraph.models.FacetError": null,
11+
"azure.mgmt.resourcegraph.models.FacetRequest": null,
12+
"azure.mgmt.resourcegraph.models.FacetRequestOptions": null,
13+
"azure.mgmt.resourcegraph.models.FacetResult": null,
14+
"azure.mgmt.resourcegraph.models.GraphQueryError": null,
15+
"azure.mgmt.resourcegraph.models.GraphQueryErrorError": null,
16+
"azure.mgmt.resourcegraph.models.GraphQueryListResult": null,
17+
"azure.mgmt.resourcegraph.models.Resource": null,
18+
"azure.mgmt.resourcegraph.models.GraphQueryResource": null,
19+
"azure.mgmt.resourcegraph.models.GraphQueryUpdateParameters": null,
20+
"azure.mgmt.resourcegraph.models.Operation": null,
21+
"azure.mgmt.resourcegraph.models.OperationDisplay": null,
22+
"azure.mgmt.resourcegraph.models.OperationListResult": null,
23+
"azure.mgmt.resourcegraph.models.QueryRequest": null,
24+
"azure.mgmt.resourcegraph.models.QueryRequestOptions": null,
25+
"azure.mgmt.resourcegraph.models.QueryResponse": null,
26+
"azure.mgmt.resourcegraph.models.Table": null,
27+
"azure.mgmt.resourcegraph.models.FacetSortOrder": null,
28+
"azure.mgmt.resourcegraph.models.ResultKind": null,
29+
"azure.mgmt.resourcegraph.models.ColumnDataType": null,
30+
"azure.mgmt.resourcegraph.models.ResultFormat": null,
31+
"azure.mgmt.resourcegraph.models.ResultTruncated": null,
32+
"azure.mgmt.resourcegraph.ResourceGraphClient.resources": null,
33+
"azure.mgmt.resourcegraph.aio.ResourceGraphClient.resources": null,
34+
"azure.mgmt.resourcegraph.operations.Operations.list": null,
35+
"azure.mgmt.resourcegraph.aio.operations.Operations.list": null,
36+
"azure.mgmt.resourcegraph.operations.GraphQueryOperations.list_by_subscription": null,
37+
"azure.mgmt.resourcegraph.aio.operations.GraphQueryOperations.list_by_subscription": null,
38+
"azure.mgmt.resourcegraph.operations.GraphQueryOperations.list": null,
39+
"azure.mgmt.resourcegraph.aio.operations.GraphQueryOperations.list": null,
40+
"azure.mgmt.resourcegraph.operations.GraphQueryOperations.get": null,
41+
"azure.mgmt.resourcegraph.aio.operations.GraphQueryOperations.get": null,
42+
"azure.mgmt.resourcegraph.operations.GraphQueryOperations.delete": null,
43+
"azure.mgmt.resourcegraph.aio.operations.GraphQueryOperations.delete": null,
44+
"azure.mgmt.resourcegraph.operations.GraphQueryOperations.create_or_update": null,
45+
"azure.mgmt.resourcegraph.aio.operations.GraphQueryOperations.create_or_update": null,
46+
"azure.mgmt.resourcegraph.operations.GraphQueryOperations.update": null,
47+
"azure.mgmt.resourcegraph.aio.operations.GraphQueryOperations.update": null
48+
}
49+
}

sdk/resources/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/__init__.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,22 +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 ._resource_graph_client import ResourceGraphClient
10+
from typing import TYPE_CHECKING
11+
12+
if TYPE_CHECKING:
13+
from ._patch import * # pylint: disable=unused-wildcard-import
14+
15+
from ._resource_graph_client import ResourceGraphClient # type: ignore
1016
from ._version import VERSION
1117

1218
__version__ = VERSION
1319

1420
try:
1521
from ._patch import __all__ as _patch_all
16-
from ._patch import * # pylint: disable=unused-wildcard-import
22+
from ._patch import *
1723
except ImportError:
1824
_patch_all = []
1925
from ._patch import patch_sdk as _patch_sdk
2026

2127
__all__ = [
2228
"ResourceGraphClient",
2329
]
24-
__all__.extend([p for p in _patch_all if p not in __all__])
30+
__all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore
2531

2632
_patch_sdk()

sdk/resources/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/_configuration.py

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,37 +6,48 @@
66
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
77
# --------------------------------------------------------------------------
88

9-
from typing import Any, TYPE_CHECKING
9+
from typing import Any, Optional, TYPE_CHECKING
1010

11-
from azure.core.configuration import Configuration
1211
from azure.core.pipeline import policies
1312
from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy
1413

1514
from ._version import VERSION
1615

1716
if TYPE_CHECKING:
18-
# pylint: disable=unused-import,ungrouped-imports
17+
from azure.core import AzureClouds
1918
from azure.core.credentials import TokenCredential
2019

2120

22-
class ResourceGraphClientConfiguration(Configuration): # pylint: disable=too-many-instance-attributes
21+
class ResourceGraphClientConfiguration: # pylint: disable=too-many-instance-attributes
2322
"""Configuration for ResourceGraphClient.
2423
2524
Note that all parameters used to create this instance are saved as instance
2625
attributes.
2726
2827
:param credential: Credential needed for the client to connect to Azure. Required.
2928
:type credential: ~azure.core.credentials.TokenCredential
29+
:param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is
30+
None.
31+
:type cloud_setting: ~azure.core.AzureClouds
32+
:keyword api_version: Api Version. Default value is "2021-03-01". Note that overriding this
33+
default value may result in unsupported behavior.
34+
:paramtype api_version: str
3035
"""
3136

32-
def __init__(self, credential: "TokenCredential", **kwargs: Any) -> None:
33-
super(ResourceGraphClientConfiguration, self).__init__(**kwargs)
37+
def __init__(
38+
self, credential: "TokenCredential", cloud_setting: Optional["AzureClouds"] = None, **kwargs: Any
39+
) -> None:
40+
api_version: str = kwargs.pop("api_version", "2021-03-01")
41+
3442
if credential is None:
3543
raise ValueError("Parameter 'credential' must not be None.")
3644

3745
self.credential = credential
46+
self.cloud_setting = cloud_setting
47+
self.api_version = api_version
3848
self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"])
3949
kwargs.setdefault("sdk_moniker", "mgmt-resourcegraph/{}".format(VERSION))
50+
self.polling_interval = kwargs.get("polling_interval", 30)
4051
self._configure(**kwargs)
4152

4253
def _configure(self, **kwargs: Any) -> None:
@@ -45,9 +56,9 @@ def _configure(self, **kwargs: Any) -> None:
4556
self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs)
4657
self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs)
4758
self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs)
48-
self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs)
4959
self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs)
5060
self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs)
61+
self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs)
5162
self.authentication_policy = kwargs.get("authentication_policy")
5263
if self.credential and not self.authentication_policy:
5364
self.authentication_policy = ARMChallengeAuthenticationPolicy(

sdk/resources/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/_resource_graph_client.py

Lines changed: 58 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,45 +7,90 @@
77
# --------------------------------------------------------------------------
88

99
from copy import deepcopy
10-
from typing import Any, TYPE_CHECKING
10+
from typing import Any, Optional, TYPE_CHECKING, cast
11+
from typing_extensions import Self
1112

13+
from azure.core.pipeline import policies
1214
from azure.core.rest import HttpRequest, HttpResponse
15+
from azure.core.settings import settings
1316
from azure.mgmt.core import ARMPipelineClient
17+
from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy
18+
from azure.mgmt.core.tools import get_arm_endpoints
1419

1520
from . import models as _models
1621
from ._configuration import ResourceGraphClientConfiguration
17-
from ._serialization import Deserializer, Serializer
18-
from .operations import Operations, ResourceGraphClientOperationsMixin
22+
from ._utils.serialization import Deserializer, Serializer
23+
from .operations import GraphQueryOperations, Operations, _ResourceGraphClientOperationsMixin
1924

2025
if TYPE_CHECKING:
21-
# pylint: disable=unused-import,ungrouped-imports
26+
from azure.core import AzureClouds
2227
from azure.core.credentials import TokenCredential
2328

2429

25-
class ResourceGraphClient(ResourceGraphClientOperationsMixin): # pylint: disable=client-accepts-api-version-keyword
30+
class ResourceGraphClient(_ResourceGraphClientOperationsMixin):
2631
"""Azure Resource Graph API Reference.
2732
2833
:ivar operations: Operations operations
2934
:vartype operations: azure.mgmt.resourcegraph.operations.Operations
35+
:ivar graph_query: GraphQueryOperations operations
36+
:vartype graph_query: azure.mgmt.resourcegraph.operations.GraphQueryOperations
3037
:param credential: Credential needed for the client to connect to Azure. Required.
3138
:type credential: ~azure.core.credentials.TokenCredential
32-
:param base_url: Service URL. Default value is "https://management.azure.com".
39+
:param base_url: Service URL. Default value is None.
3340
:type base_url: str
41+
:keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is
42+
None.
43+
:paramtype cloud_setting: ~azure.core.AzureClouds
44+
:keyword api_version: Api Version. Default value is "2021-03-01". Note that overriding this
45+
default value may result in unsupported behavior.
46+
:paramtype api_version: str
3447
"""
3548

3649
def __init__(
37-
self, credential: "TokenCredential", base_url: str = "https://management.azure.com", **kwargs: Any
50+
self,
51+
credential: "TokenCredential",
52+
base_url: Optional[str] = None,
53+
*,
54+
cloud_setting: Optional["AzureClouds"] = None,
55+
**kwargs: Any
3856
) -> None:
39-
self._config = ResourceGraphClientConfiguration(credential=credential, **kwargs)
40-
self._client = ARMPipelineClient(base_url=base_url, config=self._config, **kwargs)
57+
_cloud = cloud_setting or settings.current.azure_cloud # type: ignore
58+
_endpoints = get_arm_endpoints(_cloud)
59+
if not base_url:
60+
base_url = _endpoints["resource_manager"]
61+
credential_scopes = kwargs.pop("credential_scopes", _endpoints["credential_scopes"])
62+
self._config = ResourceGraphClientConfiguration(
63+
credential=credential, cloud_setting=cloud_setting, credential_scopes=credential_scopes, **kwargs
64+
)
65+
66+
_policies = kwargs.pop("policies", None)
67+
if _policies is None:
68+
_policies = [
69+
policies.RequestIdPolicy(**kwargs),
70+
self._config.headers_policy,
71+
self._config.user_agent_policy,
72+
self._config.proxy_policy,
73+
policies.ContentDecodePolicy(**kwargs),
74+
ARMAutoResourceProviderRegistrationPolicy(),
75+
self._config.redirect_policy,
76+
self._config.retry_policy,
77+
self._config.authentication_policy,
78+
self._config.custom_hook_policy,
79+
self._config.logging_policy,
80+
policies.DistributedTracingPolicy(**kwargs),
81+
policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None,
82+
self._config.http_logging_policy,
83+
]
84+
self._client: ARMPipelineClient = ARMPipelineClient(base_url=cast(str, base_url), policies=_policies, **kwargs)
4185

4286
client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)}
4387
self._serialize = Serializer(client_models)
4488
self._deserialize = Deserializer(client_models)
4589
self._serialize.client_side_validation = False
4690
self.operations = Operations(self._client, self._config, self._serialize, self._deserialize)
91+
self.graph_query = GraphQueryOperations(self._client, self._config, self._serialize, self._deserialize)
4792

48-
def _send_request(self, request: HttpRequest, **kwargs: Any) -> HttpResponse:
93+
def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse:
4994
"""Runs the network request through the client's chained policies.
5095
5196
>>> from azure.core.rest import HttpRequest
@@ -65,14 +110,14 @@ def _send_request(self, request: HttpRequest, **kwargs: Any) -> HttpResponse:
65110

66111
request_copy = deepcopy(request)
67112
request_copy.url = self._client.format_url(request_copy.url)
68-
return self._client.send_request(request_copy, **kwargs)
113+
return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore
69114

70115
def close(self) -> None:
71116
self._client.close()
72117

73-
def __enter__(self) -> "ResourceGraphClient":
118+
def __enter__(self) -> Self:
74119
self._client.__enter__()
75120
return self
76121

77-
def __exit__(self, *exc_details) -> None:
122+
def __exit__(self, *exc_details: Any) -> None:
78123
self._client.__exit__(*exc_details)
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# --------------------------------------------------------------------------
2+
# Copyright (c) Microsoft Corporation. All rights reserved.
3+
# Licensed under the MIT License. See License.txt in the project root for license information.
4+
# Code generated by Microsoft (R) AutoRest Code Generator.
5+
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
6+
# --------------------------------------------------------------------------

0 commit comments

Comments
 (0)