Skip to content

Commit 1c104ef

Browse files
[AutoRelease] t2-nginx-2025-02-04-84884(can only be merged by SDK owner) (Azure#39547)
* code and test * update testcases --------- Co-authored-by: azure-sdk <PythonSdkPipelines> Co-authored-by: ChenxiJiang333 <[email protected]>
1 parent b7f0d9c commit 1c104ef

File tree

70 files changed

+4252
-1698
lines changed

Some content is hidden

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

70 files changed

+4252
-1698
lines changed

sdk/nginx/azure-mgmt-nginx/CHANGELOG.md

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

3+
## 3.1.0b2 (2025-02-23)
4+
5+
### Features Added
6+
7+
- Client `NginxManagementClient` added operation group `api_keys`
8+
- Model `AnalysisResultData` added property `diagnostics`
9+
- Model `NginxDeploymentProperties` added property `nginx_app_protect`
10+
- Model `NginxDeploymentProperties` added property `dataplane_api_endpoint`
11+
- Model `NginxDeploymentUpdateProperties` added property `network_profile`
12+
- Model `NginxDeploymentUpdateProperties` added property `nginx_app_protect`
13+
- Added enum `ActivationState`
14+
- Added model `DiagnosticItem`
15+
- Added model `ErrorResponse`
16+
- Added enum `Level`
17+
- Added model `NginxConfigurationProtectedFileRequest`
18+
- Added model `NginxConfigurationProtectedFileResponse`
19+
- Added model `NginxConfigurationRequest`
20+
- Added model `NginxConfigurationRequestProperties`
21+
- Added model `NginxConfigurationResponse`
22+
- Added model `NginxConfigurationResponseProperties`
23+
- Added model `NginxDeploymentApiKeyListResponse`
24+
- Added model `NginxDeploymentApiKeyRequest`
25+
- Added model `NginxDeploymentApiKeyRequestProperties`
26+
- Added model `NginxDeploymentApiKeyResponse`
27+
- Added model `NginxDeploymentApiKeyResponseProperties`
28+
- Added model `NginxDeploymentPropertiesNginxAppProtect`
29+
- Added model `NginxDeploymentUpdatePropertiesNginxAppProtect`
30+
- Added model `WebApplicationFirewallComponentVersions`
31+
- Added model `WebApplicationFirewallPackage`
32+
- Added model `WebApplicationFirewallSettings`
33+
- Added model `WebApplicationFirewallStatus`
34+
- Added operation group `ApiKeysOperations`
35+
36+
### Breaking Changes
37+
38+
- Model `NginxDeploymentProperties` deleted or renamed its instance variable `managed_resource_group`
39+
- Deleted or renamed model `NginxConfiguration`
40+
- Deleted or renamed model `NginxConfigurationProperties`
41+
- Deleted or renamed model `ResourceProviderDefaultErrorResponse`
42+
343
## 3.1.0b1 (2024-03-18)
444

545
### Features Added
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
{
2-
"commit": "cf5ad1932d00c7d15497705ad6b71171d3d68b1e",
2+
"commit": "198ffdb2b788b49be283a388ad9735b0cfad1be1",
33
"repository_url": "https://github.com/Azure/azure-rest-api-specs",
4-
"autorest": "3.9.7",
4+
"autorest": "3.10.2",
55
"use": [
6-
"@autorest/python@6.7.1",
7-
"@autorest/modelerfour@4.26.2"
6+
"@autorest/python@6.27.4",
7+
"@autorest/modelerfour@4.27.0"
88
],
9-
"autorest_command": "autorest specification/nginx/resource-manager/readme.md --generate-sample=True --include-x-ms-examples-original-file=True --python --python-sdks-folder=/home/vsts/work/1/azure-sdk-for-python/sdk --tag=package-2024-01-01-preview --use=@autorest/python@6.7.1 --use=@autorest/modelerfour@4.26.2 --version=3.9.7 --version-tolerant=False",
9+
"autorest_command": "autorest specification/nginx/resource-manager/readme.md --generate-sample=True --generate-test=True --include-x-ms-examples-original-file=True --python --python-sdks-folder=/mnt/vss/_work/1/azure-sdk-for-python/sdk --use=@autorest/python@6.27.4 --use=@autorest/modelerfour@4.27.0 --version=3.10.2 --version-tolerant=False",
1010
"readme": "specification/nginx/resource-manager/readme.md"
1111
}

sdk/nginx/azure-mgmt-nginx/assets.json

Lines changed: 0 additions & 6 deletions
This file was deleted.

sdk/nginx/azure-mgmt-nginx/azure/mgmt/nginx/__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 ._nginx_management_client import NginxManagementClient
10+
from typing import TYPE_CHECKING
11+
12+
if TYPE_CHECKING:
13+
from ._patch import * # pylint: disable=unused-wildcard-import
14+
15+
from ._nginx_management_client import NginxManagementClient # 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
"NginxManagementClient",
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/nginx/azure-mgmt-nginx/azure/mgmt/nginx/_configuration.py

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,35 +8,32 @@
88

99
from typing import Any, 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
1917
from azure.core.credentials import TokenCredential
2018

2119

22-
class NginxManagementClientConfiguration(Configuration): # pylint: disable=too-many-instance-attributes
20+
class NginxManagementClientConfiguration: # pylint: disable=too-many-instance-attributes
2321
"""Configuration for NginxManagementClient.
2422
2523
Note that all parameters used to create this instance are saved as instance
2624
attributes.
2725
2826
:param credential: Credential needed for the client to connect to Azure. Required.
2927
:type credential: ~azure.core.credentials.TokenCredential
30-
:param subscription_id: The ID of the target subscription. Required.
28+
:param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
3129
:type subscription_id: str
32-
:keyword api_version: Api Version. Default value is "2024-01-01-preview". Note that overriding
30+
:keyword api_version: Api Version. Default value is "2024-11-01-preview". Note that overriding
3331
this default value may result in unsupported behavior.
3432
:paramtype api_version: str
3533
"""
3634

3735
def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None:
38-
super(NginxManagementClientConfiguration, self).__init__(**kwargs)
39-
api_version: str = kwargs.pop("api_version", "2024-01-01-preview")
36+
api_version: str = kwargs.pop("api_version", "2024-11-01-preview")
4037

4138
if credential is None:
4239
raise ValueError("Parameter 'credential' must not be None.")
@@ -48,6 +45,7 @@ def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs
4845
self.api_version = api_version
4946
self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"])
5047
kwargs.setdefault("sdk_moniker", "mgmt-nginx/{}".format(VERSION))
48+
self.polling_interval = kwargs.get("polling_interval", 30)
5149
self._configure(**kwargs)
5250

5351
def _configure(self, **kwargs: Any) -> None:
@@ -56,9 +54,9 @@ def _configure(self, **kwargs: Any) -> None:
5654
self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs)
5755
self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs)
5856
self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs)
59-
self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs)
6057
self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs)
6158
self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs)
59+
self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs)
6260
self.authentication_policy = kwargs.get("authentication_policy")
6361
if self.credential and not self.authentication_policy:
6462
self.authentication_policy = ARMChallengeAuthenticationPolicy(

sdk/nginx/azure-mgmt-nginx/azure/mgmt/nginx/_nginx_management_client.py

Lines changed: 38 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,23 +8,33 @@
88

99
from copy import deepcopy
1010
from typing import Any, TYPE_CHECKING
11+
from typing_extensions import Self
1112

13+
from azure.core.pipeline import policies
1214
from azure.core.rest import HttpRequest, HttpResponse
1315
from azure.mgmt.core import ARMPipelineClient
16+
from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy
1417

1518
from . import models as _models
1619
from ._configuration import NginxManagementClientConfiguration
1720
from ._serialization import Deserializer, Serializer
18-
from .operations import CertificatesOperations, ConfigurationsOperations, DeploymentsOperations, Operations
21+
from .operations import (
22+
ApiKeysOperations,
23+
CertificatesOperations,
24+
ConfigurationsOperations,
25+
DeploymentsOperations,
26+
Operations,
27+
)
1928

2029
if TYPE_CHECKING:
21-
# pylint: disable=unused-import,ungrouped-imports
2230
from azure.core.credentials import TokenCredential
2331

2432

25-
class NginxManagementClient: # pylint: disable=client-accepts-api-version-keyword
33+
class NginxManagementClient:
2634
"""NginxManagementClient.
2735
36+
:ivar api_keys: ApiKeysOperations operations
37+
:vartype api_keys: azure.mgmt.nginx.operations.ApiKeysOperations
2838
:ivar certificates: CertificatesOperations operations
2939
:vartype certificates: azure.mgmt.nginx.operations.CertificatesOperations
3040
:ivar configurations: ConfigurationsOperations operations
@@ -35,11 +45,11 @@ class NginxManagementClient: # pylint: disable=client-accepts-api-version-keywo
3545
:vartype operations: azure.mgmt.nginx.operations.Operations
3646
:param credential: Credential needed for the client to connect to Azure. Required.
3747
:type credential: ~azure.core.credentials.TokenCredential
38-
:param subscription_id: The ID of the target subscription. Required.
48+
:param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
3949
:type subscription_id: str
4050
:param base_url: Service URL. Default value is "https://management.azure.com".
4151
:type base_url: str
42-
:keyword api_version: Api Version. Default value is "2024-01-01-preview". Note that overriding
52+
:keyword api_version: Api Version. Default value is "2024-11-01-preview". Note that overriding
4353
this default value may result in unsupported behavior.
4454
:paramtype api_version: str
4555
:keyword int polling_interval: Default waiting time between two polls for LRO operations if no
@@ -56,18 +66,37 @@ def __init__(
5666
self._config = NginxManagementClientConfiguration(
5767
credential=credential, subscription_id=subscription_id, **kwargs
5868
)
59-
self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, config=self._config, **kwargs)
69+
_policies = kwargs.pop("policies", None)
70+
if _policies is None:
71+
_policies = [
72+
policies.RequestIdPolicy(**kwargs),
73+
self._config.headers_policy,
74+
self._config.user_agent_policy,
75+
self._config.proxy_policy,
76+
policies.ContentDecodePolicy(**kwargs),
77+
ARMAutoResourceProviderRegistrationPolicy(),
78+
self._config.redirect_policy,
79+
self._config.retry_policy,
80+
self._config.authentication_policy,
81+
self._config.custom_hook_policy,
82+
self._config.logging_policy,
83+
policies.DistributedTracingPolicy(**kwargs),
84+
policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None,
85+
self._config.http_logging_policy,
86+
]
87+
self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs)
6088

6189
client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)}
6290
self._serialize = Serializer(client_models)
6391
self._deserialize = Deserializer(client_models)
6492
self._serialize.client_side_validation = False
93+
self.api_keys = ApiKeysOperations(self._client, self._config, self._serialize, self._deserialize)
6594
self.certificates = CertificatesOperations(self._client, self._config, self._serialize, self._deserialize)
6695
self.configurations = ConfigurationsOperations(self._client, self._config, self._serialize, self._deserialize)
6796
self.deployments = DeploymentsOperations(self._client, self._config, self._serialize, self._deserialize)
6897
self.operations = Operations(self._client, self._config, self._serialize, self._deserialize)
6998

70-
def _send_request(self, request: HttpRequest, **kwargs: Any) -> HttpResponse:
99+
def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse:
71100
"""Runs the network request through the client's chained policies.
72101
73102
>>> from azure.core.rest import HttpRequest
@@ -87,12 +116,12 @@ def _send_request(self, request: HttpRequest, **kwargs: Any) -> HttpResponse:
87116

88117
request_copy = deepcopy(request)
89118
request_copy.url = self._client.format_url(request_copy.url)
90-
return self._client.send_request(request_copy, **kwargs)
119+
return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore
91120

92121
def close(self) -> None:
93122
self._client.close()
94123

95-
def __enter__(self) -> "NginxManagementClient":
124+
def __enter__(self) -> Self:
96125
self._client.__enter__()
97126
return self
98127

sdk/nginx/azure-mgmt-nginx/azure/mgmt/nginx/_patch.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
#
2626
# --------------------------------------------------------------------------
2727

28+
2829
# This file is used for handwritten extensions to the generated code. Example:
2930
# https://github.com/Azure/azure-sdk-for-python/blob/main/doc/dev/customize_code/how-to-patch-sdk-code.md
3031
def patch_sdk():

0 commit comments

Comments
 (0)