Skip to content

Commit

Permalink
CodeGen from PR 32741 in Azure/azure-rest-api-specs
Browse files Browse the repository at this point in the history
Merge 3aa7517cefb0629902c6d575528484138a8f3763 into a23cba3dd912b0e2726b4f0847c0197129534e94
  • Loading branch information
SDKAuto committed Feb 24, 2025
1 parent 84e002c commit d77e511
Show file tree
Hide file tree
Showing 51 changed files with 6,529 additions and 5,207 deletions.
12 changes: 5 additions & 7 deletions sdk/loadtesting/azure-mgmt-loadtesting/README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Microsoft Azure SDK for Python

This is the Microsoft Azure Loadtesting Management Client Library.
This package has been tested with Python 3.7+.
This package has been tested with Python 3.8+.
For a more complete view of Azure libraries, see the [azure sdk python release](https://aka.ms/azsdk/python/all).

## _Disclaimer_
Expand All @@ -12,7 +12,7 @@ _Azure SDK Python packages support for Python 2.7 has ended 01 January 2022. For

### Prerequisites

- Python 3.7+ is required to use this package.
- Python 3.8+ is required to use this package.
- [Azure subscription](https://azure.microsoft.com/free/)

### Install the package
Expand Down Expand Up @@ -45,8 +45,9 @@ client = LoadTestMgmtClient(credential=DefaultAzureCredential(), subscription_id

## Examples


Code samples for this package can be found at [Loadtesting Management](https://docs.microsoft.com/samples/browse/?languages=python&term=Getting%20started%20-%20Managing&terms=Getting%20started%20-%20Managing) on docs.microsoft.com and [Samples Repo](https://aka.ms/azsdk/python/mgmt/samples)
Code samples for this package can be found at:
- [Search Loadtesting Management](https://docs.microsoft.com/samples/browse/?languages=python&term=Getting%20started%20-%20Managing&terms=Getting%20started%20-%20Managing) on docs.microsoft.com
- [Azure Python Mgmt SDK Samples Repo](https://aka.ms/azsdk/python/mgmt/samples)


## Troubleshooting
Expand All @@ -58,6 +59,3 @@ Code samples for this package can be found at [Loadtesting Management](https://d
If you encounter any bugs or have suggestions, please file an issue in the
[Issues](https://github.com/Azure/azure-sdk-for-python/issues)
section of the project.



11 changes: 3 additions & 8 deletions sdk/loadtesting/azure-mgmt-loadtesting/_meta.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
{
"commit": "269c77bb83979703db9df46784effa70d9eed1e1",
"commit": "47c6ddd3767311846ec68a8b1aec5894471e8596",
"repository_url": "https://github.com/Azure/azure-rest-api-specs",
"autorest": "3.9.2",
"use": [
"@autorest/[email protected]",
"@autorest/[email protected]"
],
"autorest_command": "autorest specification/loadtestservice/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 --use=@autorest/[email protected] --use=@autorest/[email protected] --version=3.9.2 --version-tolerant=False",
"readme": "specification/loadtestservice/resource-manager/readme.md"
"typespec_src": "specification/loadtestservice/LoadTestService.Management",
"@azure-tools/typespec-python": "0.38.4"
}
44 changes: 44 additions & 0 deletions sdk/loadtesting/azure-mgmt-loadtesting/apiview-properties.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
{
"CrossLanguagePackageId": "Microsoft.LoadTestService",
"CrossLanguageDefinitionId": {
"azure.mgmt.loadtesting.models.CheckQuotaAvailabilityResponse": "Microsoft.LoadTestService.CheckQuotaAvailabilityResponse",
"azure.mgmt.loadtesting.models.CheckQuotaAvailabilityResponseProperties": "Microsoft.LoadTestService.CheckQuotaAvailabilityResponseProperties",
"azure.mgmt.loadtesting.models.EncryptionProperties": "Microsoft.LoadTestService.EncryptionProperties",
"azure.mgmt.loadtesting.models.EncryptionPropertiesIdentity": "Microsoft.LoadTestService.EncryptionPropertiesIdentity",
"azure.mgmt.loadtesting.models.EndpointDependency": "Microsoft.LoadTestService.EndpointDependency",
"azure.mgmt.loadtesting.models.EndpointDetail": "Microsoft.LoadTestService.EndpointDetail",
"azure.mgmt.loadtesting.models.ErrorAdditionalInfo": "Azure.ResourceManager.CommonTypes.ErrorAdditionalInfo",
"azure.mgmt.loadtesting.models.ErrorDetail": "Azure.ResourceManager.CommonTypes.ErrorDetail",
"azure.mgmt.loadtesting.models.ErrorResponse": "Azure.ResourceManager.CommonTypes.ErrorResponse",
"azure.mgmt.loadtesting.models.LoadTestProperties": "Microsoft.LoadTestService.LoadTestProperties",
"azure.mgmt.loadtesting.models.Resource": "Azure.ResourceManager.CommonTypes.Resource",
"azure.mgmt.loadtesting.models.TrackedResource": "Azure.ResourceManager.CommonTypes.TrackedResource",
"azure.mgmt.loadtesting.models.LoadTestResource": "Microsoft.LoadTestService.LoadTestResource",
"azure.mgmt.loadtesting.models.LoadTestResourceUpdate": "Azure.ResourceManager.Foundations.ResourceUpdateModel",
"azure.mgmt.loadtesting.models.LoadTestResourceUpdateProperties": "Azure.ResourceManager.Foundations.ResourceUpdateModelProperties",
"azure.mgmt.loadtesting.models.ManagedServiceIdentity": "Azure.ResourceManager.CommonTypes.ManagedServiceIdentity",
"azure.mgmt.loadtesting.models.OutboundEnvironmentEndpoint": "Microsoft.LoadTestService.OutboundEnvironmentEndpoint",
"azure.mgmt.loadtesting.models.ProxyResource": "Azure.ResourceManager.CommonTypes.ProxyResource",
"azure.mgmt.loadtesting.models.QuotaBucketRequest": "Microsoft.LoadTestService.QuotaBucketRequest",
"azure.mgmt.loadtesting.models.QuotaBucketRequestProperties": "Microsoft.LoadTestService.QuotaBucketRequestProperties",
"azure.mgmt.loadtesting.models.QuotaBucketRequestPropertiesDimensions": "Microsoft.LoadTestService.QuotaBucketRequestPropertiesDimensions",
"azure.mgmt.loadtesting.models.QuotaResource": "Microsoft.LoadTestService.QuotaResource",
"azure.mgmt.loadtesting.models.QuotaResourceProperties": "Microsoft.LoadTestService.QuotaResourceProperties",
"azure.mgmt.loadtesting.models.SystemData": "Azure.ResourceManager.CommonTypes.SystemData",
"azure.mgmt.loadtesting.models.UserAssignedIdentity": "Azure.ResourceManager.CommonTypes.UserAssignedIdentity",
"azure.mgmt.loadtesting.models.CreatedByType": "Azure.ResourceManager.CommonTypes.createdByType",
"azure.mgmt.loadtesting.models.ResourceState": "Microsoft.LoadTestService.ResourceState",
"azure.mgmt.loadtesting.models.Type": "Microsoft.LoadTestService.type",
"azure.mgmt.loadtesting.models.ManagedServiceIdentityType": "Azure.ResourceManager.CommonTypes.ManagedServiceIdentityType",
"azure.mgmt.loadtesting.LoadTestMgmtClient.list_by_subscription": "Customizations.LoadTests.listBySubscription",
"azure.mgmt.loadtesting.LoadTestMgmtClient.list_by_resource_group": "Customizations.LoadTests.listByResourceGroup",
"azure.mgmt.loadtesting.LoadTestMgmtClient.get_loadtest": "Customizations.LoadTests.getLoadtest",
"azure.mgmt.loadtesting.LoadTestMgmtClient.begin_create_or_update_loadtest": "Customizations.LoadTests.createOrUpdateLoadtest",
"azure.mgmt.loadtesting.LoadTestMgmtClient.begin_update_loadtest": "Customizations.LoadTests.updateLoadtest",
"azure.mgmt.loadtesting.LoadTestMgmtClient.begin_delete_loadtest": "Customizations.LoadTests.deleteLoadtest",
"azure.mgmt.loadtesting.LoadTestMgmtClient.outbound_network_dependencies_endpoints": "Customizations.LoadTests.outboundNetworkDependenciesEndpoints",
"azure.mgmt.loadtesting.LoadTestMgmtClient.get_quota": "Customizations.LoadTests.getQuota",
"azure.mgmt.loadtesting.LoadTestMgmtClient.list_quota": "Customizations.LoadTests.listQuota",
"azure.mgmt.loadtesting.LoadTestMgmtClient.check_availability_quota": "Customizations.LoadTests.checkAvailabilityQuota"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,31 @@
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) AutoRest Code Generator.
# Code generated by Microsoft (R) Python Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
# pylint: disable=wrong-import-position

from ._load_test_mgmt_client import LoadTestMgmtClient
from typing import TYPE_CHECKING

if TYPE_CHECKING:
from ._patch import * # pylint: disable=unused-wildcard-import

from ._client import LoadTestMgmtClient # type: ignore
from ._version import VERSION

__version__ = VERSION

try:
from ._patch import __all__ as _patch_all
from ._patch import * # pylint: disable=unused-wildcard-import
from ._patch import *
except ImportError:
_patch_all = []
from ._patch import patch_sdk as _patch_sdk

__all__ = [
"LoadTestMgmtClient",
]
__all__.extend([p for p in _patch_all if p not in __all__])
__all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore

_patch_sdk()
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) Python Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------

from copy import deepcopy
from typing import Any, TYPE_CHECKING
from typing_extensions import Self

from azure.core.pipeline import policies
from azure.core.rest import HttpRequest, HttpResponse
from azure.mgmt.core import ARMPipelineClient
from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy

from ._configuration import LoadTestMgmtClientConfiguration
from ._operations import LoadTestMgmtClientOperationsMixin
from ._serialization import Deserializer, Serializer

if TYPE_CHECKING:
from azure.core.credentials import TokenCredential


class LoadTestMgmtClient(LoadTestMgmtClientOperationsMixin):
"""LoadTestMgmtClient.
:param credential: Credential used to authenticate requests to the service. Required.
:type credential: ~azure.core.credentials.TokenCredential
:param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
:type subscription_id: str
:param base_url: Service host. Default value is "https://management.azure.com".
:type base_url: str
:keyword api_version: The API version to use for this operation. Default value is
"2024-12-01-preview". Note that overriding this default value may result in unsupported
behavior.
:paramtype api_version: str
:keyword int polling_interval: Default waiting time between two polls for LRO operations if no
Retry-After header is present.
"""

def __init__(
self,
credential: "TokenCredential",
subscription_id: str,
base_url: str = "https://management.azure.com",
**kwargs: Any
) -> None:
_endpoint = "{endpoint}"
self._config = LoadTestMgmtClientConfiguration(
credential=credential, subscription_id=subscription_id, base_url=base_url, **kwargs
)
_policies = kwargs.pop("policies", None)
if _policies is None:
_policies = [
policies.RequestIdPolicy(**kwargs),
self._config.headers_policy,
self._config.user_agent_policy,
self._config.proxy_policy,
policies.ContentDecodePolicy(**kwargs),
ARMAutoResourceProviderRegistrationPolicy(),
self._config.redirect_policy,
self._config.retry_policy,
self._config.authentication_policy,
self._config.custom_hook_policy,
self._config.logging_policy,
policies.DistributedTracingPolicy(**kwargs),
policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None,
self._config.http_logging_policy,
]
self._client: ARMPipelineClient = ARMPipelineClient(base_url=_endpoint, policies=_policies, **kwargs)

self._serialize = Serializer()
self._deserialize = Deserializer()
self._serialize.client_side_validation = False

def send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse:
"""Runs the network request through the client's chained policies.
>>> from azure.core.rest import HttpRequest
>>> request = HttpRequest("GET", "https://www.example.org/")
<HttpRequest [GET], url: 'https://www.example.org/'>
>>> response = client.send_request(request)
<HttpResponse: 200 OK>
For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request
:param request: The network request you want to make. Required.
:type request: ~azure.core.rest.HttpRequest
:keyword bool stream: Whether the response payload will be streamed. Defaults to False.
:return: The response of your network call. Does not do error handling on your response.
:rtype: ~azure.core.rest.HttpResponse
"""

request_copy = deepcopy(request)
path_format_arguments = {
"endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True),
}

request_copy.url = self._client.format_url(request_copy.url, **path_format_arguments)
return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore

def close(self) -> None:
self._client.close()

def __enter__(self) -> Self:
self._client.__enter__()
return self

def __exit__(self, *exc_details: Any) -> None:
self._client.__exit__(*exc_details)
Original file line number Diff line number Diff line change
Expand Up @@ -2,47 +2,47 @@
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) AutoRest Code Generator.
# Code generated by Microsoft (R) Python Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------

import sys
from typing import Any, TYPE_CHECKING

from azure.core.configuration import Configuration
from azure.core.pipeline import policies
from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy

from ._version import VERSION

if sys.version_info >= (3, 8):
from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports
else:
from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports

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


class LoadTestMgmtClientConfiguration(Configuration): # pylint: disable=too-many-instance-attributes
class LoadTestMgmtClientConfiguration: # pylint: disable=too-many-instance-attributes
"""Configuration for LoadTestMgmtClient.
Note that all parameters used to create this instance are saved as instance
attributes.
:param credential: Credential needed for the client to connect to Azure. Required.
:param credential: Credential used to authenticate requests to the service. Required.
:type credential: ~azure.core.credentials.TokenCredential
:param subscription_id: The ID of the target subscription. Required.
:param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
:type subscription_id: str
:keyword api_version: Api Version. Default value is "2022-12-01". Note that overriding this
default value may result in unsupported behavior.
:param base_url: Service host. Default value is "https://management.azure.com".
:type base_url: str
:keyword api_version: The API version to use for this operation. Default value is
"2024-12-01-preview". Note that overriding this default value may result in unsupported
behavior.
:paramtype api_version: str
"""

def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None:
super(LoadTestMgmtClientConfiguration, self).__init__(**kwargs)
api_version: Literal["2022-12-01"] = kwargs.pop("api_version", "2022-12-01")
def __init__(
self,
credential: "TokenCredential",
subscription_id: str,
base_url: str = "https://management.azure.com",
**kwargs: Any
) -> None:
api_version: str = kwargs.pop("api_version", "2024-12-01-preview")

if credential is None:
raise ValueError("Parameter 'credential' must not be None.")
Expand All @@ -51,9 +51,11 @@ def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs

self.credential = credential
self.subscription_id = subscription_id
self.base_url = base_url
self.api_version = api_version
self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"])
kwargs.setdefault("sdk_moniker", "mgmt-loadtesting/{}".format(VERSION))
self.polling_interval = kwargs.get("polling_interval", 30)
self._configure(**kwargs)

def _configure(self, **kwargs: Any) -> None:
Expand All @@ -62,9 +64,9 @@ def _configure(self, **kwargs: Any) -> None:
self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs)
self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs)
self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs)
self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs)
self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs)
self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs)
self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs)
self.authentication_policy = kwargs.get("authentication_policy")
if self.credential and not self.authentication_policy:
self.authentication_policy = ARMChallengeAuthenticationPolicy(
Expand Down
Loading

0 comments on commit d77e511

Please sign in to comment.