diff --git a/sdk/reservations/azure-mgmt-reservations/CHANGELOG.md b/sdk/reservations/azure-mgmt-reservations/CHANGELOG.md index 4b7857cab5ae..81a131e26d34 100644 --- a/sdk/reservations/azure-mgmt-reservations/CHANGELOG.md +++ b/sdk/reservations/azure-mgmt-reservations/CHANGELOG.md @@ -1,5 +1,18 @@ # Release History +## 1.0.0 (2021-05-20) + +**Features** + + - Model ReservationToPurchaseExchange has a new parameter reservation_id + - Model ReservationToPurchaseExchange has a new parameter properties + - Model ReservationToPurchaseCalculateExchange has a new parameter properties + +**Breaking changes** + + - Removed operation ReservationOrderOperations.change_directory + - Removed operation group AutoQuotaIncreaseOperations + ## 1.0.0b1 (2020-12-09) This is beta preview version. diff --git a/sdk/reservations/azure-mgmt-reservations/MANIFEST.in b/sdk/reservations/azure-mgmt-reservations/MANIFEST.in index a3cb07df8765..3a9b6517412b 100644 --- a/sdk/reservations/azure-mgmt-reservations/MANIFEST.in +++ b/sdk/reservations/azure-mgmt-reservations/MANIFEST.in @@ -1,3 +1,4 @@ +include _meta.json recursive-include tests *.py *.yaml include *.md include azure/__init__.py diff --git a/sdk/reservations/azure-mgmt-reservations/_meta.json b/sdk/reservations/azure-mgmt-reservations/_meta.json new file mode 100644 index 000000000000..2fbac189a867 --- /dev/null +++ b/sdk/reservations/azure-mgmt-reservations/_meta.json @@ -0,0 +1,11 @@ +{ + "autorest": "3.4.2", + "use": [ + "@autorest/python@5.8.0", + "@autorest/modelerfour@4.19.1" + ], + "commit": "aac59eea2fb1c142fd371c9c1886f33713e494a2", + "repository_url": "https://github.com/Azure/azure-rest-api-specs", + "autorest_command": "autorest specification/reservations/resource-manager/readme.md --multiapi --python --python-mode=update --python-sdks-folder=/home/vsts/work/1/s/azure-sdk-for-python/sdk --track2 --use=@autorest/python@5.8.0 --use=@autorest/modelerfour@4.19.1 --version=3.4.2", + "readme": "specification/reservations/resource-manager/readme.md" +} \ No newline at end of file diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_azure_reservation_api.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_azure_reservation_api.py index 89a2c30a6644..2ab9b6c59975 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_azure_reservation_api.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_azure_reservation_api.py @@ -16,29 +16,23 @@ from typing import Any, Optional from azure.core.credentials import TokenCredential + from azure.core.pipeline.transport import HttpRequest, HttpResponse from ._configuration import AzureReservationAPIConfiguration -from .operations import QuotaOperations -from .operations import QuotaRequestStatusOperations -from .operations import AutoQuotaIncreaseOperations from .operations import ReservationOperations from .operations import AzureReservationAPIOperationsMixin from .operations import ReservationOrderOperations from .operations import OperationOperations from .operations import CalculateExchangeOperations from .operations import ExchangeOperations +from .operations import QuotaOperations +from .operations import QuotaRequestStatusOperations from . import models class AzureReservationAPI(AzureReservationAPIOperationsMixin): - """Microsoft Azure Quota Resource Provider. + """This API describe Azure Reservation. - :ivar quota: QuotaOperations operations - :vartype quota: azure.mgmt.reservations.operations.QuotaOperations - :ivar quota_request_status: QuotaRequestStatusOperations operations - :vartype quota_request_status: azure.mgmt.reservations.operations.QuotaRequestStatusOperations - :ivar auto_quota_increase: AutoQuotaIncreaseOperations operations - :vartype auto_quota_increase: azure.mgmt.reservations.operations.AutoQuotaIncreaseOperations :ivar reservation: ReservationOperations operations :vartype reservation: azure.mgmt.reservations.operations.ReservationOperations :ivar reservation_order: ReservationOrderOperations operations @@ -49,6 +43,10 @@ class AzureReservationAPI(AzureReservationAPIOperationsMixin): :vartype calculate_exchange: azure.mgmt.reservations.operations.CalculateExchangeOperations :ivar exchange: ExchangeOperations operations :vartype exchange: azure.mgmt.reservations.operations.ExchangeOperations + :ivar quota: QuotaOperations operations + :vartype quota: azure.mgmt.reservations.operations.QuotaOperations + :ivar quota_request_status: QuotaRequestStatusOperations operations + :vartype quota_request_status: azure.mgmt.reservations.operations.QuotaRequestStatusOperations :param credential: Credential needed for the client to connect to Azure. :type credential: ~azure.core.credentials.TokenCredential :param str base_url: Service URL @@ -72,12 +70,6 @@ def __init__( self._serialize.client_side_validation = False self._deserialize = Deserializer(client_models) - self.quota = QuotaOperations( - self._client, self._config, self._serialize, self._deserialize) - self.quota_request_status = QuotaRequestStatusOperations( - self._client, self._config, self._serialize, self._deserialize) - self.auto_quota_increase = AutoQuotaIncreaseOperations( - self._client, self._config, self._serialize, self._deserialize) self.reservation = ReservationOperations( self._client, self._config, self._serialize, self._deserialize) self.reservation_order = ReservationOrderOperations( @@ -88,6 +80,25 @@ def __init__( self._client, self._config, self._serialize, self._deserialize) self.exchange = ExchangeOperations( self._client, self._config, self._serialize, self._deserialize) + self.quota = QuotaOperations( + self._client, self._config, self._serialize, self._deserialize) + self.quota_request_status = QuotaRequestStatusOperations( + self._client, self._config, self._serialize, self._deserialize) + + def _send_request(self, http_request, **kwargs): + # type: (HttpRequest, Any) -> HttpResponse + """Runs the network request through the client's chained policies. + + :param http_request: The network request you want to make. Required. + :type http_request: ~azure.core.pipeline.transport.HttpRequest + :keyword bool stream: Whether the response payload will be streamed. Defaults to True. + :return: The response of your network call. Does not do error handling on your response. + :rtype: ~azure.core.pipeline.transport.HttpResponse + """ + http_request.url = self._client.format_url(http_request.url) + stream = kwargs.pop("stream", True) + pipeline_response = self._client._pipeline.run(http_request, stream=stream, **kwargs) + return pipeline_response.http_response def close(self): # type: () -> None diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_metadata.json b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_metadata.json new file mode 100644 index 000000000000..3892046615ea --- /dev/null +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_metadata.json @@ -0,0 +1,127 @@ +{ + "chosen_version": "", + "total_api_version_list": ["2020-10-01-preview", "2020-10-25"], + "client": { + "name": "AzureReservationAPI", + "filename": "_azure_reservation_api", + "description": "This API describe Azure Reservation.", + "base_url": "\u0027https://management.azure.com\u0027", + "custom_base_url": null, + "azure_arm": true, + "has_lro_operations": true, + "client_side_validation": false, + "sync_imports": "{\"typing\": {\"azurecore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}, \"regular\": {\"azurecore\": {\"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"], \"msrest\": [\"Deserializer\", \"Serializer\"], \"azure.mgmt.core\": [\"ARMPipelineClient\"]}, \"local\": {\"._configuration\": [\"AzureReservationAPIConfiguration\"], \"._operations_mixin\": [\"AzureReservationAPIOperationsMixin\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}, \"azurecore\": {\"azure.core.pipeline.transport\": [\"HttpRequest\", \"HttpResponse\"]}}}", + "async_imports": "{\"typing\": {\"azurecore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}, \"regular\": {\"azurecore\": {\"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"], \"msrest\": [\"Deserializer\", \"Serializer\"], \"azure.mgmt.core\": [\"AsyncARMPipelineClient\"]}, \"local\": {\"._configuration\": [\"AzureReservationAPIConfiguration\"], \"._operations_mixin\": [\"AzureReservationAPIOperationsMixin\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}, \"azurecore\": {\"azure.core.pipeline.transport\": [\"AsyncHttpResponse\", \"HttpRequest\"]}}}" + }, + "global_parameters": { + "sync": { + "credential": { + "signature": "credential, # type: \"TokenCredential\"", + "description": "Credential needed for the client to connect to Azure.", + "docstring_type": "~azure.core.credentials.TokenCredential", + "required": true + } + }, + "async": { + "credential": { + "signature": "credential: \"AsyncTokenCredential\",", + "description": "Credential needed for the client to connect to Azure.", + "docstring_type": "~azure.core.credentials_async.AsyncTokenCredential", + "required": true + } + }, + "constant": { + }, + "call": "credential", + "service_client_specific": { + "sync": { + "api_version": { + "signature": "api_version=None, # type: Optional[str]", + "description": "API version to use if no profile is provided, or if missing in profile.", + "docstring_type": "str", + "required": false + }, + "base_url": { + "signature": "base_url=None, # type: Optional[str]", + "description": "Service URL", + "docstring_type": "str", + "required": false + }, + "profile": { + "signature": "profile=KnownProfiles.default, # type: KnownProfiles", + "description": "A profile definition, from KnownProfiles to dict.", + "docstring_type": "azure.profiles.KnownProfiles", + "required": false + } + }, + "async": { + "api_version": { + "signature": "api_version: Optional[str] = None,", + "description": "API version to use if no profile is provided, or if missing in profile.", + "docstring_type": "str", + "required": false + }, + "base_url": { + "signature": "base_url: Optional[str] = None,", + "description": "Service URL", + "docstring_type": "str", + "required": false + }, + "profile": { + "signature": "profile: KnownProfiles = KnownProfiles.default,", + "description": "A profile definition, from KnownProfiles to dict.", + "docstring_type": "azure.profiles.KnownProfiles", + "required": false + } + } + } + }, + "config": { + "credential": true, + "credential_scopes": ["https://management.azure.com/.default"], + "credential_default_policy_type": "BearerTokenCredentialPolicy", + "credential_default_policy_type_has_async_version": true, + "credential_key_header_name": null, + "sync_imports": "{\"regular\": {\"azurecore\": {\"azure.core.configuration\": [\"Configuration\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMHttpLoggingPolicy\"]}, \"local\": {\"._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"azurecore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", + "async_imports": "{\"regular\": {\"azurecore\": {\"azure.core.configuration\": [\"Configuration\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMHttpLoggingPolicy\"]}, \"local\": {\".._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"azurecore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" + }, + "operation_groups": { + "reservation": "ReservationOperations", + "reservation_order": "ReservationOrderOperations", + "operation": "OperationOperations", + "calculate_exchange": "CalculateExchangeOperations", + "exchange": "ExchangeOperations", + "quota": "QuotaOperations", + "quota_request_status": "QuotaRequestStatusOperations" + }, + "operation_mixins": { + "sync_imports": "{\"regular\": {\"azurecore\": {\"azure.core.exceptions\": [\"ClientAuthenticationError\", \"HttpResponseError\", \"ResourceExistsError\", \"ResourceNotFoundError\", \"map_error\"], \"azure.mgmt.core.exceptions\": [\"ARMErrorFormat\"], \"azure.core.pipeline\": [\"PipelineResponse\"], \"azure.core.pipeline.transport\": [\"HttpRequest\", \"HttpResponse\"]}, \"stdlib\": {\"warnings\": [null]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Callable\", \"Dict\", \"Generic\", \"List\", \"Optional\", \"TypeVar\"]}}}", + "async_imports": "{\"regular\": {\"azurecore\": {\"azure.core.exceptions\": [\"ClientAuthenticationError\", \"HttpResponseError\", \"ResourceExistsError\", \"ResourceNotFoundError\", \"map_error\"], \"azure.mgmt.core.exceptions\": [\"ARMErrorFormat\"], \"azure.core.pipeline\": [\"PipelineResponse\"], \"azure.core.pipeline.transport\": [\"AsyncHttpResponse\", \"HttpRequest\"]}, \"stdlib\": {\"warnings\": [null]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Callable\", \"Dict\", \"Generic\", \"List\", \"Optional\", \"TypeVar\"]}}}", + "operations": { + "get_catalog" : { + "sync": { + "signature": "def get_catalog(\n self,\n subscription_id, # type: str\n reserved_resource_type, # type: str\n location=None, # type: Optional[str]\n **kwargs # type: Any\n):\n", + "doc": "\"\"\"Get the regions and skus that are available for RI purchase for the specified Azure subscription.\n\nGet the regions and skus that are available for RI purchase for the specified Azure\nsubscription.\n\n:param subscription_id: Id of the subscription.\n:type subscription_id: str\n:param reserved_resource_type: The type of the resource for which the skus should be provided.\n:type reserved_resource_type: str\n:param location: Filters the skus based on the location specified in this parameter. This can\n be an azure region or global.\n:type location: str\n:keyword callable cls: A custom type or function that will be passed the direct response\n:return: list of Catalog, or the result of cls(response)\n:rtype: list[~azure.mgmt.reservations.models.Catalog]\n:raises: ~azure.core.exceptions.HttpResponseError\n\"\"\"" + }, + "async": { + "coroutine": true, + "signature": "async def get_catalog(\n self,\n subscription_id: str,\n reserved_resource_type: str,\n location: Optional[str] = None,\n **kwargs: Any\n) -\u003e List[\"_models.Catalog\"]:\n", + "doc": "\"\"\"Get the regions and skus that are available for RI purchase for the specified Azure subscription.\n\nGet the regions and skus that are available for RI purchase for the specified Azure\nsubscription.\n\n:param subscription_id: Id of the subscription.\n:type subscription_id: str\n:param reserved_resource_type: The type of the resource for which the skus should be provided.\n:type reserved_resource_type: str\n:param location: Filters the skus based on the location specified in this parameter. This can\n be an azure region or global.\n:type location: str\n:keyword callable cls: A custom type or function that will be passed the direct response\n:return: list of Catalog, or the result of cls(response)\n:rtype: list[~azure.mgmt.reservations.models.Catalog]\n:raises: ~azure.core.exceptions.HttpResponseError\n\"\"\"" + }, + "call": "subscription_id, reserved_resource_type, location" + }, + "get_applied_reservation_list" : { + "sync": { + "signature": "def get_applied_reservation_list(\n self,\n subscription_id, # type: str\n **kwargs # type: Any\n):\n", + "doc": "\"\"\"Get list of applicable ``Reservation``\\ s.\n\nGet applicable ``Reservation``\\ s that are applied to this subscription or a resource group\nunder this subscription.\n\n:param subscription_id: Id of the subscription.\n:type subscription_id: str\n:keyword callable cls: A custom type or function that will be passed the direct response\n:return: AppliedReservations, or the result of cls(response)\n:rtype: ~azure.mgmt.reservations.models.AppliedReservations\n:raises: ~azure.core.exceptions.HttpResponseError\n\"\"\"" + }, + "async": { + "coroutine": true, + "signature": "async def get_applied_reservation_list(\n self,\n subscription_id: str,\n **kwargs: Any\n) -\u003e \"_models.AppliedReservations\":\n", + "doc": "\"\"\"Get list of applicable ``Reservation``\\ s.\n\nGet applicable ``Reservation``\\ s that are applied to this subscription or a resource group\nunder this subscription.\n\n:param subscription_id: Id of the subscription.\n:type subscription_id: str\n:keyword callable cls: A custom type or function that will be passed the direct response\n:return: AppliedReservations, or the result of cls(response)\n:rtype: ~azure.mgmt.reservations.models.AppliedReservations\n:raises: ~azure.core.exceptions.HttpResponseError\n\"\"\"" + }, + "call": "subscription_id" + } + } + } +} \ No newline at end of file diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_version.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_version.py index 515f51c112dd..c47f66669f1b 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_version.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/_version.py @@ -6,5 +6,4 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -VERSION = "1.0.0b1" - +VERSION = "1.0.0" diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/_azure_reservation_api.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/_azure_reservation_api.py index 3ef4905d3a8d..10c59f7e0b71 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/_azure_reservation_api.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/_azure_reservation_api.py @@ -8,6 +8,7 @@ from typing import Any, Optional, TYPE_CHECKING +from azure.core.pipeline.transport import AsyncHttpResponse, HttpRequest from azure.mgmt.core import AsyncARMPipelineClient from msrest import Deserializer, Serializer @@ -16,27 +17,20 @@ from azure.core.credentials_async import AsyncTokenCredential from ._configuration import AzureReservationAPIConfiguration -from .operations import QuotaOperations -from .operations import QuotaRequestStatusOperations -from .operations import AutoQuotaIncreaseOperations from .operations import ReservationOperations from .operations import AzureReservationAPIOperationsMixin from .operations import ReservationOrderOperations from .operations import OperationOperations from .operations import CalculateExchangeOperations from .operations import ExchangeOperations +from .operations import QuotaOperations +from .operations import QuotaRequestStatusOperations from .. import models class AzureReservationAPI(AzureReservationAPIOperationsMixin): - """Microsoft Azure Quota Resource Provider. + """This API describe Azure Reservation. - :ivar quota: QuotaOperations operations - :vartype quota: azure.mgmt.reservations.aio.operations.QuotaOperations - :ivar quota_request_status: QuotaRequestStatusOperations operations - :vartype quota_request_status: azure.mgmt.reservations.aio.operations.QuotaRequestStatusOperations - :ivar auto_quota_increase: AutoQuotaIncreaseOperations operations - :vartype auto_quota_increase: azure.mgmt.reservations.aio.operations.AutoQuotaIncreaseOperations :ivar reservation: ReservationOperations operations :vartype reservation: azure.mgmt.reservations.aio.operations.ReservationOperations :ivar reservation_order: ReservationOrderOperations operations @@ -47,6 +41,10 @@ class AzureReservationAPI(AzureReservationAPIOperationsMixin): :vartype calculate_exchange: azure.mgmt.reservations.aio.operations.CalculateExchangeOperations :ivar exchange: ExchangeOperations operations :vartype exchange: azure.mgmt.reservations.aio.operations.ExchangeOperations + :ivar quota: QuotaOperations operations + :vartype quota: azure.mgmt.reservations.aio.operations.QuotaOperations + :ivar quota_request_status: QuotaRequestStatusOperations operations + :vartype quota_request_status: azure.mgmt.reservations.aio.operations.QuotaRequestStatusOperations :param credential: Credential needed for the client to connect to Azure. :type credential: ~azure.core.credentials_async.AsyncTokenCredential :param str base_url: Service URL @@ -69,12 +67,6 @@ def __init__( self._serialize.client_side_validation = False self._deserialize = Deserializer(client_models) - self.quota = QuotaOperations( - self._client, self._config, self._serialize, self._deserialize) - self.quota_request_status = QuotaRequestStatusOperations( - self._client, self._config, self._serialize, self._deserialize) - self.auto_quota_increase = AutoQuotaIncreaseOperations( - self._client, self._config, self._serialize, self._deserialize) self.reservation = ReservationOperations( self._client, self._config, self._serialize, self._deserialize) self.reservation_order = ReservationOrderOperations( @@ -85,6 +77,24 @@ def __init__( self._client, self._config, self._serialize, self._deserialize) self.exchange = ExchangeOperations( self._client, self._config, self._serialize, self._deserialize) + self.quota = QuotaOperations( + self._client, self._config, self._serialize, self._deserialize) + self.quota_request_status = QuotaRequestStatusOperations( + self._client, self._config, self._serialize, self._deserialize) + + async def _send_request(self, http_request: HttpRequest, **kwargs: Any) -> AsyncHttpResponse: + """Runs the network request through the client's chained policies. + + :param http_request: The network request you want to make. Required. + :type http_request: ~azure.core.pipeline.transport.HttpRequest + :keyword bool stream: Whether the response payload will be streamed. Defaults to True. + :return: The response of your network call. Does not do error handling on your response. + :rtype: ~azure.core.pipeline.transport.AsyncHttpResponse + """ + http_request.url = self._client.format_url(http_request.url) + stream = kwargs.pop("stream", True) + pipeline_response = await self._client._pipeline.run(http_request, stream=stream, **kwargs) + return pipeline_response.http_response async def close(self) -> None: await self._client.close() diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/__init__.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/__init__.py index 0da0c31609e0..5cf631a610fd 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/__init__.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/__init__.py @@ -6,24 +6,22 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -from ._quota_operations import QuotaOperations -from ._quota_request_status_operations import QuotaRequestStatusOperations -from ._auto_quota_increase_operations import AutoQuotaIncreaseOperations from ._reservation_operations import ReservationOperations from ._azure_reservation_api_operations import AzureReservationAPIOperationsMixin from ._reservation_order_operations import ReservationOrderOperations from ._operation_operations import OperationOperations from ._calculate_exchange_operations import CalculateExchangeOperations from ._exchange_operations import ExchangeOperations +from ._quota_operations import QuotaOperations +from ._quota_request_status_operations import QuotaRequestStatusOperations __all__ = [ - 'QuotaOperations', - 'QuotaRequestStatusOperations', - 'AutoQuotaIncreaseOperations', 'ReservationOperations', 'AzureReservationAPIOperationsMixin', 'ReservationOrderOperations', 'OperationOperations', 'CalculateExchangeOperations', 'ExchangeOperations', + 'QuotaOperations', + 'QuotaRequestStatusOperations', ] diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_auto_quota_increase_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_auto_quota_increase_operations.py deleted file mode 100644 index 68f0789933c1..000000000000 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_auto_quota_increase_operations.py +++ /dev/null @@ -1,157 +0,0 @@ -# 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) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from typing import Any, Callable, Dict, Generic, Optional, TypeVar -import warnings - -from azure.core.exceptions import ClientAuthenticationError, HttpResponseError, ResourceExistsError, ResourceNotFoundError, map_error -from azure.core.pipeline import PipelineResponse -from azure.core.pipeline.transport import AsyncHttpResponse, HttpRequest -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models - -T = TypeVar('T') -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - -class AutoQuotaIncreaseOperations: - """AutoQuotaIncreaseOperations async operations. - - You should not instantiate this class directly. Instead, you should create a Client instance that - instantiates it for you and attaches it as an attribute. - - :ivar models: Alias to model classes used in this operation group. - :type models: ~azure.mgmt.reservations.models - :param client: Client for service requests. - :param config: Configuration of service client. - :param serializer: An object model serializer. - :param deserializer: An object model deserializer. - """ - - models = _models - - def __init__(self, client, config, serializer, deserializer) -> None: - self._client = client - self._serialize = serializer - self._deserialize = deserializer - self._config = config - - async def get_properties( - self, - subscription_id: str, - **kwargs - ) -> "_models.AutoQuotaIncreaseDetail": - """Gets the Auto Quota Increase enrollment details for the specified subscription. - - :param subscription_id: Azure subscription id. - :type subscription_id: str - :keyword callable cls: A custom type or function that will be passed the direct response - :return: AutoQuotaIncreaseDetail, or the result of cls(response) - :rtype: ~azure.mgmt.reservations.models.AutoQuotaIncreaseDetail - :raises: ~azure.core.exceptions.HttpResponseError - """ - cls = kwargs.pop('cls', None) # type: ClsType["_models.AutoQuotaIncreaseDetail"] - error_map = { - 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError - } - error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" - accept = "application/json" - - # Construct URL - url = self.get_properties.metadata['url'] # type: ignore - path_format_arguments = { - 'subscriptionId': self._serialize.url("subscription_id", subscription_id, 'str'), - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} # type: Dict[str, Any] - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') - - # Construct headers - header_parameters = {} # type: Dict[str, Any] - header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') - - request = self._client.get(url, query_parameters, header_parameters) - pipeline_response = await self._client._pipeline.run(request, stream=False, **kwargs) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize('AutoQuotaIncreaseDetail', pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, {}) - - return deserialized - get_properties.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Capacity/autoQuotaIncrease'} # type: ignore - - async def create( - self, - subscription_id: str, - auto_quota_increase_request: "_models.AutoQuotaIncreaseDetail", - **kwargs - ) -> "_models.AutoQuotaIncreaseDetail": - """Sets the Auto Quota Increase enrollment properties for the specified subscription. - - :param subscription_id: Azure subscription id. - :type subscription_id: str - :param auto_quota_increase_request: Auto Quota increase request payload. - :type auto_quota_increase_request: ~azure.mgmt.reservations.models.AutoQuotaIncreaseDetail - :keyword callable cls: A custom type or function that will be passed the direct response - :return: AutoQuotaIncreaseDetail, or the result of cls(response) - :rtype: ~azure.mgmt.reservations.models.AutoQuotaIncreaseDetail - :raises: ~azure.core.exceptions.HttpResponseError - """ - cls = kwargs.pop('cls', None) # type: ClsType["_models.AutoQuotaIncreaseDetail"] - error_map = { - 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError - } - error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" - content_type = kwargs.pop("content_type", "application/json") - accept = "application/json" - - # Construct URL - url = self.create.metadata['url'] # type: ignore - path_format_arguments = { - 'subscriptionId': self._serialize.url("subscription_id", subscription_id, 'str'), - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} # type: Dict[str, Any] - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') - - # Construct headers - header_parameters = {} # type: Dict[str, Any] - header_parameters['Content-Type'] = self._serialize.header("content_type", content_type, 'str') - header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') - - body_content_kwargs = {} # type: Dict[str, Any] - body_content = self._serialize.body(auto_quota_increase_request, 'AutoQuotaIncreaseDetail') - body_content_kwargs['content'] = body_content - request = self._client.put(url, query_parameters, header_parameters, **body_content_kwargs) - pipeline_response = await self._client._pipeline.run(request, stream=False, **kwargs) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize('AutoQuotaIncreaseDetail', pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, {}) - - return deserialized - create.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Capacity/autoQuotaIncrease'} # type: ignore diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py index 4f98f6b6ebe2..bac01753a7cf 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py @@ -25,7 +25,7 @@ async def get_catalog( subscription_id: str, reserved_resource_type: str, location: Optional[str] = None, - **kwargs + **kwargs: Any ) -> List["_models.Catalog"]: """Get the regions and skus that are available for RI purchase for the specified Azure subscription. @@ -76,7 +76,7 @@ async def get_catalog( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('[Catalog]', pipeline_response) @@ -90,7 +90,7 @@ async def get_catalog( async def get_applied_reservation_list( self, subscription_id: str, - **kwargs + **kwargs: Any ) -> "_models.AppliedReservations": """Get list of applicable ``Reservation``\ s. @@ -133,7 +133,7 @@ async def get_applied_reservation_list( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('AppliedReservations', pipeline_response) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_calculate_exchange_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_calculate_exchange_operations.py index a2709b248ae6..9ac3210ee08d 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_calculate_exchange_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_calculate_exchange_operations.py @@ -45,7 +45,7 @@ def __init__(self, client, config, serializer, deserializer) -> None: async def _post_initial( self, body: "_models.CalculateExchangeRequest", - **kwargs + **kwargs: Any ) -> Optional["_models.CalculateExchangeOperationResultResponse"]: cls = kwargs.pop('cls', None) # type: ClsType[Optional["_models.CalculateExchangeOperationResultResponse"]] error_map = { @@ -77,7 +77,7 @@ async def _post_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -86,6 +86,7 @@ async def _post_initial( deserialized = self._deserialize('CalculateExchangeOperationResultResponse', pipeline_response) if response.status_code == 202: + response_headers['Azure-AsyncOperation']=self._deserialize('str', response.headers.get('Azure-AsyncOperation')) response_headers['Location']=self._deserialize('str', response.headers.get('Location')) response_headers['Retry-After']=self._deserialize('int', response.headers.get('Retry-After')) @@ -98,7 +99,7 @@ async def _post_initial( async def begin_post( self, body: "_models.CalculateExchangeRequest", - **kwargs + **kwargs: Any ) -> AsyncLROPoller["_models.CalculateExchangeOperationResultResponse"]: """Calculates the refund amounts and price of the new purchases. @@ -108,8 +109,8 @@ async def begin_post( :type body: ~azure.mgmt.reservations.models.CalculateExchangeRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either CalculateExchangeOperationResultResponse or the result of cls(response) @@ -140,7 +141,7 @@ def get_long_running_output(pipeline_response): return cls(pipeline_response, deserialized, {}) return deserialized - if polling is True: polling_method = AsyncARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **kwargs) + if polling is True: polling_method = AsyncARMPolling(lro_delay, lro_options={'final-state-via': 'azure-async-operation'}, **kwargs) elif polling is False: polling_method = AsyncNoPolling() else: polling_method = polling if cont_token: diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_exchange_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_exchange_operations.py index 00a323e5f5ee..801da6c87211 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_exchange_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_exchange_operations.py @@ -45,7 +45,7 @@ def __init__(self, client, config, serializer, deserializer) -> None: async def _post_initial( self, body: "_models.ExchangeRequest", - **kwargs + **kwargs: Any ) -> Optional["_models.ExchangeOperationResultResponse"]: cls = kwargs.pop('cls', None) # type: ClsType[Optional["_models.ExchangeOperationResultResponse"]] error_map = { @@ -77,7 +77,7 @@ async def _post_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -86,6 +86,7 @@ async def _post_initial( deserialized = self._deserialize('ExchangeOperationResultResponse', pipeline_response) if response.status_code == 202: + response_headers['Azure-AsyncOperation']=self._deserialize('str', response.headers.get('Azure-AsyncOperation')) response_headers['Location']=self._deserialize('str', response.headers.get('Location')) response_headers['Retry-After']=self._deserialize('int', response.headers.get('Retry-After')) @@ -98,7 +99,7 @@ async def _post_initial( async def begin_post( self, body: "_models.ExchangeRequest", - **kwargs + **kwargs: Any ) -> AsyncLROPoller["_models.ExchangeOperationResultResponse"]: """Exchange Reservation(s). @@ -108,8 +109,8 @@ async def begin_post( :type body: ~azure.mgmt.reservations.models.ExchangeRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either ExchangeOperationResultResponse or the result of cls(response) @@ -140,7 +141,7 @@ def get_long_running_output(pipeline_response): return cls(pipeline_response, deserialized, {}) return deserialized - if polling is True: polling_method = AsyncARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **kwargs) + if polling is True: polling_method = AsyncARMPolling(lro_delay, lro_options={'final-state-via': 'azure-async-operation'}, **kwargs) elif polling is False: polling_method = AsyncNoPolling() else: polling_method = polling if cont_token: diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_operation_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_operation_operations.py index 64db0452db16..13da2f88e1af 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_operation_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_operation_operations.py @@ -43,7 +43,7 @@ def __init__(self, client, config, serializer, deserializer) -> None: def list( self, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.OperationList"]: """Get operations. @@ -95,7 +95,7 @@ async def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_quota_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_quota_operations.py index 2e58a734653a..259c3700ea06 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_quota_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_quota_operations.py @@ -49,14 +49,14 @@ async def get( provider_id: str, location: str, resource_name: str, - **kwargs + **kwargs: Any ) -> "_models.CurrentQuotaLimitBase": - """Gets the current service limits (quotas) and usage of a resource. The response from Get API can - be leveraged to submit quota update requests. + """Get the current quota (service limit) and usage of a resource. You can use the response from + the GET operation to submit quota update request. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str @@ -73,7 +73,7 @@ async def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" accept = "application/json" # Construct URL @@ -100,7 +100,7 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -120,14 +120,14 @@ async def _create_or_update_initial( location: str, resource_name: str, create_quota_request: "_models.CurrentQuotaLimitBase", - **kwargs + **kwargs: Any ) -> Union["_models.QuotaRequestOneResourceSubmitResponse", "_models.QuotaRequestSubmitResponse201"]: cls = kwargs.pop('cls', None) # type: ClsType[Union["_models.QuotaRequestOneResourceSubmitResponse", "_models.QuotaRequestSubmitResponse201"]] error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -159,7 +159,7 @@ async def _create_or_update_initial( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if response.status_code == 200: @@ -181,9 +181,9 @@ async def begin_create_or_update( location: str, resource_name: str, create_quota_request: "_models.CurrentQuotaLimitBase", - **kwargs + **kwargs: Any ) -> AsyncLROPoller[Union["_models.QuotaRequestOneResourceSubmitResponse", "_models.QuotaRequestSubmitResponse201"]]: - """Create or update the service limits (quota) of a resource to requested value. + """Create or update the quota (service limits) of a resource to the requested value. Steps: @@ -198,9 +198,9 @@ async def begin_create_or_update( The Create quota request may be constructed as follows. The PUT operation can be used to update the quota. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str @@ -211,8 +211,8 @@ async def begin_create_or_update( :type create_quota_request: ~azure.mgmt.reservations.models.CurrentQuotaLimitBase :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either QuotaRequestOneResourceSubmitResponse or the result of cls(response) @@ -275,14 +275,14 @@ async def _update_initial( location: str, resource_name: str, create_quota_request: "_models.CurrentQuotaLimitBase", - **kwargs + **kwargs: Any ) -> Union["_models.QuotaRequestOneResourceSubmitResponse", "_models.QuotaRequestSubmitResponse201"]: cls = kwargs.pop('cls', None) # type: ClsType[Union["_models.QuotaRequestOneResourceSubmitResponse", "_models.QuotaRequestSubmitResponse201"]] error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -314,7 +314,7 @@ async def _update_initial( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if response.status_code == 200: @@ -336,38 +336,33 @@ async def begin_update( location: str, resource_name: str, create_quota_request: "_models.CurrentQuotaLimitBase", - **kwargs + **kwargs: Any ) -> AsyncLROPoller[Union["_models.QuotaRequestOneResourceSubmitResponse", "_models.QuotaRequestSubmitResponse201"]]: - """Update the service limits (quota) of a resource to requested value. - Steps: + """Update the quota (service limits) of this resource to the requested value. + • To get the quota information for specific resource, send a GET request. - #. - Make the Get request to get the quota information for specific resource. - - #. - To increase the quota, update the limit field in the response from Get request to new value. + • To increase the quota, update the limit field from the GET response to a new value. - #. - Submit the JSON to the quota request API to update the quota. - The Update quota request may be constructed as follows. The PATCH operation can be used to - update the quota. + • To update the quota value, submit the JSON response to the quota request API to update the + quota. + • To update the quota. use the PATCH operation. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str :param resource_name: The resource name for a resource provider, such as SKU name for Microsoft.Compute, Sku or TotalLowPriorityCores for Microsoft.MachineLearningServices. :type resource_name: str - :param create_quota_request: Quota requests payload. + :param create_quota_request: Payload for the quota request. :type create_quota_request: ~azure.mgmt.reservations.models.CurrentQuotaLimitBase :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either QuotaRequestOneResourceSubmitResponse or the result of cls(response) @@ -428,14 +423,14 @@ def list( subscription_id: str, provider_id: str, location: str, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.QuotaLimits"]: - """Get a list of current service limits (quota) and usages of all the resources. The response from - List API can be leveraged to submit quota update requests. + """Gets a list of current quotas (service limits) and usage for all resources. The response from + the list quota operation can be leveraged to request quota updates. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str @@ -449,7 +444,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" accept = "application/json" def prepare_request(next_link=None): @@ -491,7 +486,7 @@ async def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_quota_request_status_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_quota_request_status_operations.py index 03d9e5420e9c..0e3fcad3f708 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_quota_request_status_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_quota_request_status_operations.py @@ -47,19 +47,19 @@ async def get( provider_id: str, location: str, id: str, - **kwargs + **kwargs: Any ) -> "_models.QuotaRequestDetails": - """Gets the QuotaRequest details and status by the quota request Id for the resources for the - resource provider at a specific location. The requestId is returned as response to the Put - requests for serviceLimits. + """For the specified Azure region (location), get the details and status of the quota request by + the quota request ID for the resources of the resource provider. The PUT request for the quota + (service limit) returns a response with the requestId parameter. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str - :param id: Quota Request id. + :param id: Quota Request ID. :type id: str :keyword callable cls: A custom type or function that will be passed the direct response :return: QuotaRequestDetails, or the result of cls(response) @@ -71,7 +71,7 @@ async def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" accept = "application/json" # Construct URL @@ -98,7 +98,7 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('QuotaRequestDetails', pipeline_response) @@ -117,15 +117,15 @@ def list( filter: Optional[str] = None, top: Optional[int] = None, skiptoken: Optional[str] = None, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.QuotaRequestDetailsList"]: - """For the specified location and Resource provider gets the current quota requests under the - subscription over the time period of one year ago from now to one year back. oData filter can - be used to select quota requests. + """For the specified Azure region (location), subscription, and resource provider, get the history + of the quota requests for the past year. To select specific quota requests, use the oData + filter. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str @@ -142,8 +142,8 @@ def list( :param top: Number of records to return. :type top: int :param skiptoken: Skiptoken is only used if a previous operation returned a partial result. If - a previous response contains a nextLink element, the value of the nextLink element will include - a skiptoken parameter that specifies a starting point to use for subsequent calls. + a previous response contains a nextLink element, the value of the nextLink element includes a + skiptoken parameter that specifies a starting point to use for subsequent calls. :type skiptoken: str :keyword callable cls: A custom type or function that will be passed the direct response :return: An iterator like instance of either QuotaRequestDetailsList or the result of cls(response) @@ -155,7 +155,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" accept = "application/json" def prepare_request(next_link=None): @@ -203,7 +203,7 @@ async def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_reservation_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_reservation_operations.py index 695cdc44183e..e0157382b70f 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_reservation_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_reservation_operations.py @@ -48,7 +48,7 @@ async def _available_scopes_initial( reservation_order_id: str, reservation_id: str, body: "_models.AvailableScopeRequest", - **kwargs + **kwargs: Any ) -> "_models.AvailableScopeProperties": cls = kwargs.pop('cls', None) # type: ClsType["_models.AvailableScopeProperties"] error_map = { @@ -85,7 +85,7 @@ async def _available_scopes_initial( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('AvailableScopeProperties', pipeline_response) @@ -101,7 +101,7 @@ async def begin_available_scopes( reservation_order_id: str, reservation_id: str, body: "_models.AvailableScopeRequest", - **kwargs + **kwargs: Any ) -> AsyncLROPoller["_models.AvailableScopeProperties"]: """Get Available Scopes for ``Reservation``. @@ -115,8 +115,8 @@ async def begin_available_scopes( :type body: ~azure.mgmt.reservations.models.AvailableScopeRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either AvailableScopeProperties or the result of cls(response) @@ -172,7 +172,7 @@ async def _split_initial( self, reservation_order_id: str, body: "_models.SplitRequest", - **kwargs + **kwargs: Any ) -> Optional[List["_models.ReservationResponse"]]: cls = kwargs.pop('cls', None) # type: ClsType[Optional[List["_models.ReservationResponse"]]] error_map = { @@ -208,7 +208,7 @@ async def _split_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = None @@ -225,7 +225,7 @@ async def begin_split( self, reservation_order_id: str, body: "_models.SplitRequest", - **kwargs + **kwargs: Any ) -> AsyncLROPoller[List["_models.ReservationResponse"]]: """Split the ``Reservation``. @@ -237,8 +237,8 @@ async def begin_split( :type body: ~azure.mgmt.reservations.models.SplitRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either list of ReservationResponse or the result of cls(response) @@ -292,7 +292,7 @@ async def _merge_initial( self, reservation_order_id: str, body: "_models.MergeRequest", - **kwargs + **kwargs: Any ) -> Optional[List["_models.ReservationResponse"]]: cls = kwargs.pop('cls', None) # type: ClsType[Optional[List["_models.ReservationResponse"]]] error_map = { @@ -328,7 +328,7 @@ async def _merge_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = None @@ -345,7 +345,7 @@ async def begin_merge( self, reservation_order_id: str, body: "_models.MergeRequest", - **kwargs + **kwargs: Any ) -> AsyncLROPoller[List["_models.ReservationResponse"]]: """Merges two ``Reservation``\ s. @@ -358,8 +358,8 @@ async def begin_merge( :type body: ~azure.mgmt.reservations.models.MergeRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either list of ReservationResponse or the result of cls(response) @@ -412,7 +412,7 @@ def get_long_running_output(pipeline_response): def list( self, reservation_order_id: str, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.ReservationList"]: """Get ``Reservation``\ s in a given reservation Order. @@ -470,7 +470,7 @@ async def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) @@ -486,7 +486,7 @@ async def get( reservation_id: str, reservation_order_id: str, expand: Optional[str] = None, - **kwargs + **kwargs: Any ) -> "_models.ReservationResponse": """Get ``Reservation`` details. @@ -535,7 +535,7 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('ReservationResponse', pipeline_response) @@ -551,7 +551,7 @@ async def _update_initial( reservation_order_id: str, reservation_id: str, parameters: "_models.Patch", - **kwargs + **kwargs: Any ) -> Optional["_models.ReservationResponse"]: cls = kwargs.pop('cls', None) # type: ClsType[Optional["_models.ReservationResponse"]] error_map = { @@ -588,7 +588,7 @@ async def _update_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = None @@ -606,7 +606,7 @@ async def begin_update( reservation_order_id: str, reservation_id: str, parameters: "_models.Patch", - **kwargs + **kwargs: Any ) -> AsyncLROPoller["_models.ReservationResponse"]: """Updates a ``Reservation``. @@ -620,8 +620,8 @@ async def begin_update( :type parameters: ~azure.mgmt.reservations.models.Patch :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either ReservationResponse or the result of cls(response) @@ -677,7 +677,7 @@ def list_revisions( self, reservation_id: str, reservation_order_id: str, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.ReservationList"]: """Get ``Reservation`` revisions. @@ -738,7 +738,7 @@ async def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py index df268db82ee2..5aaf02a8544d 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py @@ -46,7 +46,7 @@ def __init__(self, client, config, serializer, deserializer) -> None: async def calculate( self, body: "_models.PurchaseRequest", - **kwargs + **kwargs: Any ) -> "_models.CalculatePriceResponse": """Calculate price for a ``ReservationOrder``. @@ -89,7 +89,7 @@ async def calculate( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('CalculatePriceResponse', pipeline_response) @@ -102,7 +102,7 @@ async def calculate( def list( self, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.ReservationOrderList"]: """Get all ``ReservationOrder``\ s. @@ -154,7 +154,7 @@ async def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) @@ -169,7 +169,7 @@ async def _purchase_initial( self, reservation_order_id: str, body: "_models.PurchaseRequest", - **kwargs + **kwargs: Any ) -> "_models.ReservationOrderResponse": cls = kwargs.pop('cls', None) # type: ClsType["_models.ReservationOrderResponse"] error_map = { @@ -205,7 +205,7 @@ async def _purchase_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if response.status_code == 200: @@ -224,7 +224,7 @@ async def begin_purchase( self, reservation_order_id: str, body: "_models.PurchaseRequest", - **kwargs + **kwargs: Any ) -> AsyncLROPoller["_models.ReservationOrderResponse"]: """Purchase ``ReservationOrder``. @@ -236,8 +236,8 @@ async def begin_purchase( :type body: ~azure.mgmt.reservations.models.PurchaseRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either ReservationOrderResponse or the result of cls(response) @@ -291,7 +291,7 @@ async def get( self, reservation_order_id: str, expand: Optional[str] = None, - **kwargs + **kwargs: Any ) -> "_models.ReservationOrderResponse": """Get a specific ``ReservationOrder``. @@ -337,7 +337,7 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('ReservationOrderResponse', pipeline_response) @@ -347,68 +347,3 @@ async def get( return deserialized get.metadata = {'url': '/providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}'} # type: ignore - - async def change_directory( - self, - reservation_order_id: str, - body: "_models.ChangeDirectoryRequest", - **kwargs - ) -> "_models.ChangeDirectoryResponse": - """Change directory of ``ReservationOrder``. - - Change directory (tenant) of ``ReservationOrder`` and all ``Reservation`` under it to specified - tenant id. - - :param reservation_order_id: Order Id of the reservation. - :type reservation_order_id: str - :param body: Information needed to change directory of reservation order. - :type body: ~azure.mgmt.reservations.models.ChangeDirectoryRequest - :keyword callable cls: A custom type or function that will be passed the direct response - :return: ChangeDirectoryResponse, or the result of cls(response) - :rtype: ~azure.mgmt.reservations.models.ChangeDirectoryResponse - :raises: ~azure.core.exceptions.HttpResponseError - """ - cls = kwargs.pop('cls', None) # type: ClsType["_models.ChangeDirectoryResponse"] - error_map = { - 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError - } - error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-11-15-preview" - content_type = kwargs.pop("content_type", "application/json") - accept = "application/json" - - # Construct URL - url = self.change_directory.metadata['url'] # type: ignore - path_format_arguments = { - 'reservationOrderId': self._serialize.url("reservation_order_id", reservation_order_id, 'str'), - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} # type: Dict[str, Any] - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') - - # Construct headers - header_parameters = {} # type: Dict[str, Any] - header_parameters['Content-Type'] = self._serialize.header("content_type", content_type, 'str') - header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') - - body_content_kwargs = {} # type: Dict[str, Any] - body_content = self._serialize.body(body, 'ChangeDirectoryRequest') - body_content_kwargs['content'] = body_content - request = self._client.post(url, query_parameters, header_parameters, **body_content_kwargs) - pipeline_response = await self._client._pipeline.run(request, stream=False, **kwargs) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize('ChangeDirectoryResponse', pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, {}) - - return deserialized - change_directory.metadata = {'url': '/providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/changeDirectory'} # type: ignore diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/__init__.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/__init__.py index 5336a03415fc..80330d1c8047 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/__init__.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/__init__.py @@ -7,11 +7,8 @@ # -------------------------------------------------------------------------- try: - from ._models_py3 import Actions from ._models_py3 import AppliedReservationList from ._models_py3 import AppliedReservations - from ._models_py3 import AqiSettings - from ._models_py3 import AutoQuotaIncreaseDetail from ._models_py3 import AvailableScopeProperties from ._models_py3 import AvailableScopeRequest from ._models_py3 import AvailableScopeRequestProperties @@ -25,14 +22,9 @@ from ._models_py3 import CalculatePriceResponsePropertiesBillingCurrencyTotal from ._models_py3 import CalculatePriceResponsePropertiesPricingCurrencyTotal from ._models_py3 import Catalog - from ._models_py3 import ChangeDirectoryRequest - from ._models_py3 import ChangeDirectoryResponse - from ._models_py3 import ChangeDirectoryResult from ._models_py3 import CreateGenericQuotaRequestParameters from ._models_py3 import CurrentQuotaLimit from ._models_py3 import CurrentQuotaLimitBase - from ._models_py3 import EmailAction - from ._models_py3 import EmailActions from ._models_py3 import Error from ._models_py3 import ExceptionResponse from ._models_py3 import ExchangeOperationResultResponse @@ -51,7 +43,6 @@ from ._models_py3 import Patch from ._models_py3 import PatchPropertiesRenewProperties from ._models_py3 import PaymentDetail - from ._models_py3 import PhoneAction from ._models_py3 import Price from ._models_py3 import PurchaseRequest from ._models_py3 import PurchaseRequestPropertiesReservedResourceProperties @@ -90,13 +81,9 @@ from ._models_py3 import SplitRequest from ._models_py3 import SubRequest from ._models_py3 import SubscriptionScopeProperties - from ._models_py3 import SupportRequestAction except (SyntaxError, ImportError): - from ._models import Actions # type: ignore from ._models import AppliedReservationList # type: ignore from ._models import AppliedReservations # type: ignore - from ._models import AqiSettings # type: ignore - from ._models import AutoQuotaIncreaseDetail # type: ignore from ._models import AvailableScopeProperties # type: ignore from ._models import AvailableScopeRequest # type: ignore from ._models import AvailableScopeRequestProperties # type: ignore @@ -110,14 +97,9 @@ from ._models import CalculatePriceResponsePropertiesBillingCurrencyTotal # type: ignore from ._models import CalculatePriceResponsePropertiesPricingCurrencyTotal # type: ignore from ._models import Catalog # type: ignore - from ._models import ChangeDirectoryRequest # type: ignore - from ._models import ChangeDirectoryResponse # type: ignore - from ._models import ChangeDirectoryResult # type: ignore from ._models import CreateGenericQuotaRequestParameters # type: ignore from ._models import CurrentQuotaLimit # type: ignore from ._models import CurrentQuotaLimitBase # type: ignore - from ._models import EmailAction # type: ignore - from ._models import EmailActions # type: ignore from ._models import Error # type: ignore from ._models import ExceptionResponse # type: ignore from ._models import ExchangeOperationResultResponse # type: ignore @@ -136,7 +118,6 @@ from ._models import Patch # type: ignore from ._models import PatchPropertiesRenewProperties # type: ignore from ._models import PaymentDetail # type: ignore - from ._models import PhoneAction # type: ignore from ._models import Price # type: ignore from ._models import PurchaseRequest # type: ignore from ._models import PurchaseRequestPropertiesReservedResourceProperties # type: ignore @@ -175,13 +156,10 @@ from ._models import SplitRequest # type: ignore from ._models import SubRequest # type: ignore from ._models import SubscriptionScopeProperties # type: ignore - from ._models import SupportRequestAction # type: ignore from ._azure_reservation_api_enums import ( AppliedScopeType, - AqiStateType, CalculateExchangeOperationResultStatus, - ContactMethodType, ErrorResponseCode, ExchangeOperationResultStatus, InstanceFlexibility, @@ -193,16 +171,11 @@ ReservationTerm, ReservedResourceType, ResourceType, - SeverityType, - SupportContactType, ) __all__ = [ - 'Actions', 'AppliedReservationList', 'AppliedReservations', - 'AqiSettings', - 'AutoQuotaIncreaseDetail', 'AvailableScopeProperties', 'AvailableScopeRequest', 'AvailableScopeRequestProperties', @@ -216,14 +189,9 @@ 'CalculatePriceResponsePropertiesBillingCurrencyTotal', 'CalculatePriceResponsePropertiesPricingCurrencyTotal', 'Catalog', - 'ChangeDirectoryRequest', - 'ChangeDirectoryResponse', - 'ChangeDirectoryResult', 'CreateGenericQuotaRequestParameters', 'CurrentQuotaLimit', 'CurrentQuotaLimitBase', - 'EmailAction', - 'EmailActions', 'Error', 'ExceptionResponse', 'ExchangeOperationResultResponse', @@ -242,7 +210,6 @@ 'Patch', 'PatchPropertiesRenewProperties', 'PaymentDetail', - 'PhoneAction', 'Price', 'PurchaseRequest', 'PurchaseRequestPropertiesReservedResourceProperties', @@ -281,11 +248,8 @@ 'SplitRequest', 'SubRequest', 'SubscriptionScopeProperties', - 'SupportRequestAction', 'AppliedScopeType', - 'AqiStateType', 'CalculateExchangeOperationResultStatus', - 'ContactMethodType', 'ErrorResponseCode', 'ExchangeOperationResultStatus', 'InstanceFlexibility', @@ -297,6 +261,4 @@ 'ReservationTerm', 'ReservedResourceType', 'ResourceType', - 'SeverityType', - 'SupportContactType', ] diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_azure_reservation_api_enums.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_azure_reservation_api_enums.py index 7fb2a5197f94..249f82334c6f 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_azure_reservation_api_enums.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_azure_reservation_api_enums.py @@ -33,14 +33,6 @@ class AppliedScopeType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): SINGLE = "Single" SHARED = "Shared" -class AqiStateType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): - """The Auto quota increase feature state - enabled: feature is enabled, disabled: feature is - disabled. - """ - - ENABLED = "enabled" - DISABLED = "disabled" - class CalculateExchangeOperationResultStatus(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): """Status of the operation. """ @@ -50,14 +42,6 @@ class CalculateExchangeOperationResultStatus(with_metaclass(_CaseInsensitiveEnum CANCELLED = "Cancelled" PENDING = "Pending" -class ContactMethodType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): - """The contact method - Email: Contact using provided email, Phone: contact using provided phone - number. - """ - - EMAIL = "Email" - PHONE = "Phone" - class ErrorResponseCode(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): NOT_SPECIFIED = "NotSpecified" @@ -222,19 +206,3 @@ class ResourceType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): LOW_PRIORITY = "lowPriority" SHARED = "shared" SERVICE_SPECIFIC = "serviceSpecific" - -class SeverityType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): - """The Severity types. - """ - - CRITICAL = "Critical" - MODERATE = "Moderate" - MINIMAL = "Minimal" - -class SupportContactType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): - """The support contact types. - """ - - EMAIL = "email" - PHONE = "phone" - CHAT = "chat" diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_models.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_models.py index f0a8a25aab7d..8d715ddb1448 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_models.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_models.py @@ -10,25 +10,6 @@ import msrest.serialization -class Actions(msrest.serialization.Model): - """The actions for auto quota increase. - - :param email_actions: The email actions for auto quota increase. - :type email_actions: ~azure.mgmt.reservations.models.EmailActions - """ - - _attribute_map = { - 'email_actions': {'key': 'emailActions', 'type': 'EmailActions'}, - } - - def __init__( - self, - **kwargs - ): - super(Actions, self).__init__(**kwargs) - self.email_actions = kwargs.get('email_actions', None) - - class AppliedReservationList(msrest.serialization.Model): """AppliedReservationList. @@ -91,77 +72,6 @@ def __init__( self.reservation_order_ids = kwargs.get('reservation_order_ids', None) -class AqiSettings(msrest.serialization.Model): - """Settings for auto quota increase. - - :param auto_quota_increase_state: If the subscription has enabled automatic quota increase. - Possible values include: "enabled", "disabled". - :type auto_quota_increase_state: str or ~azure.mgmt.reservations.models.AqiStateType - """ - - _attribute_map = { - 'auto_quota_increase_state': {'key': 'autoQuotaIncreaseState', 'type': 'str'}, - } - - def __init__( - self, - **kwargs - ): - super(AqiSettings, self).__init__(**kwargs) - self.auto_quota_increase_state = kwargs.get('auto_quota_increase_state', None) - - -class AutoQuotaIncreaseDetail(msrest.serialization.Model): - """Auto Quota Increase settings. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: The subscription Id. - :vartype id: str - :ivar name: The name of the auto quota increase. - :vartype name: str - :ivar type: The type of the resource. - :vartype type: str - :param settings: Settings for automatic quota increase. - :type settings: ~azure.mgmt.reservations.models.AqiSettings - :param on_failure: The on failure Actions. - :type on_failure: ~azure.mgmt.reservations.models.Actions - :param on_success: The on success Actions. - :type on_success: ~azure.mgmt.reservations.models.Actions - :param support_ticket_action: The support ticket action. - :type support_ticket_action: ~azure.mgmt.reservations.models.SupportRequestAction - """ - - _validation = { - 'id': {'readonly': True}, - 'name': {'readonly': True}, - 'type': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'name': {'key': 'name', 'type': 'str'}, - 'type': {'key': 'type', 'type': 'str'}, - 'settings': {'key': 'properties.settings', 'type': 'AqiSettings'}, - 'on_failure': {'key': 'properties.onFailure', 'type': 'Actions'}, - 'on_success': {'key': 'properties.onSuccess', 'type': 'Actions'}, - 'support_ticket_action': {'key': 'properties.supportTicketAction', 'type': 'SupportRequestAction'}, - } - - def __init__( - self, - **kwargs - ): - super(AutoQuotaIncreaseDetail, self).__init__(**kwargs) - self.id = None - self.name = None - self.type = None - self.settings = kwargs.get('settings', None) - self.on_failure = kwargs.get('on_failure', None) - self.on_success = kwargs.get('on_success', None) - self.support_ticket_action = kwargs.get('support_ticket_action', None) - - class AvailableScopeProperties(msrest.serialization.Model): """AvailableScopeProperties. @@ -539,80 +449,6 @@ def __init__( self.restrictions = None -class ChangeDirectoryRequest(msrest.serialization.Model): - """ChangeDirectoryRequest. - - :param destination_tenant_id: Tenant id GUID that reservation order is to be transferred to. - :type destination_tenant_id: str - """ - - _attribute_map = { - 'destination_tenant_id': {'key': 'destinationTenantId', 'type': 'str'}, - } - - def __init__( - self, - **kwargs - ): - super(ChangeDirectoryRequest, self).__init__(**kwargs) - self.destination_tenant_id = kwargs.get('destination_tenant_id', None) - - -class ChangeDirectoryResponse(msrest.serialization.Model): - """Change directory response. - - :param reservation_order: Change directory result for reservation order or reservation. - :type reservation_order: ~azure.mgmt.reservations.models.ChangeDirectoryResult - :param reservations: - :type reservations: list[~azure.mgmt.reservations.models.ChangeDirectoryResult] - """ - - _attribute_map = { - 'reservation_order': {'key': 'reservationOrder', 'type': 'ChangeDirectoryResult'}, - 'reservations': {'key': 'reservations', 'type': '[ChangeDirectoryResult]'}, - } - - def __init__( - self, - **kwargs - ): - super(ChangeDirectoryResponse, self).__init__(**kwargs) - self.reservation_order = kwargs.get('reservation_order', None) - self.reservations = kwargs.get('reservations', None) - - -class ChangeDirectoryResult(msrest.serialization.Model): - """Change directory result for reservation order or reservation. - - :param id: Identifier of the reservation order or reservation. - :type id: str - :param name: Name of the reservation order or reservation. - :type name: str - :param is_succeeded: True if change directory operation succeeded on this reservation order or - reservation. - :type is_succeeded: bool - :param error: Error reason if operation failed. Null otherwise. - :type error: str - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'name': {'key': 'name', 'type': 'str'}, - 'is_succeeded': {'key': 'isSucceeded', 'type': 'bool'}, - 'error': {'key': 'error', 'type': 'str'}, - } - - def __init__( - self, - **kwargs - ): - super(ChangeDirectoryResult, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.name = kwargs.get('name', None) - self.is_succeeded = kwargs.get('is_succeeded', None) - self.error = kwargs.get('error', None) - - class CreateGenericQuotaRequestParameters(msrest.serialization.Model): """Quota change requests information. @@ -633,12 +469,12 @@ def __init__( class CurrentQuotaLimit(msrest.serialization.Model): - """Quota limits. + """Current quota limits. Variables are only populated by the server, and will be ignored when sending a request. - :ivar provisioning_state: The quota request status. Possible values include: "Accepted", - "Invalid", "Succeeded", "Failed", "InProgress". + :ivar provisioning_state: The details of the quota request status. Possible values include: + "Accepted", "Invalid", "Succeeded", "Failed", "InProgress". :vartype provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState :ivar message: A user friendly message. :vartype message: str @@ -668,7 +504,7 @@ def __init__( class CurrentQuotaLimitBase(msrest.serialization.Model): - """Quota limits. + """Quota properties. :param properties: Quota properties for the resource. :type properties: ~azure.mgmt.reservations.models.QuotaProperties @@ -686,44 +522,6 @@ def __init__( self.properties = kwargs.get('properties', None) -class EmailAction(msrest.serialization.Model): - """Email Action. - - :param email_address: The email address for the action. - :type email_address: str - """ - - _attribute_map = { - 'email_address': {'key': 'emailAddress', 'type': 'str'}, - } - - def __init__( - self, - **kwargs - ): - super(EmailAction, self).__init__(**kwargs) - self.email_address = kwargs.get('email_address', None) - - -class EmailActions(msrest.serialization.Model): - """The email actions. - - :param email_addresses: The list of email actions. - :type email_addresses: list[~azure.mgmt.reservations.models.EmailAction] - """ - - _attribute_map = { - 'email_addresses': {'key': 'emailAddresses', 'type': '[EmailAction]'}, - } - - def __init__( - self, - **kwargs - ): - super(EmailActions, self).__init__(**kwargs) - self.email_addresses = kwargs.get('email_addresses', None) - - class Error(msrest.serialization.Model): """Error. @@ -744,9 +542,9 @@ def __init__( class ExceptionResponse(msrest.serialization.Model): - """The api error. + """The API error. - :param error: The api error details. + :param error: The API error details. :type error: ~azure.mgmt.reservations.models.ServiceError """ @@ -1224,30 +1022,6 @@ def __init__( self.extended_status_info = kwargs.get('extended_status_info', None) -class PhoneAction(msrest.serialization.Model): - """Phone Action. - - :param phone_number: The phone number for the action. - :type phone_number: str - :param preferred_channel: The preferred communication channel. Possible values include: - "Email", "Phone". - :type preferred_channel: str or ~azure.mgmt.reservations.models.ContactMethodType - """ - - _attribute_map = { - 'phone_number': {'key': 'phoneNumber', 'type': 'str'}, - 'preferred_channel': {'key': 'preferredChannel', 'type': 'str'}, - } - - def __init__( - self, - **kwargs - ): - super(PhoneAction, self).__init__(**kwargs) - self.phone_number = kwargs.get('phone_number', None) - self.preferred_channel = kwargs.get('preferred_channel', None) - - class Price(msrest.serialization.Model): """Price. @@ -1370,10 +1144,10 @@ def __init__( class QuotaLimits(msrest.serialization.Model): """Quota limits. - :param value: List of Quota limits. + :param value: List of quotas (service limits). :type value: list[~azure.mgmt.reservations.models.CurrentQuotaLimitBase] - :param next_link: The uri to fetch the next page of quota limits. When there are no more pages, - this is null. + :param next_link: The URI for fetching the next page of quotas (service limits). When no more + pages exist, the value is null. :type next_link: str """ @@ -1392,12 +1166,12 @@ def __init__( class QuotaLimitsResponse(msrest.serialization.Model): - """Quota limits request response. + """Quotas (service limits) in the request response. - :param value: List of Quota limits with the quota request status. + :param value: List of quotas with the quota request status. :type value: list[~azure.mgmt.reservations.models.CurrentQuotaLimit] - :param next_link: The uri to fetch the next page of quota limits. When there are no more pages, - this is null. + :param next_link: The URI for fetching the next page of quota limits. When no more pages exist, + the value is null. :type next_link: str """ @@ -1420,25 +1194,25 @@ class QuotaProperties(msrest.serialization.Model): Variables are only populated by the server, and will be ignored when sending a request. - :param limit: The quota limit. + :param limit: Quota properties. :type limit: int - :ivar current_value: The current resource usages information. + :ivar current_value: Current usage value for the resource. :vartype current_value: int - :param unit: The units of the limit, such as - Count, Bytes, etc. Use the unit field provided - in the Get quota response. + :param unit: The limit units, such as **count** and **bytes**. Use the unit field provided in + the response of the GET quota operation. :type unit: str - :param name: Name of the resource provide by the resource Provider. Please use this name - property for quotaRequests. + :param name: Name of the resource provide by the resource provider. Use this property for + quotaRequests resource operations. :type name: ~azure.mgmt.reservations.models.ResourceName - :param resource_type: The Resource Type Name. Possible values include: "standard", "dedicated", - "lowPriority", "shared", "serviceSpecific". + :param resource_type: The name of the resource type. Possible values include: "standard", + "dedicated", "lowPriority", "shared", "serviceSpecific". :type resource_type: str or ~azure.mgmt.reservations.models.ResourceType - :ivar quota_period: The quota period over which the usage values are summarized, such as - P1D - (Per one day), PT1M (Per one minute), PT1S (Per one second). This parameter is optional - because, for some resources like compute, the period doesn’t matter. + :ivar quota_period: The time period over which the quota usage values are summarized. For + example, P1D (per one day), PT1M (per one minute), and PT1S (per one second). This parameter is + optional because, for some resources such as compute, the time period is irrelevant. :vartype quota_period: str - :param properties: Additional properties for the specific resource provider. - :type properties: object + :param properties: Additional properties for the specified resource provider. + :type properties: any """ _validation = { @@ -1471,23 +1245,23 @@ def __init__( class QuotaRequestDetails(msrest.serialization.Model): - """The details of the quota Request. + """Quota request details. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: The quota request Id. + :ivar id: Quota request ID. :vartype id: str - :ivar name: The name of the quota request. + :ivar name: Quota request name. :vartype name: str - :ivar type: Type of resource. "Microsoft.Capacity/ServiceLimits". + :ivar type: Resource type. :vartype type: str :param provisioning_state: The quota request status. Possible values include: "Accepted", "Invalid", "Succeeded", "Failed", "InProgress". :type provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState :ivar message: User friendly status message. :vartype message: str - :ivar request_submit_time: The quota request submit time. The date conforms to the following - format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. + :ivar request_submit_time: The time when the quota request was submitted using format: + yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype request_submit_time: ~datetime.datetime :param value: The quotaRequests. :type value: list[~azure.mgmt.reservations.models.SubRequest] @@ -1526,11 +1300,11 @@ def __init__( class QuotaRequestDetailsList(msrest.serialization.Model): - """Quota requests information. + """Quota request details. - :param value: The quota Requests. + :param value: The quota requests. :type value: list[~azure.mgmt.reservations.models.QuotaRequestDetails] - :param next_link: The uri to fetch the next page of quota limits. When there are no more pages, + :param next_link: The URI to fetch the next page of quota limits. When there are no more pages, this is null. :type next_link: str """ @@ -1550,11 +1324,11 @@ def __init__( class QuotaRequestOneResourceSubmitResponse(msrest.serialization.Model): - """Quota submit request response. + """Response for the quota submission request. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: The quota request Id. + :ivar id: The quota request ID. :vartype id: str :ivar name: The name of the quota request. :vartype name: str @@ -1565,8 +1339,8 @@ class QuotaRequestOneResourceSubmitResponse(msrest.serialization.Model): :vartype provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState :ivar message: User friendly status message. :vartype message: str - :ivar request_submit_time: The quota request submit time. The date conforms to the following - format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. + :ivar request_submit_time: The time when the quota request was submitted using format: + yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype request_submit_time: ~datetime.datetime :param properties: Quota properties for the resource. :type properties: ~azure.mgmt.reservations.models.QuotaProperties @@ -1615,8 +1389,8 @@ class QuotaRequestProperties(msrest.serialization.Model): :type provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState :ivar message: User friendly status message. :vartype message: str - :ivar request_submit_time: The quota request submit time. The date conforms to the following - format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. + :ivar request_submit_time: The time when the quota request was submitted using format: + yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype request_submit_time: ~datetime.datetime :param value: The quotaRequests. :type value: list[~azure.mgmt.reservations.models.SubRequest] @@ -1646,11 +1420,11 @@ def __init__( class QuotaRequestSubmitResponse(msrest.serialization.Model): - """Quota submit request response. + """Response for the quota submission request. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: The quota request Id. + :ivar id: The quota request ID. :vartype id: str :ivar name: The name of the quota request. :vartype name: str @@ -1685,18 +1459,18 @@ def __init__( class QuotaRequestSubmitResponse201(msrest.serialization.Model): - """The quota request submit response with request id. + """Response with request ID that the quota request was accepted. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: The quota request id. Please use the requestId to check the request status. + :ivar id: The quota request ID. Use the requestId parameter to check the request status. :vartype id: str - :ivar name: The operation Id. + :ivar name: Operation ID. :vartype name: str - :ivar type: The resource type. + :ivar type: Resource type. :vartype type: str - :ivar provisioning_state: The quota request status. Possible values include: "Accepted", - "Invalid", "Succeeded", "Failed", "InProgress". + :ivar provisioning_state: The details of the quota request status. Possible values include: + "Accepted", "Invalid", "Succeeded", "Failed", "InProgress". :vartype provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState :ivar message: A user friendly message. :vartype message: str @@ -2228,11 +2002,14 @@ def __init__( class ReservationToPurchaseCalculateExchange(msrest.serialization.Model): """Reservation purchase details. + :param properties: + :type properties: ~azure.mgmt.reservations.models.PurchaseRequest :param billing_currency_total: :type billing_currency_total: ~azure.mgmt.reservations.models.Price """ _attribute_map = { + 'properties': {'key': 'properties', 'type': 'PurchaseRequest'}, 'billing_currency_total': {'key': 'billingCurrencyTotal', 'type': 'Price'}, } @@ -2241,6 +2018,7 @@ def __init__( **kwargs ): super(ReservationToPurchaseCalculateExchange, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.billing_currency_total = kwargs.get('billing_currency_total', None) @@ -2249,6 +2027,11 @@ class ReservationToPurchaseExchange(msrest.serialization.Model): :param reservation_order_id: Fully qualified id of the ReservationOrder being purchased. :type reservation_order_id: str + :param reservation_id: Fully qualified id of the Reservation being purchased. This value is + only guaranteed to be non-null if the purchase is successful. + :type reservation_id: str + :param properties: + :type properties: ~azure.mgmt.reservations.models.PurchaseRequest :param billing_currency_total: :type billing_currency_total: ~azure.mgmt.reservations.models.Price :param status: Status of the individual operation. Possible values include: "Succeeded", @@ -2258,6 +2041,8 @@ class ReservationToPurchaseExchange(msrest.serialization.Model): _attribute_map = { 'reservation_order_id': {'key': 'reservationOrderId', 'type': 'str'}, + 'reservation_id': {'key': 'reservationId', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'PurchaseRequest'}, 'billing_currency_total': {'key': 'billingCurrencyTotal', 'type': 'Price'}, 'status': {'key': 'status', 'type': 'str'}, } @@ -2268,6 +2053,8 @@ def __init__( ): super(ReservationToPurchaseExchange, self).__init__(**kwargs) self.reservation_order_id = kwargs.get('reservation_order_id', None) + self.reservation_id = kwargs.get('reservation_id', None) + self.properties = kwargs.get('properties', None) self.billing_currency_total = kwargs.get('billing_currency_total', None) self.status = kwargs.get('status', None) @@ -2332,13 +2119,13 @@ def __init__( class ResourceName(msrest.serialization.Model): - """Name of the resource provide by the resource Provider. Please use this name property for quotaRequests. + """Resource name provided by the resource provider. Use this property for quotaRequest parameter. Variables are only populated by the server, and will be ignored when sending a request. :param value: Resource name. :type value: str - :ivar localized_value: Resource display name. + :ivar localized_value: Resource display localized name. :vartype localized_value: str """ @@ -2384,13 +2171,13 @@ def __init__( class ServiceError(msrest.serialization.Model): - """The api error details. + """The API error details. Variables are only populated by the server, and will be ignored when sending a request. :param code: The error code. :type code: str - :param message: The error message. + :param message: The error message text. :type message: str :ivar details: The list of error details. :vartype details: list[~azure.mgmt.reservations.models.ServiceErrorDetail] @@ -2546,21 +2333,21 @@ class SubRequest(msrest.serialization.Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar limit: The Resource limit. + :ivar limit: Quota (resource limit). :vartype limit: int - :param name: The Resource name. + :param name: The resource name. :type name: ~azure.mgmt.reservations.models.ResourceName :ivar resource_type: Resource type for which the quota check was made. :vartype resource_type: str - :param unit: The units of the limit, such as - Count, Bytes, etc. Use the unit field provided - in the Get quota response. + :param unit: The limit units, such as **count** and **bytes**. Use the unit field provided in + the response of the GET quota operation. :type unit: str :param provisioning_state: The quota request status. Possible values include: "Accepted", "Invalid", "Succeeded", "Failed", "InProgress". :type provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState - :ivar message: User friendly status message. + :ivar message: User-friendly status message. :vartype message: str - :ivar sub_request_id: Sub request id for individual request. + :ivar sub_request_id: Sub request ID for individual request. :vartype sub_request_id: str """ @@ -2612,56 +2399,3 @@ def __init__( ): super(SubscriptionScopeProperties, self).__init__(**kwargs) self.scopes = kwargs.get('scopes', None) - - -class SupportRequestAction(msrest.serialization.Model): - """The SupportRequest action. - - :param severity: The support request severity. Possible values include: "Critical", "Moderate", - "Minimal". - :type severity: str or ~azure.mgmt.reservations.models.SeverityType - :param first_name: The first name of the recipient. - :type first_name: str - :param last_name: The last name of the recipient. - :type last_name: str - :param country: The country of the recipient. - :type country: str - :param phone_number: The phone number of the recipient. - :type phone_number: str - :param primary_email_address: The primary email addresses of the recipients. - :type primary_email_address: str - :param support_language: The support language. - :type support_language: str - :param preferred_contact_method: The preferred communication channel. Possible values include: - "Email", "Phone". - :type preferred_contact_method: str or ~azure.mgmt.reservations.models.ContactMethodType - :param alternate_email_addresses: The alternate email address of the recipient. - :type alternate_email_addresses: list[str] - """ - - _attribute_map = { - 'severity': {'key': 'severity', 'type': 'str'}, - 'first_name': {'key': 'firstName', 'type': 'str'}, - 'last_name': {'key': 'lastName', 'type': 'str'}, - 'country': {'key': 'country', 'type': 'str'}, - 'phone_number': {'key': 'phoneNumber', 'type': 'str'}, - 'primary_email_address': {'key': 'primaryEmailAddress', 'type': 'str'}, - 'support_language': {'key': 'supportLanguage', 'type': 'str'}, - 'preferred_contact_method': {'key': 'preferredContactMethod', 'type': 'str'}, - 'alternate_email_addresses': {'key': 'alternateEmailAddresses', 'type': '[str]'}, - } - - def __init__( - self, - **kwargs - ): - super(SupportRequestAction, self).__init__(**kwargs) - self.severity = kwargs.get('severity', None) - self.first_name = kwargs.get('first_name', None) - self.last_name = kwargs.get('last_name', None) - self.country = kwargs.get('country', None) - self.phone_number = kwargs.get('phone_number', None) - self.primary_email_address = kwargs.get('primary_email_address', None) - self.support_language = kwargs.get('support_language', None) - self.preferred_contact_method = kwargs.get('preferred_contact_method', None) - self.alternate_email_addresses = kwargs.get('alternate_email_addresses', None) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_models_py3.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_models_py3.py index 7aaf2982caa5..adb04f2714e0 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_models_py3.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/models/_models_py3.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- import datetime -from typing import Dict, List, Optional, Union +from typing import Any, Dict, List, Optional, Union from azure.core.exceptions import HttpResponseError import msrest.serialization @@ -15,27 +15,6 @@ from ._azure_reservation_api_enums import * -class Actions(msrest.serialization.Model): - """The actions for auto quota increase. - - :param email_actions: The email actions for auto quota increase. - :type email_actions: ~azure.mgmt.reservations.models.EmailActions - """ - - _attribute_map = { - 'email_actions': {'key': 'emailActions', 'type': 'EmailActions'}, - } - - def __init__( - self, - *, - email_actions: Optional["EmailActions"] = None, - **kwargs - ): - super(Actions, self).__init__(**kwargs) - self.email_actions = email_actions - - class AppliedReservationList(msrest.serialization.Model): """AppliedReservationList. @@ -103,84 +82,6 @@ def __init__( self.reservation_order_ids = reservation_order_ids -class AqiSettings(msrest.serialization.Model): - """Settings for auto quota increase. - - :param auto_quota_increase_state: If the subscription has enabled automatic quota increase. - Possible values include: "enabled", "disabled". - :type auto_quota_increase_state: str or ~azure.mgmt.reservations.models.AqiStateType - """ - - _attribute_map = { - 'auto_quota_increase_state': {'key': 'autoQuotaIncreaseState', 'type': 'str'}, - } - - def __init__( - self, - *, - auto_quota_increase_state: Optional[Union[str, "AqiStateType"]] = None, - **kwargs - ): - super(AqiSettings, self).__init__(**kwargs) - self.auto_quota_increase_state = auto_quota_increase_state - - -class AutoQuotaIncreaseDetail(msrest.serialization.Model): - """Auto Quota Increase settings. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: The subscription Id. - :vartype id: str - :ivar name: The name of the auto quota increase. - :vartype name: str - :ivar type: The type of the resource. - :vartype type: str - :param settings: Settings for automatic quota increase. - :type settings: ~azure.mgmt.reservations.models.AqiSettings - :param on_failure: The on failure Actions. - :type on_failure: ~azure.mgmt.reservations.models.Actions - :param on_success: The on success Actions. - :type on_success: ~azure.mgmt.reservations.models.Actions - :param support_ticket_action: The support ticket action. - :type support_ticket_action: ~azure.mgmt.reservations.models.SupportRequestAction - """ - - _validation = { - 'id': {'readonly': True}, - 'name': {'readonly': True}, - 'type': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'name': {'key': 'name', 'type': 'str'}, - 'type': {'key': 'type', 'type': 'str'}, - 'settings': {'key': 'properties.settings', 'type': 'AqiSettings'}, - 'on_failure': {'key': 'properties.onFailure', 'type': 'Actions'}, - 'on_success': {'key': 'properties.onSuccess', 'type': 'Actions'}, - 'support_ticket_action': {'key': 'properties.supportTicketAction', 'type': 'SupportRequestAction'}, - } - - def __init__( - self, - *, - settings: Optional["AqiSettings"] = None, - on_failure: Optional["Actions"] = None, - on_success: Optional["Actions"] = None, - support_ticket_action: Optional["SupportRequestAction"] = None, - **kwargs - ): - super(AutoQuotaIncreaseDetail, self).__init__(**kwargs) - self.id = None - self.name = None - self.type = None - self.settings = settings - self.on_failure = on_failure - self.on_success = on_success - self.support_ticket_action = support_ticket_action - - class AvailableScopeProperties(msrest.serialization.Model): """AvailableScopeProperties. @@ -605,90 +506,6 @@ def __init__( self.restrictions = None -class ChangeDirectoryRequest(msrest.serialization.Model): - """ChangeDirectoryRequest. - - :param destination_tenant_id: Tenant id GUID that reservation order is to be transferred to. - :type destination_tenant_id: str - """ - - _attribute_map = { - 'destination_tenant_id': {'key': 'destinationTenantId', 'type': 'str'}, - } - - def __init__( - self, - *, - destination_tenant_id: Optional[str] = None, - **kwargs - ): - super(ChangeDirectoryRequest, self).__init__(**kwargs) - self.destination_tenant_id = destination_tenant_id - - -class ChangeDirectoryResponse(msrest.serialization.Model): - """Change directory response. - - :param reservation_order: Change directory result for reservation order or reservation. - :type reservation_order: ~azure.mgmt.reservations.models.ChangeDirectoryResult - :param reservations: - :type reservations: list[~azure.mgmt.reservations.models.ChangeDirectoryResult] - """ - - _attribute_map = { - 'reservation_order': {'key': 'reservationOrder', 'type': 'ChangeDirectoryResult'}, - 'reservations': {'key': 'reservations', 'type': '[ChangeDirectoryResult]'}, - } - - def __init__( - self, - *, - reservation_order: Optional["ChangeDirectoryResult"] = None, - reservations: Optional[List["ChangeDirectoryResult"]] = None, - **kwargs - ): - super(ChangeDirectoryResponse, self).__init__(**kwargs) - self.reservation_order = reservation_order - self.reservations = reservations - - -class ChangeDirectoryResult(msrest.serialization.Model): - """Change directory result for reservation order or reservation. - - :param id: Identifier of the reservation order or reservation. - :type id: str - :param name: Name of the reservation order or reservation. - :type name: str - :param is_succeeded: True if change directory operation succeeded on this reservation order or - reservation. - :type is_succeeded: bool - :param error: Error reason if operation failed. Null otherwise. - :type error: str - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'name': {'key': 'name', 'type': 'str'}, - 'is_succeeded': {'key': 'isSucceeded', 'type': 'bool'}, - 'error': {'key': 'error', 'type': 'str'}, - } - - def __init__( - self, - *, - id: Optional[str] = None, - name: Optional[str] = None, - is_succeeded: Optional[bool] = None, - error: Optional[str] = None, - **kwargs - ): - super(ChangeDirectoryResult, self).__init__(**kwargs) - self.id = id - self.name = name - self.is_succeeded = is_succeeded - self.error = error - - class CreateGenericQuotaRequestParameters(msrest.serialization.Model): """Quota change requests information. @@ -711,12 +528,12 @@ def __init__( class CurrentQuotaLimit(msrest.serialization.Model): - """Quota limits. + """Current quota limits. Variables are only populated by the server, and will be ignored when sending a request. - :ivar provisioning_state: The quota request status. Possible values include: "Accepted", - "Invalid", "Succeeded", "Failed", "InProgress". + :ivar provisioning_state: The details of the quota request status. Possible values include: + "Accepted", "Invalid", "Succeeded", "Failed", "InProgress". :vartype provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState :ivar message: A user friendly message. :vartype message: str @@ -748,7 +565,7 @@ def __init__( class CurrentQuotaLimitBase(msrest.serialization.Model): - """Quota limits. + """Quota properties. :param properties: Quota properties for the resource. :type properties: ~azure.mgmt.reservations.models.QuotaProperties @@ -768,48 +585,6 @@ def __init__( self.properties = properties -class EmailAction(msrest.serialization.Model): - """Email Action. - - :param email_address: The email address for the action. - :type email_address: str - """ - - _attribute_map = { - 'email_address': {'key': 'emailAddress', 'type': 'str'}, - } - - def __init__( - self, - *, - email_address: Optional[str] = None, - **kwargs - ): - super(EmailAction, self).__init__(**kwargs) - self.email_address = email_address - - -class EmailActions(msrest.serialization.Model): - """The email actions. - - :param email_addresses: The list of email actions. - :type email_addresses: list[~azure.mgmt.reservations.models.EmailAction] - """ - - _attribute_map = { - 'email_addresses': {'key': 'emailAddresses', 'type': '[EmailAction]'}, - } - - def __init__( - self, - *, - email_addresses: Optional[List["EmailAction"]] = None, - **kwargs - ): - super(EmailActions, self).__init__(**kwargs) - self.email_addresses = email_addresses - - class Error(msrest.serialization.Model): """Error. @@ -832,9 +607,9 @@ def __init__( class ExceptionResponse(msrest.serialization.Model): - """The api error. + """The API error. - :param error: The api error details. + :param error: The API error details. :type error: ~azure.mgmt.reservations.models.ServiceError """ @@ -1377,33 +1152,6 @@ def __init__( self.extended_status_info = extended_status_info -class PhoneAction(msrest.serialization.Model): - """Phone Action. - - :param phone_number: The phone number for the action. - :type phone_number: str - :param preferred_channel: The preferred communication channel. Possible values include: - "Email", "Phone". - :type preferred_channel: str or ~azure.mgmt.reservations.models.ContactMethodType - """ - - _attribute_map = { - 'phone_number': {'key': 'phoneNumber', 'type': 'str'}, - 'preferred_channel': {'key': 'preferredChannel', 'type': 'str'}, - } - - def __init__( - self, - *, - phone_number: Optional[str] = None, - preferred_channel: Optional[Union[str, "ContactMethodType"]] = None, - **kwargs - ): - super(PhoneAction, self).__init__(**kwargs) - self.phone_number = phone_number - self.preferred_channel = preferred_channel - - class Price(msrest.serialization.Model): """Price. @@ -1544,10 +1292,10 @@ def __init__( class QuotaLimits(msrest.serialization.Model): """Quota limits. - :param value: List of Quota limits. + :param value: List of quotas (service limits). :type value: list[~azure.mgmt.reservations.models.CurrentQuotaLimitBase] - :param next_link: The uri to fetch the next page of quota limits. When there are no more pages, - this is null. + :param next_link: The URI for fetching the next page of quotas (service limits). When no more + pages exist, the value is null. :type next_link: str """ @@ -1569,12 +1317,12 @@ def __init__( class QuotaLimitsResponse(msrest.serialization.Model): - """Quota limits request response. + """Quotas (service limits) in the request response. - :param value: List of Quota limits with the quota request status. + :param value: List of quotas with the quota request status. :type value: list[~azure.mgmt.reservations.models.CurrentQuotaLimit] - :param next_link: The uri to fetch the next page of quota limits. When there are no more pages, - this is null. + :param next_link: The URI for fetching the next page of quota limits. When no more pages exist, + the value is null. :type next_link: str """ @@ -1600,25 +1348,25 @@ class QuotaProperties(msrest.serialization.Model): Variables are only populated by the server, and will be ignored when sending a request. - :param limit: The quota limit. + :param limit: Quota properties. :type limit: int - :ivar current_value: The current resource usages information. + :ivar current_value: Current usage value for the resource. :vartype current_value: int - :param unit: The units of the limit, such as - Count, Bytes, etc. Use the unit field provided - in the Get quota response. + :param unit: The limit units, such as **count** and **bytes**. Use the unit field provided in + the response of the GET quota operation. :type unit: str - :param name: Name of the resource provide by the resource Provider. Please use this name - property for quotaRequests. + :param name: Name of the resource provide by the resource provider. Use this property for + quotaRequests resource operations. :type name: ~azure.mgmt.reservations.models.ResourceName - :param resource_type: The Resource Type Name. Possible values include: "standard", "dedicated", - "lowPriority", "shared", "serviceSpecific". + :param resource_type: The name of the resource type. Possible values include: "standard", + "dedicated", "lowPriority", "shared", "serviceSpecific". :type resource_type: str or ~azure.mgmt.reservations.models.ResourceType - :ivar quota_period: The quota period over which the usage values are summarized, such as - P1D - (Per one day), PT1M (Per one minute), PT1S (Per one second). This parameter is optional - because, for some resources like compute, the period doesn’t matter. + :ivar quota_period: The time period over which the quota usage values are summarized. For + example, P1D (per one day), PT1M (per one minute), and PT1S (per one second). This parameter is + optional because, for some resources such as compute, the time period is irrelevant. :vartype quota_period: str - :param properties: Additional properties for the specific resource provider. - :type properties: object + :param properties: Additional properties for the specified resource provider. + :type properties: any """ _validation = { @@ -1643,7 +1391,7 @@ def __init__( unit: Optional[str] = None, name: Optional["ResourceName"] = None, resource_type: Optional[Union[str, "ResourceType"]] = None, - properties: Optional[object] = None, + properties: Optional[Any] = None, **kwargs ): super(QuotaProperties, self).__init__(**kwargs) @@ -1657,23 +1405,23 @@ def __init__( class QuotaRequestDetails(msrest.serialization.Model): - """The details of the quota Request. + """Quota request details. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: The quota request Id. + :ivar id: Quota request ID. :vartype id: str - :ivar name: The name of the quota request. + :ivar name: Quota request name. :vartype name: str - :ivar type: Type of resource. "Microsoft.Capacity/ServiceLimits". + :ivar type: Resource type. :vartype type: str :param provisioning_state: The quota request status. Possible values include: "Accepted", "Invalid", "Succeeded", "Failed", "InProgress". :type provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState :ivar message: User friendly status message. :vartype message: str - :ivar request_submit_time: The quota request submit time. The date conforms to the following - format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. + :ivar request_submit_time: The time when the quota request was submitted using format: + yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype request_submit_time: ~datetime.datetime :param value: The quotaRequests. :type value: list[~azure.mgmt.reservations.models.SubRequest] @@ -1715,11 +1463,11 @@ def __init__( class QuotaRequestDetailsList(msrest.serialization.Model): - """Quota requests information. + """Quota request details. - :param value: The quota Requests. + :param value: The quota requests. :type value: list[~azure.mgmt.reservations.models.QuotaRequestDetails] - :param next_link: The uri to fetch the next page of quota limits. When there are no more pages, + :param next_link: The URI to fetch the next page of quota limits. When there are no more pages, this is null. :type next_link: str """ @@ -1742,11 +1490,11 @@ def __init__( class QuotaRequestOneResourceSubmitResponse(msrest.serialization.Model): - """Quota submit request response. + """Response for the quota submission request. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: The quota request Id. + :ivar id: The quota request ID. :vartype id: str :ivar name: The name of the quota request. :vartype name: str @@ -1757,8 +1505,8 @@ class QuotaRequestOneResourceSubmitResponse(msrest.serialization.Model): :vartype provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState :ivar message: User friendly status message. :vartype message: str - :ivar request_submit_time: The quota request submit time. The date conforms to the following - format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. + :ivar request_submit_time: The time when the quota request was submitted using format: + yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype request_submit_time: ~datetime.datetime :param properties: Quota properties for the resource. :type properties: ~azure.mgmt.reservations.models.QuotaProperties @@ -1809,8 +1557,8 @@ class QuotaRequestProperties(msrest.serialization.Model): :type provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState :ivar message: User friendly status message. :vartype message: str - :ivar request_submit_time: The quota request submit time. The date conforms to the following - format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. + :ivar request_submit_time: The time when the quota request was submitted using format: + yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype request_submit_time: ~datetime.datetime :param value: The quotaRequests. :type value: list[~azure.mgmt.reservations.models.SubRequest] @@ -1843,11 +1591,11 @@ def __init__( class QuotaRequestSubmitResponse(msrest.serialization.Model): - """Quota submit request response. + """Response for the quota submission request. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: The quota request Id. + :ivar id: The quota request ID. :vartype id: str :ivar name: The name of the quota request. :vartype name: str @@ -1884,18 +1632,18 @@ def __init__( class QuotaRequestSubmitResponse201(msrest.serialization.Model): - """The quota request submit response with request id. + """Response with request ID that the quota request was accepted. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: The quota request id. Please use the requestId to check the request status. + :ivar id: The quota request ID. Use the requestId parameter to check the request status. :vartype id: str - :ivar name: The operation Id. + :ivar name: Operation ID. :vartype name: str - :ivar type: The resource type. + :ivar type: Resource type. :vartype type: str - :ivar provisioning_state: The quota request status. Possible values include: "Accepted", - "Invalid", "Succeeded", "Failed", "InProgress". + :ivar provisioning_state: The details of the quota request status. Possible values include: + "Accepted", "Invalid", "Succeeded", "Failed", "InProgress". :vartype provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState :ivar message: A user friendly message. :vartype message: str @@ -2496,21 +2244,26 @@ def __init__( class ReservationToPurchaseCalculateExchange(msrest.serialization.Model): """Reservation purchase details. + :param properties: + :type properties: ~azure.mgmt.reservations.models.PurchaseRequest :param billing_currency_total: :type billing_currency_total: ~azure.mgmt.reservations.models.Price """ _attribute_map = { + 'properties': {'key': 'properties', 'type': 'PurchaseRequest'}, 'billing_currency_total': {'key': 'billingCurrencyTotal', 'type': 'Price'}, } def __init__( self, *, + properties: Optional["PurchaseRequest"] = None, billing_currency_total: Optional["Price"] = None, **kwargs ): super(ReservationToPurchaseCalculateExchange, self).__init__(**kwargs) + self.properties = properties self.billing_currency_total = billing_currency_total @@ -2519,6 +2272,11 @@ class ReservationToPurchaseExchange(msrest.serialization.Model): :param reservation_order_id: Fully qualified id of the ReservationOrder being purchased. :type reservation_order_id: str + :param reservation_id: Fully qualified id of the Reservation being purchased. This value is + only guaranteed to be non-null if the purchase is successful. + :type reservation_id: str + :param properties: + :type properties: ~azure.mgmt.reservations.models.PurchaseRequest :param billing_currency_total: :type billing_currency_total: ~azure.mgmt.reservations.models.Price :param status: Status of the individual operation. Possible values include: "Succeeded", @@ -2528,6 +2286,8 @@ class ReservationToPurchaseExchange(msrest.serialization.Model): _attribute_map = { 'reservation_order_id': {'key': 'reservationOrderId', 'type': 'str'}, + 'reservation_id': {'key': 'reservationId', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'PurchaseRequest'}, 'billing_currency_total': {'key': 'billingCurrencyTotal', 'type': 'Price'}, 'status': {'key': 'status', 'type': 'str'}, } @@ -2536,12 +2296,16 @@ def __init__( self, *, reservation_order_id: Optional[str] = None, + reservation_id: Optional[str] = None, + properties: Optional["PurchaseRequest"] = None, billing_currency_total: Optional["Price"] = None, status: Optional[Union[str, "OperationStatus"]] = None, **kwargs ): super(ReservationToPurchaseExchange, self).__init__(**kwargs) self.reservation_order_id = reservation_order_id + self.reservation_id = reservation_id + self.properties = properties self.billing_currency_total = billing_currency_total self.status = status @@ -2615,13 +2379,13 @@ def __init__( class ResourceName(msrest.serialization.Model): - """Name of the resource provide by the resource Provider. Please use this name property for quotaRequests. + """Resource name provided by the resource provider. Use this property for quotaRequest parameter. Variables are only populated by the server, and will be ignored when sending a request. :param value: Resource name. :type value: str - :ivar localized_value: Resource display name. + :ivar localized_value: Resource display localized name. :vartype localized_value: str """ @@ -2672,13 +2436,13 @@ def __init__( class ServiceError(msrest.serialization.Model): - """The api error details. + """The API error details. Variables are only populated by the server, and will be ignored when sending a request. :param code: The error code. :type code: str - :param message: The error message. + :param message: The error message text. :type message: str :ivar details: The list of error details. :vartype details: list[~azure.mgmt.reservations.models.ServiceErrorDetail] @@ -2849,21 +2613,21 @@ class SubRequest(msrest.serialization.Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar limit: The Resource limit. + :ivar limit: Quota (resource limit). :vartype limit: int - :param name: The Resource name. + :param name: The resource name. :type name: ~azure.mgmt.reservations.models.ResourceName :ivar resource_type: Resource type for which the quota check was made. :vartype resource_type: str - :param unit: The units of the limit, such as - Count, Bytes, etc. Use the unit field provided - in the Get quota response. + :param unit: The limit units, such as **count** and **bytes**. Use the unit field provided in + the response of the GET quota operation. :type unit: str :param provisioning_state: The quota request status. Possible values include: "Accepted", "Invalid", "Succeeded", "Failed", "InProgress". :type provisioning_state: str or ~azure.mgmt.reservations.models.QuotaRequestState - :ivar message: User friendly status message. + :ivar message: User-friendly status message. :vartype message: str - :ivar sub_request_id: Sub request id for individual request. + :ivar sub_request_id: Sub request ID for individual request. :vartype sub_request_id: str """ @@ -2921,66 +2685,3 @@ def __init__( ): super(SubscriptionScopeProperties, self).__init__(**kwargs) self.scopes = scopes - - -class SupportRequestAction(msrest.serialization.Model): - """The SupportRequest action. - - :param severity: The support request severity. Possible values include: "Critical", "Moderate", - "Minimal". - :type severity: str or ~azure.mgmt.reservations.models.SeverityType - :param first_name: The first name of the recipient. - :type first_name: str - :param last_name: The last name of the recipient. - :type last_name: str - :param country: The country of the recipient. - :type country: str - :param phone_number: The phone number of the recipient. - :type phone_number: str - :param primary_email_address: The primary email addresses of the recipients. - :type primary_email_address: str - :param support_language: The support language. - :type support_language: str - :param preferred_contact_method: The preferred communication channel. Possible values include: - "Email", "Phone". - :type preferred_contact_method: str or ~azure.mgmt.reservations.models.ContactMethodType - :param alternate_email_addresses: The alternate email address of the recipient. - :type alternate_email_addresses: list[str] - """ - - _attribute_map = { - 'severity': {'key': 'severity', 'type': 'str'}, - 'first_name': {'key': 'firstName', 'type': 'str'}, - 'last_name': {'key': 'lastName', 'type': 'str'}, - 'country': {'key': 'country', 'type': 'str'}, - 'phone_number': {'key': 'phoneNumber', 'type': 'str'}, - 'primary_email_address': {'key': 'primaryEmailAddress', 'type': 'str'}, - 'support_language': {'key': 'supportLanguage', 'type': 'str'}, - 'preferred_contact_method': {'key': 'preferredContactMethod', 'type': 'str'}, - 'alternate_email_addresses': {'key': 'alternateEmailAddresses', 'type': '[str]'}, - } - - def __init__( - self, - *, - severity: Optional[Union[str, "SeverityType"]] = None, - first_name: Optional[str] = None, - last_name: Optional[str] = None, - country: Optional[str] = None, - phone_number: Optional[str] = None, - primary_email_address: Optional[str] = None, - support_language: Optional[str] = None, - preferred_contact_method: Optional[Union[str, "ContactMethodType"]] = None, - alternate_email_addresses: Optional[List[str]] = None, - **kwargs - ): - super(SupportRequestAction, self).__init__(**kwargs) - self.severity = severity - self.first_name = first_name - self.last_name = last_name - self.country = country - self.phone_number = phone_number - self.primary_email_address = primary_email_address - self.support_language = support_language - self.preferred_contact_method = preferred_contact_method - self.alternate_email_addresses = alternate_email_addresses diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/__init__.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/__init__.py index 0da0c31609e0..5cf631a610fd 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/__init__.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/__init__.py @@ -6,24 +6,22 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -from ._quota_operations import QuotaOperations -from ._quota_request_status_operations import QuotaRequestStatusOperations -from ._auto_quota_increase_operations import AutoQuotaIncreaseOperations from ._reservation_operations import ReservationOperations from ._azure_reservation_api_operations import AzureReservationAPIOperationsMixin from ._reservation_order_operations import ReservationOrderOperations from ._operation_operations import OperationOperations from ._calculate_exchange_operations import CalculateExchangeOperations from ._exchange_operations import ExchangeOperations +from ._quota_operations import QuotaOperations +from ._quota_request_status_operations import QuotaRequestStatusOperations __all__ = [ - 'QuotaOperations', - 'QuotaRequestStatusOperations', - 'AutoQuotaIncreaseOperations', 'ReservationOperations', 'AzureReservationAPIOperationsMixin', 'ReservationOrderOperations', 'OperationOperations', 'CalculateExchangeOperations', 'ExchangeOperations', + 'QuotaOperations', + 'QuotaRequestStatusOperations', ] diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_auto_quota_increase_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_auto_quota_increase_operations.py deleted file mode 100644 index 26cc57cc633a..000000000000 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_auto_quota_increase_operations.py +++ /dev/null @@ -1,163 +0,0 @@ -# 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) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from typing import TYPE_CHECKING -import warnings - -from azure.core.exceptions import ClientAuthenticationError, HttpResponseError, ResourceExistsError, ResourceNotFoundError, map_error -from azure.core.pipeline import PipelineResponse -from azure.core.pipeline.transport import HttpRequest, HttpResponse -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from typing import Any, Callable, Dict, Generic, Optional, TypeVar - - T = TypeVar('T') - ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -class AutoQuotaIncreaseOperations(object): - """AutoQuotaIncreaseOperations operations. - - You should not instantiate this class directly. Instead, you should create a Client instance that - instantiates it for you and attaches it as an attribute. - - :ivar models: Alias to model classes used in this operation group. - :type models: ~azure.mgmt.reservations.models - :param client: Client for service requests. - :param config: Configuration of service client. - :param serializer: An object model serializer. - :param deserializer: An object model deserializer. - """ - - models = _models - - def __init__(self, client, config, serializer, deserializer): - self._client = client - self._serialize = serializer - self._deserialize = deserializer - self._config = config - - def get_properties( - self, - subscription_id, # type: str - **kwargs # type: Any - ): - # type: (...) -> "_models.AutoQuotaIncreaseDetail" - """Gets the Auto Quota Increase enrollment details for the specified subscription. - - :param subscription_id: Azure subscription id. - :type subscription_id: str - :keyword callable cls: A custom type or function that will be passed the direct response - :return: AutoQuotaIncreaseDetail, or the result of cls(response) - :rtype: ~azure.mgmt.reservations.models.AutoQuotaIncreaseDetail - :raises: ~azure.core.exceptions.HttpResponseError - """ - cls = kwargs.pop('cls', None) # type: ClsType["_models.AutoQuotaIncreaseDetail"] - error_map = { - 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError - } - error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" - accept = "application/json" - - # Construct URL - url = self.get_properties.metadata['url'] # type: ignore - path_format_arguments = { - 'subscriptionId': self._serialize.url("subscription_id", subscription_id, 'str'), - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} # type: Dict[str, Any] - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') - - # Construct headers - header_parameters = {} # type: Dict[str, Any] - header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') - - request = self._client.get(url, query_parameters, header_parameters) - pipeline_response = self._client._pipeline.run(request, stream=False, **kwargs) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize('AutoQuotaIncreaseDetail', pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, {}) - - return deserialized - get_properties.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Capacity/autoQuotaIncrease'} # type: ignore - - def create( - self, - subscription_id, # type: str - auto_quota_increase_request, # type: "_models.AutoQuotaIncreaseDetail" - **kwargs # type: Any - ): - # type: (...) -> "_models.AutoQuotaIncreaseDetail" - """Sets the Auto Quota Increase enrollment properties for the specified subscription. - - :param subscription_id: Azure subscription id. - :type subscription_id: str - :param auto_quota_increase_request: Auto Quota increase request payload. - :type auto_quota_increase_request: ~azure.mgmt.reservations.models.AutoQuotaIncreaseDetail - :keyword callable cls: A custom type or function that will be passed the direct response - :return: AutoQuotaIncreaseDetail, or the result of cls(response) - :rtype: ~azure.mgmt.reservations.models.AutoQuotaIncreaseDetail - :raises: ~azure.core.exceptions.HttpResponseError - """ - cls = kwargs.pop('cls', None) # type: ClsType["_models.AutoQuotaIncreaseDetail"] - error_map = { - 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError - } - error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" - content_type = kwargs.pop("content_type", "application/json") - accept = "application/json" - - # Construct URL - url = self.create.metadata['url'] # type: ignore - path_format_arguments = { - 'subscriptionId': self._serialize.url("subscription_id", subscription_id, 'str'), - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} # type: Dict[str, Any] - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') - - # Construct headers - header_parameters = {} # type: Dict[str, Any] - header_parameters['Content-Type'] = self._serialize.header("content_type", content_type, 'str') - header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') - - body_content_kwargs = {} # type: Dict[str, Any] - body_content = self._serialize.body(auto_quota_increase_request, 'AutoQuotaIncreaseDetail') - body_content_kwargs['content'] = body_content - request = self._client.put(url, query_parameters, header_parameters, **body_content_kwargs) - pipeline_response = self._client._pipeline.run(request, stream=False, **kwargs) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize('AutoQuotaIncreaseDetail', pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, {}) - - return deserialized - create.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Capacity/autoQuotaIncrease'} # type: ignore diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py index b8561eb04c7c..01b79fad9a72 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py @@ -81,7 +81,7 @@ def get_catalog( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('[Catalog]', pipeline_response) @@ -139,7 +139,7 @@ def get_applied_reservation_list( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('AppliedReservations', pipeline_response) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_calculate_exchange_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_calculate_exchange_operations.py index 815937cf4706..dfe26fcffad8 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_calculate_exchange_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_calculate_exchange_operations.py @@ -82,7 +82,7 @@ def _post_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -91,6 +91,7 @@ def _post_initial( deserialized = self._deserialize('CalculateExchangeOperationResultResponse', pipeline_response) if response.status_code == 202: + response_headers['Azure-AsyncOperation']=self._deserialize('str', response.headers.get('Azure-AsyncOperation')) response_headers['Location']=self._deserialize('str', response.headers.get('Location')) response_headers['Retry-After']=self._deserialize('int', response.headers.get('Retry-After')) @@ -114,8 +115,8 @@ def begin_post( :type body: ~azure.mgmt.reservations.models.CalculateExchangeRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either CalculateExchangeOperationResultResponse or the result of cls(response) @@ -146,7 +147,7 @@ def get_long_running_output(pipeline_response): return cls(pipeline_response, deserialized, {}) return deserialized - if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **kwargs) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'azure-async-operation'}, **kwargs) elif polling is False: polling_method = NoPolling() else: polling_method = polling if cont_token: diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_exchange_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_exchange_operations.py index 3c1b8cc8e8ad..ee839067fea0 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_exchange_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_exchange_operations.py @@ -82,7 +82,7 @@ def _post_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -91,6 +91,7 @@ def _post_initial( deserialized = self._deserialize('ExchangeOperationResultResponse', pipeline_response) if response.status_code == 202: + response_headers['Azure-AsyncOperation']=self._deserialize('str', response.headers.get('Azure-AsyncOperation')) response_headers['Location']=self._deserialize('str', response.headers.get('Location')) response_headers['Retry-After']=self._deserialize('int', response.headers.get('Retry-After')) @@ -114,8 +115,8 @@ def begin_post( :type body: ~azure.mgmt.reservations.models.ExchangeRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either ExchangeOperationResultResponse or the result of cls(response) @@ -146,7 +147,7 @@ def get_long_running_output(pipeline_response): return cls(pipeline_response, deserialized, {}) return deserialized - if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **kwargs) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'azure-async-operation'}, **kwargs) elif polling is False: polling_method = NoPolling() else: polling_method = polling if cont_token: diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_operation_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_operation_operations.py index 640e0c98d991..52d75e01f0ac 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_operation_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_operation_operations.py @@ -100,7 +100,7 @@ def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_quota_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_quota_operations.py index 77228ea51e63..3184a6dbca57 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_quota_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_quota_operations.py @@ -56,12 +56,12 @@ def get( **kwargs # type: Any ): # type: (...) -> "_models.CurrentQuotaLimitBase" - """Gets the current service limits (quotas) and usage of a resource. The response from Get API can - be leveraged to submit quota update requests. + """Get the current quota (service limit) and usage of a resource. You can use the response from + the GET operation to submit quota update request. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str @@ -78,7 +78,7 @@ def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" accept = "application/json" # Construct URL @@ -105,7 +105,7 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -133,7 +133,7 @@ def _create_or_update_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -165,7 +165,7 @@ def _create_or_update_initial( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if response.status_code == 200: @@ -190,7 +190,7 @@ def begin_create_or_update( **kwargs # type: Any ): # type: (...) -> LROPoller[Union["_models.QuotaRequestOneResourceSubmitResponse", "_models.QuotaRequestSubmitResponse201"]] - """Create or update the service limits (quota) of a resource to requested value. + """Create or update the quota (service limits) of a resource to the requested value. Steps: @@ -205,9 +205,9 @@ def begin_create_or_update( The Create quota request may be constructed as follows. The PUT operation can be used to update the quota. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str @@ -218,8 +218,8 @@ def begin_create_or_update( :type create_quota_request: ~azure.mgmt.reservations.models.CurrentQuotaLimitBase :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either QuotaRequestOneResourceSubmitResponse or the result of cls(response) @@ -290,7 +290,7 @@ def _update_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -322,7 +322,7 @@ def _update_initial( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if response.status_code == 200: @@ -347,36 +347,31 @@ def begin_update( **kwargs # type: Any ): # type: (...) -> LROPoller[Union["_models.QuotaRequestOneResourceSubmitResponse", "_models.QuotaRequestSubmitResponse201"]] - """Update the service limits (quota) of a resource to requested value. - Steps: + """Update the quota (service limits) of this resource to the requested value. + • To get the quota information for specific resource, send a GET request. - #. - Make the Get request to get the quota information for specific resource. - - #. - To increase the quota, update the limit field in the response from Get request to new value. + • To increase the quota, update the limit field from the GET response to a new value. - #. - Submit the JSON to the quota request API to update the quota. - The Update quota request may be constructed as follows. The PATCH operation can be used to - update the quota. + • To update the quota value, submit the JSON response to the quota request API to update the + quota. + • To update the quota. use the PATCH operation. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str :param resource_name: The resource name for a resource provider, such as SKU name for Microsoft.Compute, Sku or TotalLowPriorityCores for Microsoft.MachineLearningServices. :type resource_name: str - :param create_quota_request: Quota requests payload. + :param create_quota_request: Payload for the quota request. :type create_quota_request: ~azure.mgmt.reservations.models.CurrentQuotaLimitBase :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either QuotaRequestOneResourceSubmitResponse or the result of cls(response) @@ -440,12 +435,12 @@ def list( **kwargs # type: Any ): # type: (...) -> Iterable["_models.QuotaLimits"] - """Get a list of current service limits (quota) and usages of all the resources. The response from - List API can be leveraged to submit quota update requests. + """Gets a list of current quotas (service limits) and usage for all resources. The response from + the list quota operation can be leveraged to request quota updates. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str @@ -459,7 +454,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" accept = "application/json" def prepare_request(next_link=None): @@ -501,7 +496,7 @@ def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_quota_request_status_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_quota_request_status_operations.py index 08103290950c..f602094b7489 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_quota_request_status_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_quota_request_status_operations.py @@ -54,17 +54,17 @@ def get( **kwargs # type: Any ): # type: (...) -> "_models.QuotaRequestDetails" - """Gets the QuotaRequest details and status by the quota request Id for the resources for the - resource provider at a specific location. The requestId is returned as response to the Put - requests for serviceLimits. + """For the specified Azure region (location), get the details and status of the quota request by + the quota request ID for the resources of the resource provider. The PUT request for the quota + (service limit) returns a response with the requestId parameter. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str - :param id: Quota Request id. + :param id: Quota Request ID. :type id: str :keyword callable cls: A custom type or function that will be passed the direct response :return: QuotaRequestDetails, or the result of cls(response) @@ -76,7 +76,7 @@ def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" accept = "application/json" # Construct URL @@ -103,7 +103,7 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('QuotaRequestDetails', pipeline_response) @@ -125,13 +125,13 @@ def list( **kwargs # type: Any ): # type: (...) -> Iterable["_models.QuotaRequestDetailsList"] - """For the specified location and Resource provider gets the current quota requests under the - subscription over the time period of one year ago from now to one year back. oData filter can - be used to select quota requests. + """For the specified Azure region (location), subscription, and resource provider, get the history + of the quota requests for the past year. To select specific quota requests, use the oData + filter. - :param subscription_id: Azure subscription id. + :param subscription_id: Azure subscription ID. :type subscription_id: str - :param provider_id: Azure resource provider id. + :param provider_id: Azure resource provider ID. :type provider_id: str :param location: Azure region. :type location: str @@ -148,8 +148,8 @@ def list( :param top: Number of records to return. :type top: int :param skiptoken: Skiptoken is only used if a previous operation returned a partial result. If - a previous response contains a nextLink element, the value of the nextLink element will include - a skiptoken parameter that specifies a starting point to use for subsequent calls. + a previous response contains a nextLink element, the value of the nextLink element includes a + skiptoken parameter that specifies a starting point to use for subsequent calls. :type skiptoken: str :keyword callable cls: A custom type or function that will be passed the direct response :return: An iterator like instance of either QuotaRequestDetailsList or the result of cls(response) @@ -161,7 +161,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2019-07-19-preview" + api_version = "2020-10-25" accept = "application/json" def prepare_request(next_link=None): @@ -209,7 +209,7 @@ def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.ExceptionResponse, response) + error = self._deserialize.failsafe_deserialize(_models.ExceptionResponse, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_reservation_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_reservation_operations.py index 530527736920..df30d195067d 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_reservation_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_reservation_operations.py @@ -90,7 +90,7 @@ def _available_scopes_initial( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('AvailableScopeProperties', pipeline_response) @@ -121,8 +121,8 @@ def begin_available_scopes( :type body: ~azure.mgmt.reservations.models.AvailableScopeRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either AvailableScopeProperties or the result of cls(response) @@ -215,7 +215,7 @@ def _split_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = None @@ -245,8 +245,8 @@ def begin_split( :type body: ~azure.mgmt.reservations.models.SplitRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either list of ReservationResponse or the result of cls(response) @@ -337,7 +337,7 @@ def _merge_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = None @@ -368,8 +368,8 @@ def begin_merge( :type body: ~azure.mgmt.reservations.models.MergeRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either list of ReservationResponse or the result of cls(response) @@ -481,7 +481,7 @@ def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) @@ -547,7 +547,7 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('ReservationResponse', pipeline_response) @@ -601,7 +601,7 @@ def _update_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = None @@ -634,8 +634,8 @@ def begin_update( :type parameters: ~azure.mgmt.reservations.models.Patch :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either ReservationResponse or the result of cls(response) @@ -753,7 +753,7 @@ def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) diff --git a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_reservation_order_operations.py b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_reservation_order_operations.py index 1a6aba9f6124..c4d0104a11eb 100644 --- a/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_reservation_order_operations.py +++ b/sdk/reservations/azure-mgmt-reservations/azure/mgmt/reservations/operations/_reservation_order_operations.py @@ -94,7 +94,7 @@ def calculate( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('CalculatePriceResponse', pipeline_response) @@ -160,7 +160,7 @@ def get_next(next_link=None): response = pipeline_response.http_response if response.status_code not in [200]: - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) map_error(status_code=response.status_code, response=response, error_map=error_map) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) @@ -212,7 +212,7 @@ def _purchase_initial( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if response.status_code == 200: @@ -244,8 +244,8 @@ def begin_purchase( :type body: ~azure.mgmt.reservations.models.PurchaseRequest :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: True for ARMPolling, False for no polling, or a - polling object for personal polling strategy + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either ReservationOrderResponse or the result of cls(response) @@ -346,7 +346,7 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) + error = self._deserialize.failsafe_deserialize(_models.Error, response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize('ReservationOrderResponse', pipeline_response) @@ -356,69 +356,3 @@ def get( return deserialized get.metadata = {'url': '/providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}'} # type: ignore - - def change_directory( - self, - reservation_order_id, # type: str - body, # type: "_models.ChangeDirectoryRequest" - **kwargs # type: Any - ): - # type: (...) -> "_models.ChangeDirectoryResponse" - """Change directory of ``ReservationOrder``. - - Change directory (tenant) of ``ReservationOrder`` and all ``Reservation`` under it to specified - tenant id. - - :param reservation_order_id: Order Id of the reservation. - :type reservation_order_id: str - :param body: Information needed to change directory of reservation order. - :type body: ~azure.mgmt.reservations.models.ChangeDirectoryRequest - :keyword callable cls: A custom type or function that will be passed the direct response - :return: ChangeDirectoryResponse, or the result of cls(response) - :rtype: ~azure.mgmt.reservations.models.ChangeDirectoryResponse - :raises: ~azure.core.exceptions.HttpResponseError - """ - cls = kwargs.pop('cls', None) # type: ClsType["_models.ChangeDirectoryResponse"] - error_map = { - 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError - } - error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-11-15-preview" - content_type = kwargs.pop("content_type", "application/json") - accept = "application/json" - - # Construct URL - url = self.change_directory.metadata['url'] # type: ignore - path_format_arguments = { - 'reservationOrderId': self._serialize.url("reservation_order_id", reservation_order_id, 'str'), - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} # type: Dict[str, Any] - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') - - # Construct headers - header_parameters = {} # type: Dict[str, Any] - header_parameters['Content-Type'] = self._serialize.header("content_type", content_type, 'str') - header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') - - body_content_kwargs = {} # type: Dict[str, Any] - body_content = self._serialize.body(body, 'ChangeDirectoryRequest') - body_content_kwargs['content'] = body_content - request = self._client.post(url, query_parameters, header_parameters, **body_content_kwargs) - pipeline_response = self._client._pipeline.run(request, stream=False, **kwargs) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.Error, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize('ChangeDirectoryResponse', pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, {}) - - return deserialized - change_directory.metadata = {'url': '/providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/changeDirectory'} # type: ignore diff --git a/sdk/reservations/azure-mgmt-reservations/setup.py b/sdk/reservations/azure-mgmt-reservations/setup.py index ae178ae4c65d..de93d897b5b3 100644 --- a/sdk/reservations/azure-mgmt-reservations/setup.py +++ b/sdk/reservations/azure-mgmt-reservations/setup.py @@ -78,7 +78,7 @@ 'azure.mgmt', ]), install_requires=[ - 'msrest>=0.5.0', + 'msrest>=0.6.21', 'azure-common~=1.1', 'azure-mgmt-core>=1.2.0,<2.0.0', ], diff --git a/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_applied_reservation.yaml b/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_applied_reservation.yaml deleted file mode 100644 index fb9e7b9752ea..000000000000 --- a/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_applied_reservation.yaml +++ /dev/null @@ -1,93 +0,0 @@ -interactions: -- request: - body: grant_type=client_credentials&resource=https%3A%2F%2Fmanagement.core.windows.net%2F&response_type=client_credentials - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '116' - Content-Type: - - application/x-www-form-urlencoded;charset=UTF-8 - User-Agent: - - python-requests/2.21.0 - method: POST - uri: https://login.windows-ppe.net/3c662abc-ebe5-4a69-bf64-4674b3313ef8/oauth2/token - response: - body: - string: '{"token_type":"Bearer","expires_in":"3600","ext_expires_in":"3600","expires_on":"1556229237","not_before":"1556225337","resource":"https://management.core.windows.net/","access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Il9qRE5NaUprakNHaU5TSEsyOS1kN3ZKczVuUSIsImtpZCI6Il9qRE5NaUprakNHaU5TSEsyOS1kN3ZKczVuUSJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLXBwZS5uZXQvM2M2NjJhYmMtZWJlNS00YTY5LWJmNjQtNDY3NGIzMzEzZWY4LyIsImlhdCI6MTU1NjIyNTMzNywibmJmIjoxNTU2MjI1MzM3LCJleHAiOjE1NTYyMjkyMzcsImFpbyI6IjQyTmdZSkJKdG5aWW9zSnUrV3hoTWNmU2llOUtBQT09IiwiYXBwaWQiOiI0YzBhMDVlNC00MDY0LTQ3ZmUtODc1Zi02YTk3MmY5MzJiNDQiLCJhcHBpZGFjciI6IjEiLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLXBwZS5uZXQvM2M2NjJhYmMtZWJlNS00YTY5LWJmNjQtNDY3NGIzMzEzZWY4LyIsIm9pZCI6IjI2M2JjYThhLTcyOTEtNGRlMy05ODFkLTQ1NWE1MjIzZjYxYyIsInN1YiI6IjI2M2JjYThhLTcyOTEtNGRlMy05ODFkLTQ1NWE1MjIzZjYxYyIsInRpZCI6IjNjNjYyYWJjLWViZTUtNGE2OS1iZjY0LTQ2NzRiMzMxM2VmOCIsInV0aSI6Im9CLWZuanBRd0VPWlkwcVZjZDREQUEiLCJ2ZXIiOiIxLjAifQ.kpr5nGVvAnT7RTJTNYdWKB6EC8l1chOEm3rHLI8CwcEpVvvo2Nsm3NClH6BhdzAiO7H7ohk0EQ6KJBN7PswAoH919knw3VSTJfcWyJCHL10EcwatUuak5jzdQfvnanLrx2EuEwrvgjM3V6ztL51h0v-UsLb9ndkPkPZcU0WAc-THRn7dHAzasYPvb5uV58paouv-xCcxg72HzXpStOXFyN1lkP2N2FWVvF3OUmQ0UypqTqzaxMh4LsnC-okAIfi2a-NspKNujbXn7uWJ7diqaMUjkDDJVFMVHcHVTR8mo7eLM6M9vmjx9ViBGvLTxWpvMXYYoC7QaI7-GjmECaLnsQ"}' - headers: - cache-control: - - no-cache, no-store - content-length: - - '1365' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:53:57 GMT - expires: - - '-1' - p3p: - - CP="DSP CUR OTPi IND OTRi ONL FIN" - pragma: - - no-cache - set-cookie: - - fpc=ArRuX0Wv2_9OjbZPPfLm2QzYQwh6AQAAAGQVVNQOAAAA; expires=Sat, 25-May-2019 - 20:53:57 GMT; path=/; secure; HttpOnly - - stsservicecookie=estsppe; path=/; secure; HttpOnly - strict-transport-security: - - max-age=31536000; includeSubDomains - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Capacity/appliedReservations?api-version=2019-04-01 - response: - body: - string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.capacity/AppliedReservations/default","type":"Microsoft.Capacity/AppliedReservations","name":"default","properties":{"reservationOrderIds":{"value":["/providers/Microsoft.Capacity/reservationorders/11cc779e-a8f4-4ea9-880e-2e92b970d7cb","/providers/Microsoft.Capacity/reservationorders/0fd2bb5d-5aa5-4c20-8894-d725464e64f8","/providers/Microsoft.Capacity/reservationorders/8f3035d1-bfa2-4d81-a6cc-062b5cece09a","/providers/Microsoft.Capacity/reservationorders/be3573e4-3fed-4b85-8d0b-b153553b9696","/providers/Microsoft.Capacity/reservationorders/86d3f0ad-6cd2-4e3d-a855-eeb5a7a34e5b","/providers/Microsoft.Capacity/reservationorders/9ef186cf-d8cf-4bae-b085-ac632fb3109f","/providers/Microsoft.Capacity/reservationorders/3fca167c-0175-4cff-9ee5-b5ff7dabcb52","/providers/Microsoft.Capacity/reservationorders/0e78e23c-6f29-4db6-bb55-c751f6b7ac56","/providers/Microsoft.Capacity/reservationorders/fc5e889d-4dae-443c-b9a8-52c97fd77a4f","/providers/Microsoft.Capacity/reservationorders/4062cf27-decd-43aa-9673-d5a93263c24a","/providers/Microsoft.Capacity/reservationorders/a4ae747f-e61a-4cb4-8acb-837dad508d48","/providers/Microsoft.Capacity/reservationorders/a18c5eeb-8434-491b-b819-19726fc8899f","/providers/Microsoft.Capacity/reservationorders/cab8e53f-cc1e-4d3a-a5bc-e78517b14256","/providers/Microsoft.Capacity/reservationorders/47d6953a-1812-44d9-8c74-58b28750c394","/providers/Microsoft.Capacity/reservationorders/fc7bfd20-9152-4f42-bb4c-e319c21baad5","/providers/Microsoft.Capacity/reservationorders/4bfe0313-f0d3-4439-a53d-2c70aeada4c6","/providers/Microsoft.Capacity/reservationorders/95531fd1-9d7f-4067-ae88-fc7cfef91d13","/providers/Microsoft.Capacity/reservationorders/091ab380-5a50-46ce-ae26-916ac9578df9","/providers/Microsoft.Capacity/reservationorders/9388788b-3254-4349-9c35-b2b2effed515","/providers/Microsoft.Capacity/reservationorders/edc1ffb8-245c-4329-8c57-3fd2f655370d","/providers/Microsoft.Capacity/reservationorders/053e1cf2-f160-4e82-89d2-a872eee4de8d","/providers/Microsoft.Capacity/reservationorders/63d5e82b-6f10-4987-9be2-d743efd19444","/providers/Microsoft.Capacity/reservationorders/34771af7-7696-4c78-a99a-f3dacb604ce3","/providers/Microsoft.Capacity/reservationorders/a5d97f42-0bbd-446a-8424-1fc279f93103","/providers/Microsoft.Capacity/reservationorders/778da6ca-99fe-4b21-a5d6-1474f03311e1","/providers/Microsoft.Capacity/reservationorders/0832bb7f-6caa-4616-8fb7-c171cb930f1a","/providers/Microsoft.Capacity/reservationorders/6b6b02bd-1718-4368-9dc6-109ce30baf27","/providers/Microsoft.Capacity/reservationorders/61dfc0f8-f187-4d02-96ed-f645ce8eb617","/providers/Microsoft.Capacity/reservationorders/cef3cbc2-1ff1-4c4c-b6d5-3b687ea87a40","/providers/Microsoft.Capacity/reservationorders/b38ac868-be83-4d7d-8df6-a3321fac4e56","/providers/Microsoft.Capacity/reservationorders/92de10e2-a6b7-4056-ace2-ca126f242f12","/providers/Microsoft.Capacity/reservationorders/68ebd7d1-be83-4eaa-9f75-ad1f58d9a9df","/providers/Microsoft.Capacity/reservationorders/4b0a0f43-ea84-46f4-82a3-18c2b0e58f6a","/providers/Microsoft.Capacity/reservationorders/836ad341-6bf8-48ea-a30b-a9bcfa276f55","/providers/Microsoft.Capacity/reservationorders/88e38576-b823-41f6-b128-65ac8da980c2","/providers/Microsoft.Capacity/reservationorders/0452662c-0fb1-4f04-9d97-cdb8722ebe78","/providers/Microsoft.Capacity/reservationorders/491eb731-855e-4bfc-8795-223cc33e00bd","/providers/Microsoft.Capacity/reservationorders/bcc3b518-37f4-422d-8778-f3de9aed97e8","/providers/Microsoft.Capacity/reservationorders/89a0e60c-856c-4ce9-9570-d70e6f400816","/providers/Microsoft.Capacity/reservationorders/f3072c9f-d5b3-454c-8a66-2f343bb0b08d","/providers/Microsoft.Capacity/reservationorders/9d4fcbb1-038f-415a-ac2e-454fc85802a1","/providers/Microsoft.Capacity/reservationorders/6bf53dfa-76c0-451e-ac76-987748b2846d","/providers/Microsoft.Capacity/reservationorders/d69416f8-db72-452b-92f5-eb0624f5cb77","/providers/Microsoft.Capacity/reservationorders/87ea53cb-4bb4-4ad4-8d39-2d505a4d4f5b","/providers/Microsoft.Capacity/reservationorders/49ca2bb5-4e0e-496f-9413-e29d3c3b799a","/providers/Microsoft.Capacity/reservationorders/97d573df-62e7-43f2-b2ad-92b5b798fa76"]}}}' - headers: - cache-control: - - no-cache - content-length: - - '4233' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:53:59 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -version: 1 diff --git a/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_get_catalog.yaml b/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_get_catalog.yaml deleted file mode 100644 index b7a994ac5f46..000000000000 --- a/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_get_catalog.yaml +++ /dev/null @@ -1,278 +0,0 @@ -interactions: -- request: - body: grant_type=client_credentials&resource=https%3A%2F%2Fmanagement.core.windows.net%2F&response_type=client_credentials - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '116' - Content-Type: - - application/x-www-form-urlencoded;charset=UTF-8 - User-Agent: - - python-requests/2.21.0 - method: POST - uri: https://login.windows-ppe.net/3c662abc-ebe5-4a69-bf64-4674b3313ef8/oauth2/token - response: - body: - string: '{"token_type":"Bearer","expires_in":"3600","ext_expires_in":"3600","expires_on":"1556229206","not_before":"1556225306","resource":"https://management.core.windows.net/","access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Il9qRE5NaUprakNHaU5TSEsyOS1kN3ZKczVuUSIsImtpZCI6Il9qRE5NaUprakNHaU5TSEsyOS1kN3ZKczVuUSJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLXBwZS5uZXQvM2M2NjJhYmMtZWJlNS00YTY5LWJmNjQtNDY3NGIzMzEzZWY4LyIsImlhdCI6MTU1NjIyNTMwNiwibmJmIjoxNTU2MjI1MzA2LCJleHAiOjE1NTYyMjkyMDYsImFpbyI6IjQyTmdZUGlkMVhQOW9VWEdJbUhPMnp5OTgxN3pBd0E9IiwiYXBwaWQiOiI0YzBhMDVlNC00MDY0LTQ3ZmUtODc1Zi02YTk3MmY5MzJiNDQiLCJhcHBpZGFjciI6IjEiLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLXBwZS5uZXQvM2M2NjJhYmMtZWJlNS00YTY5LWJmNjQtNDY3NGIzMzEzZWY4LyIsIm9pZCI6IjI2M2JjYThhLTcyOTEtNGRlMy05ODFkLTQ1NWE1MjIzZjYxYyIsInN1YiI6IjI2M2JjYThhLTcyOTEtNGRlMy05ODFkLTQ1NWE1MjIzZjYxYyIsInRpZCI6IjNjNjYyYWJjLWViZTUtNGE2OS1iZjY0LTQ2NzRiMzMxM2VmOCIsInV0aSI6IlRwdUJzWTNxVFVhY1N5a3ZkZDREQUEiLCJ2ZXIiOiIxLjAifQ.lgMPv7S2XoZGl5AfgZwsSIePVQjPWsQFni_aWLd7OPziCpqgnc5J4KMjFGbUH1FJiBNon_bnNK37rGkS5GGy7-eiPDA2HFtM0KpzZ7sQrr9ZxGe4zdxoK1WP6_-gz5vFm8zW6zCvJj8gI-Wfy-E8kAt_jUClBPM4hisqgACfdfeXgH8DwgW9xmfgRNwSGsmAt8KK1aVH-Eq4-byQStvUEkLL7IW9KR23CrWhktGogiqIWzAt9GcXGFoi4CzcDeJ9fsKSqdV5FZaCNAGB0YT6phsmQNQgzTpRcZdH13nb0koauDHLynfPYkiWRcST-AlcjMFy6IjPsdtX8U5uw1ZhPw"}' - headers: - cache-control: - - no-cache, no-store - content-length: - - '1365' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:53:25 GMT - expires: - - '-1' - p3p: - - CP="DSP CUR OTPi IND OTRi ONL FIN" - pragma: - - no-cache - set-cookie: - - fpc=Amc16XdeRfFHl3u2T-uminXYQwh6AQAAAEUVVNQOAAAA; expires=Sat, 25-May-2019 - 20:53:26 GMT; path=/; secure; HttpOnly - - stsservicecookie=estsppe; path=/; secure; HttpOnly - strict-transport-security: - - max-age=31536000; includeSubDomains - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Capacity/catalogs?api-version=2019-04-01&reservedResourceType=VirtualMachines&location=westus - response: - body: - string: '[{"resourceType":"virtualMachines","name":"Standard_DS1","terms":["P1Y","P3Y"],"locations":["westus"],"skuProperties":[{"name":"Cores","value":"1"},{"name":"RAM","value":"3.5"},{"name":"ReservationsAutofitGroup","value":"DS - Series"},{"name":"ReservationSwappableArmSkuName","value":"Standard_D1"},{"name":"vCpu","value":"1"},{"name":"ProductShortName","value":"DS - Series"},{"name":"ProductTitle","value":"Virtual Machines DS Series"},{"name":"SkuName","value":"DS1"},{"name":"MeterId","value":"9a721778-24e6-40c4-a4e5-02014fd8f6ee"},{"name":"MeterType","value":"1 - Compute Hour"},{"name":"SkuDisplayName","value":"DS1"}],"restrictions":[]},{"resourceType":"virtualMachines","name":"Standard_D1","terms":["P1Y","P3Y"],"locations":["westus"],"skuProperties":[{"name":"Cores","value":"1"},{"name":"RAM","value":"3.5"},{"name":"ReservationsAutofitGroup","value":"D - Series"},{"name":"ReservationSwappableArmSkuName","value":"Standard_DS1"},{"name":"vCpu","value":"1"},{"name":"ProductShortName","value":"D - Series"},{"name":"ProductTitle","value":"Virtual Machines D Series"},{"name":"SkuName","value":"D1"},{"name":"MeterId","value":"9a721778-24e6-40c4-a4e5-02014fd8f6ee"},{"name":"MeterType","value":"1 - Compute Hour"},{"name":"SkuDisplayName","value":"D1"}],"restrictions":[]},{"resourceType":"virtualMachines","name":"Standard_F2","terms":["P1Y","P3Y"],"locations":["westus"],"skuProperties":[{"name":"Cores","value":"2"},{"name":"RAM","value":"4"},{"name":"ReservationsAutofitGroup","value":"F - Series"},{"name":"ReservationSwappableArmSkuName","value":"Standard_F2s"},{"name":"vCpu","value":"2"},{"name":"ProductShortName","value":"F - Series"},{"name":"ProductTitle","value":"Virtual Machines F Series"},{"name":"SkuName","value":"F2"},{"name":"MeterId","value":"efdb48e1-6e65-4d8a-ba65-f7b6a04d05ee"},{"name":"MeterType","value":"1 - Compute Hour"},{"name":"SkuDisplayName","value":"F2"}],"restrictions":[{"type":"Location","values":["westus"],"reasonCode":"NotAvailableForSubscription"}]}]' - headers: - cache-control: - - no-cache - content-length: - - '1985' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:53:27 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - x-ms-test: - - '{"contact":"juhle","scenarios":"test","retention":"7/24/2019 8:53:28 PM"}' - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Capacity/catalogs?api-version=2019-04-01&reservedResourceType=SqlDatabases&location=southeastasia - response: - body: - string: '[{"resourceType":"SQLManagedInstances","name":"SQLMI_BC_Compute_Gen5","terms":["P1Y","P3Y"],"locations":["southeastasia"],"skuProperties":[{"name":"ProductShortName","value":"SQL - DB Managed Instance Bus Cri-Compute G5"},{"name":"DeploymentType","value":"SQL - Database Managed Instance"},{"name":"ProductTitle","value":"SQL Database Managed - Instance Business Critical - Compute Gen5"},{"name":"SkuName","value":"vCore"},{"name":"MeterId","value":"59c9b9be-b21f-4650-9329-902307863fc7"},{"name":"MeterType","value":"1 - vCore Hour"},{"name":"SkuDisplayName","value":"vCore"}],"restrictions":[{"type":"Location","values":["southeastasia"],"reasonCode":"NotAvailableForSubscription"}]},{"resourceType":"SQLManagedInstances","name":"SQLMI_GP_Compute_Gen5","terms":["P1Y","P3Y"],"locations":["southeastasia"],"skuProperties":[{"name":"ProductShortName","value":"SQL - DB Managed Instance Gen Pur-Compute G5"},{"name":"DeploymentType","value":"SQL - Database Managed Instance"},{"name":"ProductTitle","value":"SQL Database Managed - Instance General Purpose - Compute Gen5"},{"name":"SkuName","value":"vCore"},{"name":"MeterId","value":"91c28f76-193c-4c90-87a1-580552578bb6"},{"name":"MeterType","value":"1 - vCore Hour"},{"name":"SkuDisplayName","value":"vCore"}],"restrictions":[]},{"resourceType":"SQLManagedInstances","name":"SQLMI_BC_Compute_Gen4","terms":["P1Y","P3Y"],"locations":["southeastasia"],"skuProperties":[{"name":"ProductShortName","value":"SQL - DB Managed Instance Bus Cri-Compute G4"},{"name":"DeploymentType","value":"SQL - Database Managed Instance"},{"name":"ProductTitle","value":"SQL Database Managed - Instance Business Critical - Compute Gen4"},{"name":"SkuName","value":"vCore"},{"name":"MeterId","value":"aecaed42-2a4c-422d-8b72-bf03e11b414a"},{"name":"MeterType","value":"1 - vCore Hour"},{"name":"SkuDisplayName","value":"vCore"}],"restrictions":[{"type":"Location","values":["southeastasia"],"reasonCode":"NotAvailableForSubscription"}]},{"resourceType":"SQLManagedInstances","name":"SQLMI_GP_Compute_Gen4","terms":["P1Y","P3Y"],"locations":["southeastasia"],"skuProperties":[{"name":"ProductShortName","value":"SQL - DB Managed Instance Gen Pur-Compute G4"},{"name":"DeploymentType","value":"SQL - Database Managed Instance"},{"name":"ProductTitle","value":"SQL Database Managed - Instance General Purpose - Compute Gen4"},{"name":"SkuName","value":"vCore"},{"name":"MeterId","value":"e1cae245-720b-436f-8f31-c92871bfe606"},{"name":"MeterType","value":"1 - vCore Hour"},{"name":"SkuDisplayName","value":"vCore"}],"restrictions":[]},{"resourceType":"SQLDatabases","name":"SQLDB_BC_Compute_Gen5","terms":["P1Y","P3Y"],"locations":["southeastasia"],"skuProperties":[{"name":"ProductShortName","value":"SQL - DB Single/Elastic Pool Bus Cri-Compute G5"},{"name":"DeploymentType","value":"SQL - Database Single/Elastic Pool"},{"name":"ProductTitle","value":"SQL Database - Single/Elastic Pool Business Critical - Compute Gen5"},{"name":"SkuName","value":"vCore"},{"name":"MeterId","value":"0f44f022-4c12-4b50-a576-840435f8e950"},{"name":"MeterType","value":"1 - vCore Hour"},{"name":"SkuDisplayName","value":"vCore"}],"restrictions":[]},{"resourceType":"SQLDatabases","name":"SQLDB_GP_Compute_Gen5","terms":["P1Y","P3Y"],"locations":["southeastasia"],"skuProperties":[{"name":"ProductShortName","value":"SQL - DB Single/Elastic Pool Gen Pur-Compute G5"},{"name":"DeploymentType","value":"SQL - Database Single/Elastic Pool"},{"name":"ProductTitle","value":"SQL Database - Single/Elastic Pool General Purpose - Compute Gen5"},{"name":"SkuName","value":"vCore"},{"name":"MeterId","value":"e2fd3ddc-6500-40ee-8ecb-5713ab3c8682"},{"name":"MeterType","value":"1 - vCore Hour"},{"name":"SkuDisplayName","value":"vCore"}],"restrictions":[]},{"resourceType":"SQLDatabases","name":"SQLDB_BC_Compute_Gen4","terms":["P1Y","P3Y"],"locations":["southeastasia"],"skuProperties":[{"name":"ProductShortName","value":"SQL - DB Single/Elastic Pool Bus Cri-Compute G4"},{"name":"DeploymentType","value":"SQL - Database Single/Elastic Pool"},{"name":"ProductTitle","value":"SQL Database - Single/Elastic Pool Business Critical - Compute Gen4"},{"name":"SkuName","value":"vCore"},{"name":"MeterId","value":"811eaaf4-5e57-423b-ba14-61cf1cd1b1a7"},{"name":"MeterType","value":"1 - vCore Hour"},{"name":"SkuDisplayName","value":"vCore"}],"restrictions":[]},{"resourceType":"SQLDatabases","name":"SQLDB_GP_Compute_Gen4","terms":["P1Y","P3Y"],"locations":["southeastasia"],"skuProperties":[{"name":"ProductShortName","value":"SQL - DB Single/Elastic Pool Gen Pur-Compute G4"},{"name":"DeploymentType","value":"SQL - Database Single/Elastic Pool"},{"name":"ProductTitle","value":"SQL Database - Single/Elastic Pool General Purpose - Compute Gen4"},{"name":"SkuName","value":"vCore"},{"name":"MeterId","value":"94e45a8d-23a0-4ac1-9720-f19c5411bda8"},{"name":"MeterType","value":"1 - vCore Hour"},{"name":"SkuDisplayName","value":"vCore"}],"restrictions":[]}]' - headers: - cache-control: - - no-cache - content-length: - - '4891' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:53:30 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - x-ms-test: - - '{"contact":"juhle","scenarios":"test","retention":"7/24/2019 8:53:29 PM"}' - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Capacity/catalogs?api-version=2019-04-01&reservedResourceType=SuseLinux - response: - body: - string: '[{"resourceType":"SuseLinux","name":"sles_hpc_standard_3-4_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server for HPC Std"},{"name":"ProductTitle","value":"SUSE Linux - Enterprise Server for HPC Standard"},{"name":"SkuName","value":"3-4 vCPU VM"},{"name":"MeterId","value":"4ed70d2d-e2bb-4dcd-b6fa-42da71861a1c"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"3-4 vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_hpc_priority_5plus_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server for HPC Priority"},{"name":"ProductTitle","value":"SUSE Linux - Enterprise Server for HPC Priority"},{"name":"SkuName","value":"5+ vCPU VM"},{"name":"MeterId","value":"4edcd5a5-8510-49a8-a9fc-c9721f501913"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"5+ vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_hpc_standard_5plus_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server for HPC Std"},{"name":"ProductTitle","value":"SUSE Linux - Enterprise Server for HPC Standard"},{"name":"SkuName","value":"5+ vCPU VM"},{"name":"MeterId","value":"907a85de-024f-4dd6-969c-347d47a1bdff"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"5+ vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_priority_1_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server Priority"},{"name":"ProductTitle","value":"SUSE Linux Enterprise - Server Priority"},{"name":"SkuName","value":"1 vCPU VM"},{"name":"MeterId","value":"dd75c4ed-be82-4c52-9e65-f63f0b544941"},{"name":"MeterType","value":"1 - 1-vCPU VM Support Hour"},{"name":"SkuDisplayName","value":"1 vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_sap_priority_5plus_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server for SAP Priority"},{"name":"ProductTitle","value":"SUSE Linux - Enterprise Server for SAP Priority"},{"name":"SkuName","value":"5+ vCPU VM"},{"name":"MeterId","value":"18ae79cd-dfce-48c9-897b-ebd3053c6058"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"5+ vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_standard_5plus_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server Std"},{"name":"ProductTitle","value":"SUSE Linux Enterprise - Server Standard"},{"name":"SkuName","value":"5+ vCPU VM"},{"name":"MeterId","value":"7b349b65-d906-42e5-833f-b2af38513468"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"5+ vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_standard_1-2_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server Std"},{"name":"ProductTitle","value":"SUSE Linux Enterprise - Server Standard"},{"name":"SkuName","value":"1-2 vCPU VM"},{"name":"MeterId","value":"4b2fecfc-b110-4312-8f9d-807db1cb79ae"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"1-2 vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_priority_8plus_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server Priority"},{"name":"ProductTitle","value":"SUSE Linux Enterprise - Server Priority"},{"name":"SkuName","value":"8+ vCPU VM"},{"name":"MeterId","value":"ac27e4d7-44b5-4fee-bc1a-78ac5b4abaf7"},{"name":"MeterType","value":"1 - 128-vCPU VM Support Hour"},{"name":"SkuDisplayName","value":"8+ vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_priority_2-4_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server Priority"},{"name":"ProductTitle","value":"SUSE Linux Enterprise - Server Priority"},{"name":"SkuName","value":"2-4 vCPU VM"},{"name":"MeterId","value":"60b3ae9d-e77a-46b2-9cdf-92fa87407969"},{"name":"MeterType","value":"1 - 4-vCPU VM Support Hour"},{"name":"SkuDisplayName","value":"2-4 vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_hpc_priority_1-2_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server for HPC Priority"},{"name":"ProductTitle","value":"SUSE Linux - Enterprise Server for HPC Priority"},{"name":"SkuName","value":"1-2 vCPU VM"},{"name":"MeterId","value":"e275a668-ce79-44e2-a659-f43443265e98"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"1-2 vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_hpc_priority_3-4_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server for HPC Priority"},{"name":"ProductTitle","value":"SUSE Linux - Enterprise Server for HPC Priority"},{"name":"SkuName","value":"3-4 vCPU VM"},{"name":"MeterId","value":"e531e1c0-09c9-4d83-b7d0-a2c6741faa22"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"3-4 vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_priority_6_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server Priority"},{"name":"ProductTitle","value":"SUSE Linux Enterprise - Server Priority"},{"name":"SkuName","value":"6 vCPU VM"},{"name":"MeterId","value":"e8862232-6131-4dbe-bde4-e2ae383afc6f"},{"name":"MeterType","value":"1 - 6-vCPU VM Support Hour"},{"name":"SkuDisplayName","value":"6 vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_sap_priority_3-4_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server for SAP Priority"},{"name":"ProductTitle","value":"SUSE Linux - Enterprise Server for SAP Priority"},{"name":"SkuName","value":"3-4 vCPU VM"},{"name":"MeterId","value":"847887de-68ce-4adc-8a33-7a3f4133312f"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"3-4 vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_hpc_standard_1-2_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server for HPC Std"},{"name":"ProductTitle","value":"SUSE Linux - Enterprise Server for HPC Standard"},{"name":"SkuName","value":"1-2 vCPU VM"},{"name":"MeterId","value":"8c94ad45-b93b-4772-aab1-ff92fcec6610"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"1-2 vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_sap_priority_1-2_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server for SAP Priority"},{"name":"ProductTitle","value":"SUSE Linux - Enterprise Server for SAP Priority"},{"name":"SkuName","value":"1-2 vCPU VM"},{"name":"MeterId","value":"497fe0b6-fa3c-4e3d-a66b-836097244142"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"1-2 vCPU VM"}],"restrictions":[]},{"resourceType":"SuseLinux","name":"sles_standard_3-4_vcpu_vm","terms":["P1Y","P3Y"],"skuProperties":[{"name":"ProductShortName","value":"SUSE - Linux Ent Server Std"},{"name":"ProductTitle","value":"SUSE Linux Enterprise - Server Standard"},{"name":"SkuName","value":"3-4 vCPU VM"},{"name":"MeterId","value":"0c3ebb4c-db7d-4125-b45a-0534764d4bda"},{"name":"MeterType","value":"1 - Support Hour"},{"name":"SkuDisplayName","value":"3-4 vCPU VM"}],"restrictions":[{"type":"Sku","reasonCode":"NotAvailableForSubscription"}]}]' - headers: - cache-control: - - no-cache - content-length: - - '7662' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:53:33 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - x-ms-test: - - '{"contact":"juhle","scenarios":"test","retention":"7/24/2019 8:53:33 PM"}' - status: - code: 200 - message: OK -version: 1 diff --git a/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_get_operation.yaml b/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_get_operation.yaml deleted file mode 100644 index c2c12d37912a..000000000000 --- a/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_get_operation.yaml +++ /dev/null @@ -1,150 +0,0 @@ -interactions: -- request: - body: grant_type=client_credentials&resource=https%3A%2F%2Fmanagement.core.windows.net%2F&response_type=client_credentials - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '116' - Content-Type: - - application/x-www-form-urlencoded;charset=UTF-8 - User-Agent: - - python-requests/2.21.0 - method: POST - uri: https://login.windows-ppe.net/3c662abc-ebe5-4a69-bf64-4674b3313ef8/oauth2/token - response: - body: - string: '{"token_type":"Bearer","expires_in":"3600","ext_expires_in":"3600","expires_on":"1556229258","not_before":"1556225358","resource":"https://management.core.windows.net/","access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Il9qRE5NaUprakNHaU5TSEsyOS1kN3ZKczVuUSIsImtpZCI6Il9qRE5NaUprakNHaU5TSEsyOS1kN3ZKczVuUSJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLXBwZS5uZXQvM2M2NjJhYmMtZWJlNS00YTY5LWJmNjQtNDY3NGIzMzEzZWY4LyIsImlhdCI6MTU1NjIyNTM1OCwibmJmIjoxNTU2MjI1MzU4LCJleHAiOjE1NTYyMjkyNTgsImFpbyI6IjQyTmdZT2hTUzlsMys2a056NVFiVFozcWQ2KytBZ0E9IiwiYXBwaWQiOiI0YzBhMDVlNC00MDY0LTQ3ZmUtODc1Zi02YTk3MmY5MzJiNDQiLCJhcHBpZGFjciI6IjEiLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLXBwZS5uZXQvM2M2NjJhYmMtZWJlNS00YTY5LWJmNjQtNDY3NGIzMzEzZWY4LyIsIm9pZCI6IjI2M2JjYThhLTcyOTEtNGRlMy05ODFkLTQ1NWE1MjIzZjYxYyIsInN1YiI6IjI2M2JjYThhLTcyOTEtNGRlMy05ODFkLTQ1NWE1MjIzZjYxYyIsInRpZCI6IjNjNjYyYWJjLWViZTUtNGE2OS1iZjY0LTQ2NzRiMzMxM2VmOCIsInV0aSI6InI1TzRKdFlfSGttRzFlTjY5UDREQUEiLCJ2ZXIiOiIxLjAifQ.ma11OtVgJK_txB96nogkjZBd1LJ1nPNX55x-Xhavd5GCKRtXMcBIajfZnR_2xR2zqSNvGR3HlVOrdBT9IjOqeuNuPKTN9oEDRpPnUz8ZnKxzY86mkLH90XV2tshswzHededU2hXFIQ_imhZiiHJTfB-q9m93FL2zB5Bz-PVIIVt6OboUI9A5OsxMkzxMVjcgu-oYaFA65ow-G1lO8-FMA_XiBZid6yP0UBjHXdKnXGbpwh8pG0BHCznJCUOewQyzNlDgh3r4lDOZk8WGVLKEcJHtRn3NS5mGUbJghH6Wfkn1R3rdNS1TfdNIMKQX4hQUOqfQ97jenLUg6yYEOtBJVw"}' - headers: - cache-control: - - no-cache, no-store - content-length: - - '1365' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:54:17 GMT - expires: - - '-1' - p3p: - - CP="DSP CUR OTPi IND OTRi ONL FIN" - pragma: - - no-cache - set-cookie: - - fpc=AvUvPOWdx9hBt4r8itcB50bYQwh6AQAAAHkVVNQOAAAA; expires=Sat, 25-May-2019 - 20:54:18 GMT; path=/; secure; HttpOnly - - stsservicecookie=estsppe; path=/; secure; HttpOnly - strict-transport-security: - - max-age=31536000; includeSubDomains - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/operations?api-version=2019-04-01 - response: - body: - string: '{"value":[{"name":"Microsoft.Capacity/appliedreservations/read","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Get Reservations","description":"Read - All Reservations"}},{"name":"Microsoft.Capacity/calculateprice/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Calculate Reservation Price","description":"Calculate - any Reservation Price"}},{"name":"Microsoft.Capacity/catalogs/read","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Read Reservation Catalog","description":"Read - catalog of Reservation"}},{"name":"Microsoft.Capacity/checkoffers/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Check Subscription Offers","description":"Check - any Subscription Offers"}},{"name":"Microsoft.Capacity/checkscopes/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Check Subscription","description":"Check - any Subscription"}},{"name":"Microsoft.Capacity/operations/read","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Read Operation","description":"Read - any Operation"}},{"name":"Microsoft.Capacity/reservationorders/availablescopes/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Find Available Scope","description":"Find - any Available Scope"}},{"name":"Microsoft.Capacity/validatereservationorder/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Validate Reservation","description":"Validate - any Reservation"}},{"name":"Microsoft.Capacity/reservationorders/read","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Get Reservations","description":"Read - All Reservations"}},{"name":"Microsoft.Capacity/reservationorders/write","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Create Reservations","description":"Create - any Reservation"}},{"name":"Microsoft.Capacity/reservationorders/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Update Reservations","description":"Update - any Reservation"}},{"name":"Microsoft.Capacity/reservationorders/delete","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Delete Reservations","description":"Delete - any Reservation"}},{"name":"Microsoft.Capacity/reservationorders/reservations/read","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Get Reservations","description":"Read - All Reservations"}},{"name":"Microsoft.Capacity/reservationorders/reservations/write","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Create Reservations","description":"Create - any Reservation"}},{"name":"Microsoft.Capacity/reservationorders/reservations/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Update Reservations","description":"Update - any Reservation"}},{"name":"Microsoft.Capacity/reservationorders/reservations/delete","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Delete Reservations","description":"Delete - any Reservation"}},{"name":"Microsoft.Capacity/reservationorders/reservations/revisions/read","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Get Reservations","description":"Read - All Reservations"}},{"name":"Microsoft.Capacity/register/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Registers the Capacity Resource - Provider.","description":"Registers the Capacity resource provider and enables - the creation of Capacity resources."}},{"name":"Microsoft.Capacity/commercialreservationorders/read","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Get Reservation Orders created - in any Tenant","description":"Get Reservation Orders created in any Tenant"}},{"name":"Microsoft.Capacity/tenants/register/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Register Tenant","description":"Register - any Tenant"}},{"name":"Microsoft.Capacity/reservationorders/return/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Return Reservation","description":"Return - any Reservation"}},{"name":"Microsoft.Capacity/reservationorders/swap/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Swap Reservation","description":"Swap - any Reservation"}},{"name":"Microsoft.Capacity/reservationorders/split/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Split Reservation","description":"Split - any Reservation"}},{"name":"Microsoft.Capacity/unregister/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Unregister Tenant","description":"Unregister - any Tenant"}},{"name":"Microsoft.Capacity/reservationorders/merge/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Merge Reservation","description":"Merge - any Reservation"}},{"name":"Microsoft.Capacity/reservationorders/calculaterefund/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Compute price for refund","description":"Computes - the refund amount and price of new purchase and returns policy Errors."}},{"name":"Microsoft.Capacity/calculateexchange/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Compute price for exchange","description":"Computes - the exchange amount and price of new purchase and returns policy Errors."}},{"name":"Microsoft.Capacity/exchange/action","display":{"provider":"Microsoft - Capacity","resource":"Reservations","operation":"Exchange Reservation","description":"Exchange - any Reservation"}}]}' - headers: - cache-control: - - no-cache - content-length: - - '5896' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:54:19 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -version: 1 diff --git a/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_reservation_operations.yaml b/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_reservation_operations.yaml deleted file mode 100644 index 2485f2a87753..000000000000 --- a/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_reservation_operations.yaml +++ /dev/null @@ -1,847 +0,0 @@ -interactions: -- request: - body: grant_type=client_credentials&resource=https%3A%2F%2Fmanagement.core.windows.net%2F&response_type=client_credentials - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '116' - Content-Type: - - application/x-www-form-urlencoded;charset=UTF-8 - User-Agent: - - python-requests/2.21.0 - method: POST - uri: https://login.windows-ppe.net/3c662abc-ebe5-4a69-bf64-4674b3313ef8/oauth2/token - response: - body: - string: '{"token_type":"Bearer","expires_in":"3600","ext_expires_in":"3600","expires_on":"1556228908","not_before":"1556225008","resource":"https://management.core.windows.net/","access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Il9qRE5NaUprakNHaU5TSEsyOS1kN3ZKczVuUSIsImtpZCI6Il9qRE5NaUprakNHaU5TSEsyOS1kN3ZKczVuUSJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLXBwZS5uZXQvM2M2NjJhYmMtZWJlNS00YTY5LWJmNjQtNDY3NGIzMzEzZWY4LyIsImlhdCI6MTU1NjIyNTAwOCwibmJmIjoxNTU2MjI1MDA4LCJleHAiOjE1NTYyMjg5MDgsImFpbyI6IjQyTmdZUGkyZE82dlY3dE81L056cWhZL1hzV2lDd0E9IiwiYXBwaWQiOiI0YzBhMDVlNC00MDY0LTQ3ZmUtODc1Zi02YTk3MmY5MzJiNDQiLCJhcHBpZGFjciI6IjEiLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLXBwZS5uZXQvM2M2NjJhYmMtZWJlNS00YTY5LWJmNjQtNDY3NGIzMzEzZWY4LyIsIm9pZCI6IjI2M2JjYThhLTcyOTEtNGRlMy05ODFkLTQ1NWE1MjIzZjYxYyIsInN1YiI6IjI2M2JjYThhLTcyOTEtNGRlMy05ODFkLTQ1NWE1MjIzZjYxYyIsInRpZCI6IjNjNjYyYWJjLWViZTUtNGE2OS1iZjY0LTQ2NzRiMzMxM2VmOCIsInV0aSI6IlNRNEd1c0VDYTA2ZWI2cXRTNmtEQUEiLCJ2ZXIiOiIxLjAifQ.YiadRrsBfXH8B9cVu-j_OMcQXB8LxRUUEtKqviWKmkYzm6uu7jV5JeQRDRoeGOkK6_4CLmclCHUDZUX-NaDxE5gCtHH2Q-ugVM6YuUrL9nIIffxTtMQnG-YEbkDY7fRRa9T4JmHXqSsH2jHuvX4IpUp2ZRyyvrVu7f0SeAw51PiYEYUfMi0jwH5ik19O93tHOZQiHvI8dHJfZLWF2e7rOrsJga5wLU82ERSH6EgBPfFONxnkMs8iJ4hqCW0HkncL-_GjtDNQEnc4mpmrSENMT_ldmMIorCYk6z8gH2TPwpDmcIBlX-2IQ01gFR2O96EFajJjmIQeQPhNe8K1PmSqFg"}' - headers: - cache-control: - - no-cache, no-store - content-length: - - '1365' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:48:27 GMT - expires: - - '-1' - p3p: - - CP="DSP CUR OTPi IND OTRi ONL FIN" - pragma: - - no-cache - set-cookie: - - fpc=AvPSp0KS6oFKrEGEBS8d15nYQwh6AQAAABoUVNQOAAAA; expires=Sat, 25-May-2019 - 20:48:28 GMT; path=/; secure; HttpOnly - - stsservicecookie=estsppe; path=/; secure; HttpOnly - strict-transport-security: - - max-age=31536000; includeSubDomains - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: 'b''b\''b\\\''b\\\\\\\''{"sku": {"name": "Standard_F1"}, "location": "eastus", - "properties": {"reservedResourceType": "VirtualMachines", "billingScopeId": - "/subscriptions/00000000-0000-0000-0000-000000000000", "term": "P1Y", "quantity": - 2, "displayName": "TestPythonPurchase", "appliedScopeType": "Single", "appliedScopes": - ["/subscriptions/00000000-0000-0000-0000-000000000000"], "reservedResourceProperties": - {"instanceFlexibility": "On"}}}\\\\\\\''\\\''\''''' - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '418' - Content-Type: - - application/json; charset=utf-8 - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: POST - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/calculatePrice?api-version=2019-04-01 - response: - body: - string: '{"properties":{"billingCurrencyTotal":{"currencyCode":"USD","amount":542.00},"reservationOrderId":"97d573df-62e7-43f2-b2ad-92b5b798fa76","skuTitle":"Reserved - VM Instance, Standard_F1, US East, 1 Year","skuDescription":"Standard_F1","pricingCurrencyTotal":{"currencyCode":"USD","amount":542.00}}}' - headers: - cache-control: - - no-cache - content-length: - - '295' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:48:33 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - x-ms-ratelimit-remaining-tenant-writes: - - '1198' - x-ms-test: - - '{"contact":"juhle","scenarios":"test","retention":"7/24/2019 8:48:29 PM"}' - status: - code: 200 - message: OK -- request: - body: 'b''b\''b\\\''b\\\\\\\''{"sku": {"name": "Standard_F1"}, "location": "eastus", - "properties": {"reservedResourceType": "VirtualMachines", "billingScopeId": - "/subscriptions/00000000-0000-0000-0000-000000000000", "term": "P1Y", "quantity": - 2, "displayName": "TestPythonPurchase", "appliedScopeType": "Single", "appliedScopes": - ["/subscriptions/00000000-0000-0000-0000-000000000000"], "reservedResourceProperties": - {"instanceFlexibility": "On"}}}\\\\\\\''\\\''\''''' - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '418' - Content-Type: - - application/json; charset=utf-8 - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: PUT - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76?api-version=2019-04-01 - response: - body: - string: '{"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76","type":"Microsoft.Capacity/reservationOrders","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76","etag":1,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T20:48:47.2494885Z","term":"P1Y","provisioningState":"Creating","reservations":[{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3","etag":1,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Creating","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:48:47.2494885Z","lastUpdatedDateTime":"2019-04-25T20:48:47.2494885Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}}],"originalQuantity":2}}' - headers: - cache-control: - - no-cache - content-length: - - '1155' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:48:50 GMT - expires: - - '-1' - location: - - https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76?api-version=2019-04-01 - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - x-content-type-options: - - nosniff - x-ms-ratelimit-remaining-tenant-writes: - - '1198' - x-ms-test: - - '{"contact":"juhle","scenarios":"test","retention":"7/24/2019 8:48:35 PM"}' - status: - code: 202 - message: Accepted -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76?api-version=2019-04-01 - response: - body: - string: '{"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76","type":"Microsoft.Capacity/reservationOrders","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76","etag":6,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T20:48:47.2494885Z","term":"P1Y","provisioningState":"PendingBilling","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"}],"originalQuantity":2}}' - headers: - cache-control: - - no-cache - content-length: - - '525' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:50:52 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76?api-version=2019-04-01 - response: - body: - string: '{"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76","type":"Microsoft.Capacity/reservationOrders","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76","etag":6,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T20:48:47.2494885Z","term":"P1Y","provisioningState":"PendingBilling","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"}],"originalQuantity":2}}' - headers: - cache-control: - - no-cache - content-length: - - '525' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:50:53 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3?api-version=2019-04-01 - response: - body: - string: '{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3","etag":6,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"PendingBilling","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:48:47.2494885Z","extendedStatusInfo":{"statusCode":"Pending","message":"Payment - processing is in progress."},"lastUpdatedDateTime":"2019-04-25T20:50:27.0512011Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}}' - headers: - cache-control: - - no-cache - content-length: - - '878' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:50:54 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: '{"properties": {"appliedScopeType": "Shared", "instanceFlexibility": "On"}}' - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '75' - Content-Type: - - application/json; charset=utf-8 - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: PATCH - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3?api-version=2019-04-01 - response: - body: - string: '{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3","etag":10,"location":"eastus","properties":{"appliedScopeType":"Shared","quantity":2,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:38.5611545Z","lastUpdatedDateTime":"2019-04-25T20:51:40.6145429Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}}' - headers: - cache-control: - - no-cache - content-length: - - '735' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:51:42 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - x-ms-ratelimit-remaining-tenant-writes: - - '1197' - x-ms-test: - - '{"contact":"juhle","scenarios":"test","retention":"7/24/2019 8:48:35 PM"}' - status: - code: 200 - message: OK -- request: - body: 'b''b\''b\\\''b\\\\\\\''{"properties": {"appliedScopeType": "Single", "appliedScopes": - ["/subscriptions/00000000-0000-0000-0000-000000000000"], "instanceFlexibility": - "On"}}\\\\\\\''\\\''\''''' - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '149' - Content-Type: - - application/json; charset=utf-8 - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: PATCH - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3?api-version=2019-04-01 - response: - body: - string: '{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3","etag":12,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:49.4057198Z","lastUpdatedDateTime":"2019-04-25T20:51:51.7651495Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}}' - headers: - cache-control: - - no-cache - content-length: - - '807' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:51:53 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - x-ms-ratelimit-remaining-tenant-writes: - - '1197' - x-ms-test: - - '{"contact":"juhle","scenarios":"test","retention":"7/24/2019 8:48:35 PM"}' - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations?api-version=2019-04-01 - response: - body: - string: '{"value":[{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3","etag":12,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:49.4057198Z","lastUpdatedDateTime":"2019-04-25T20:51:51.7651495Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","capabilities":"ApiReturnEnabled, - ApiExchangeEnabled"}}]}' - headers: - cache-control: - - no-cache - content-length: - - '873' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:51:53 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: '{"properties": {"quantities": [1, 1], "reservationId": "/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"}}' - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '193' - Content-Type: - - application/json; charset=utf-8 - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: POST - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/split?api-version=2019-04-01 - response: - body: - string: '[{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","etag":2,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/dad81733-be2b-433c-ae81-43c929d3d66a","etag":2,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3","etag":15,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","extendedStatusInfo":{"statusCode":"Split","message":"This - reservation was split and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitDestinations":["/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"]}}}]' - headers: - cache-control: - - no-cache - content-length: - - '3186' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:52:00 GMT - expires: - - '-1' - location: - - https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationorders/97d573df-62e7-43f2-b2ad-92b5b798fa76/split/operationresults/8844a041-62c4-4bf8-a73a-6ad336cdfea3_13?api-version=2019-04-01 - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - x-ms-ratelimit-remaining-tenant-writes: - - '1192' - x-ms-test: - - '{"contact":"juhle","scenarios":"test","retention":"7/24/2019 8:48:35 PM"}' - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationorders/97d573df-62e7-43f2-b2ad-92b5b798fa76/split/operationresults/8844a041-62c4-4bf8-a73a-6ad336cdfea3_13?api-version=2019-04-01 - response: - body: - string: '[{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","etag":2,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/dad81733-be2b-433c-ae81-43c929d3d66a","etag":2,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3","etag":15,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","extendedStatusInfo":{"statusCode":"Split","message":"This - reservation was split and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitDestinations":["/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"]}}}]' - headers: - cache-control: - - no-cache - content-length: - - '3186' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:52:11 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations?api-version=2019-04-01 - response: - body: - string: '{"value":[{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3","etag":15,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","extendedStatusInfo":{"statusCode":"Split","message":"This - reservation was split and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitDestinations":["/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"]}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","etag":2,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"},"capabilities":"ApiReturnEnabled, - ApiExchangeEnabled"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/dad81733-be2b-433c-ae81-43c929d3d66a","etag":2,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"},"capabilities":"ApiReturnEnabled, - ApiExchangeEnabled"}}]}' - headers: - cache-control: - - no-cache - content-length: - - '3304' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:52:13 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: '{"properties": {"sources": ["/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605", - "/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"]}}' - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '305' - Content-Type: - - application/json; charset=utf-8 - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: POST - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/merge?api-version=2019-04-01 - response: - body: - string: '[{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","etag":5,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:52:17.909617Z","extendedStatusInfo":{"statusCode":"Merged","message":"This - reservation was merged and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:52:17.909617Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"},"mergeProperties":{"mergeDestination":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/0342394c-111a-4dac-a997-2856219da871"}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/dad81733-be2b-433c-ae81-43c929d3d66a","etag":4,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:52:17.909617Z","extendedStatusInfo":{"statusCode":"Merged","message":"This - reservation was merged and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:52:17.909617Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"},"mergeProperties":{"mergeDestination":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/0342394c-111a-4dac-a997-2856219da871"}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/0342394c-111a-4dac-a997-2856219da871","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/0342394c-111a-4dac-a997-2856219da871","etag":2,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:52:17.909617Z","lastUpdatedDateTime":"2019-04-25T20:52:17.909617Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","mergeProperties":{"mergeSources":["/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"]}}}]' - headers: - cache-control: - - no-cache - content-length: - - '3641' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:52:18 GMT - expires: - - '-1' - location: - - https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationorders/97d573df-62e7-43f2-b2ad-92b5b798fa76/merge/operationresults/9b930aa0-2ae9-4fed-9d2c-ab63147ec605_3?api-version=2019-04-01 - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - x-ms-ratelimit-remaining-tenant-writes: - - '1191' - x-ms-test: - - '{"contact":"juhle","scenarios":"test","retention":"7/24/2019 8:48:35 PM"}' - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationorders/97d573df-62e7-43f2-b2ad-92b5b798fa76/merge/operationresults/9b930aa0-2ae9-4fed-9d2c-ab63147ec605_3?api-version=2019-04-01 - response: - body: - string: '[{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","etag":5,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:52:17.909617Z","extendedStatusInfo":{"statusCode":"Merged","message":"This - reservation was merged and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:52:17.909617Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"},"mergeProperties":{"mergeDestination":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/0342394c-111a-4dac-a997-2856219da871"}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/dad81733-be2b-433c-ae81-43c929d3d66a","etag":4,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:52:17.909617Z","extendedStatusInfo":{"statusCode":"Merged","message":"This - reservation was merged and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:52:17.909617Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"},"mergeProperties":{"mergeDestination":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/0342394c-111a-4dac-a997-2856219da871"}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/0342394c-111a-4dac-a997-2856219da871","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/0342394c-111a-4dac-a997-2856219da871","etag":2,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:52:17.909617Z","lastUpdatedDateTime":"2019-04-25T20:52:17.909617Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","mergeProperties":{"mergeSources":["/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"]}}}]' - headers: - cache-control: - - no-cache - content-length: - - '3641' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:52:30 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions?api-version=2019-04-01 - response: - body: - string: '{"value":[{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/15","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/15","etag":15,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","extendedStatusInfo":{"statusCode":"Split","message":"This - reservation was split and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitDestinations":["/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"]}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/14","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/14","etag":14,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Pending","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:49.4057198Z","extendedStatusInfo":{"statusCode":"Pending","message":"An - operation is in progress on your reservation. Please wait for operation to - complete before taking further action."},"lastUpdatedDateTime":"2019-04-25T20:51:57.440122Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitDestinations":["/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"]}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/13","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/13","etag":13,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Pending","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:49.4057198Z","extendedStatusInfo":{"statusCode":"Pending","message":"An - operation is in progress on your reservation. Please wait for operation to - complete before taking further action."},"lastUpdatedDateTime":"2019-04-25T20:51:57.1745009Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/12","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/12","etag":12,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:49.4057198Z","lastUpdatedDateTime":"2019-04-25T20:51:51.7651495Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/11","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/11","etag":11,"location":"eastus","properties":{"appliedScopeType":"Shared","quantity":2,"provisioningState":"Pending","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:38.5611545Z","extendedStatusInfo":{"statusCode":"Pending","message":"An - operation is in progress on your reservation. Please wait for operation to - complete before taking further action."},"lastUpdatedDateTime":"2019-04-25T20:51:48.68691Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/10","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/10","etag":10,"location":"eastus","properties":{"appliedScopeType":"Shared","quantity":2,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:38.5611545Z","lastUpdatedDateTime":"2019-04-25T20:51:40.6145429Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/9","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/9","etag":9,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Pending","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:19.4563041Z","extendedStatusInfo":{"statusCode":"Pending","message":"An - operation is in progress on your reservation. Please wait for operation to - complete before taking further action."},"lastUpdatedDateTime":"2019-04-25T20:51:38.3674953Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/8","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/8","etag":8,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:19.4563041Z","lastUpdatedDateTime":"2019-04-25T20:51:19.4563041Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/7","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/7","etag":7,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"ConfirmedBilling","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:48:47.2494885Z","extendedStatusInfo":{"statusCode":"Pending","message":"Your - payment has been successfully processed. We are finalizing your reservation."},"lastUpdatedDateTime":"2019-04-25T20:51:04.6347467Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/6","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/6","etag":6,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"PendingBilling","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:48:47.2494885Z","extendedStatusInfo":{"statusCode":"Pending","message":"Payment - processing is in progress."},"lastUpdatedDateTime":"2019-04-25T20:50:27.0512011Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/5","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/5","etag":5,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"ConfirmedCapacity","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:48:47.2494885Z","lastUpdatedDateTime":"2019-04-25T20:50:13.5100076Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/4","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/4","etag":4,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"PendingCapacity","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:48:47.2494885Z","extendedStatusInfo":{"statusCode":"Pending","message":"Reservation - of capacity is in progress."},"lastUpdatedDateTime":"2019-04-25T20:49:59.132808Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/3","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/3","etag":3,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Creating","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:48:47.2494885Z","lastUpdatedDateTime":"2019-04-25T20:49:43.2457913Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/2","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/2","etag":2,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Creating","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:48:47.2494885Z","lastUpdatedDateTime":"2019-04-25T20:49:00.1895407Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3/revisions/1","type":"Microsoft.Capacity/reservationOrders/reservations/revisions","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3/1","etag":1,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Creating","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:48:47.2494885Z","lastUpdatedDateTime":"2019-04-25T20:48:47.2494885Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year"}}]}' - headers: - cache-control: - - no-cache - content-length: - - '13975' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:52:30 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations?api-version=2019-04-01 - response: - body: - string: '{"value":[{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/8844a041-62c4-4bf8-a73a-6ad336cdfea3","etag":15,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:51:57.440122Z","extendedStatusInfo":{"statusCode":"Split","message":"This - reservation was split and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:51:59.8464045Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitDestinations":["/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"]}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","etag":5,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:52:17.909617Z","extendedStatusInfo":{"statusCode":"Merged","message":"This - reservation was merged and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:52:17.909617Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"},"mergeProperties":{"mergeDestination":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/0342394c-111a-4dac-a997-2856219da871"}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/dad81733-be2b-433c-ae81-43c929d3d66a","etag":4,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":1,"provisioningState":"Cancelled","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:52:17.909617Z","extendedStatusInfo":{"statusCode":"Merged","message":"This - reservation was merged and is no longer active."},"lastUpdatedDateTime":"2019-04-25T20:52:17.909617Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","splitProperties":{"splitSource":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"},"mergeProperties":{"mergeDestination":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/0342394c-111a-4dac-a997-2856219da871"}}},{"sku":{"name":"Standard_F1"},"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/0342394c-111a-4dac-a997-2856219da871","type":"Microsoft.Capacity/reservationOrders/reservations","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76/0342394c-111a-4dac-a997-2856219da871","etag":2,"location":"eastus","properties":{"appliedScopes":["/subscriptions/00000000-0000-0000-0000-000000000000"],"appliedScopeType":"Single","quantity":2,"provisioningState":"Succeeded","expiryDate":"2020-04-25","displayName":"TestPythonPurchase","effectiveDateTime":"2019-04-25T20:52:17.909617Z","lastUpdatedDateTime":"2019-04-25T20:52:17.909617Z","reservedResourceType":"VirtualMachines","instanceFlexibility":"On","skuDescription":"Reserved - VM Instance, Standard_F1, US East, 1 Year","mergeProperties":{"mergeSources":["/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605","/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"]},"capabilities":"ApiReturnEnabled, - ApiExchangeEnabled"}}]}' - headers: - cache-control: - - no-cache - content-length: - - '4936' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:52:32 GMT - expires: - - '-1' - pragma: - - no-cache - server: - - Microsoft-IIS/8.5 - strict-transport-security: - - max-age=31536000; includeSubDomains - transfer-encoding: - - chunked - vary: - - Accept-Encoding,Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -version: 1 diff --git a/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_reservation_order_list.yaml b/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_reservation_order_list.yaml deleted file mode 100644 index 86c71f1703ee..000000000000 --- a/sdk/reservations/azure-mgmt-reservations/tests/recordings/test_mgmt_reservations.test_reservation_order_list.yaml +++ /dev/null @@ -1,89 +0,0 @@ -interactions: -- request: - body: grant_type=client_credentials&resource=https%3A%2F%2Fmanagement.core.windows.net%2F&response_type=client_credentials - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '116' - Content-Type: - - application/x-www-form-urlencoded;charset=UTF-8 - User-Agent: - - python-requests/2.21.0 - method: POST - uri: https://login.windows-ppe.net/3c662abc-ebe5-4a69-bf64-4674b3313ef8/oauth2/token - response: - body: - string: '{"token_type":"Bearer","expires_in":"3600","ext_expires_in":"3600","expires_on":"1556229180","not_before":"1556225280","resource":"https://management.core.windows.net/","access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Il9qRE5NaUprakNHaU5TSEsyOS1kN3ZKczVuUSIsImtpZCI6Il9qRE5NaUprakNHaU5TSEsyOS1kN3ZKczVuUSJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLXBwZS5uZXQvM2M2NjJhYmMtZWJlNS00YTY5LWJmNjQtNDY3NGIzMzEzZWY4LyIsImlhdCI6MTU1NjIyNTI4MCwibmJmIjoxNTU2MjI1MjgwLCJleHAiOjE1NTYyMjkxODAsImFpbyI6IjQyTmdZRGdzKzFOaHk2ZHBJZDg0ZnJHYXNVOFVCZ0E9IiwiYXBwaWQiOiI0YzBhMDVlNC00MDY0LTQ3ZmUtODc1Zi02YTk3MmY5MzJiNDQiLCJhcHBpZGFjciI6IjEiLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLXBwZS5uZXQvM2M2NjJhYmMtZWJlNS00YTY5LWJmNjQtNDY3NGIzMzEzZWY4LyIsIm9pZCI6IjI2M2JjYThhLTcyOTEtNGRlMy05ODFkLTQ1NWE1MjIzZjYxYyIsInN1YiI6IjI2M2JjYThhLTcyOTEtNGRlMy05ODFkLTQ1NWE1MjIzZjYxYyIsInRpZCI6IjNjNjYyYWJjLWViZTUtNGE2OS1iZjY0LTQ2NzRiMzMxM2VmOCIsInV0aSI6ImNtRElHVGk4ZlVXRHNmVjJMTlVEQUEiLCJ2ZXIiOiIxLjAifQ.jORAVjhRyE7fPrMtOiuswV4CFLoVHAiL2vB6o-QiJntYPKihNlO58Jp2H1waJqu5wEgLDx3WbRvJ8TaraGz6BqzXPppxXBVXVJYQrxXTsp6J0-VhWMngsE5ZpY8OxtWts2dOuus_rfkJaYFCKiq0QFEUjQWfhjHp49ok7TR1JE_hfiWc3n7VtmFR_HRltuVq3yUJMoJcsMe5xr125S_SpQyZ-g1_OTXHYc2-RjNzf1nltVepiQR_8V6NZFHkTgBY5TeobDDc01hHQ_9wfxHKswXamh0kriVctHVbgZ3PZ2nG6xca7pFLtMXs1iO3JQ3azTvERSe6gKo0o_RveT0sHA"}' - headers: - cache-control: - - no-cache, no-store - content-length: - - '1365' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:52:59 GMT - expires: - - '-1' - p3p: - - CP="DSP CUR OTPi IND OTRi ONL FIN" - pragma: - - no-cache - set-cookie: - - fpc=Asy_FfT5r_lGmdv2Tb3yo-rYQwh6AQAAACsVVNQOAAAA; expires=Sat, 25-May-2019 - 20:53:00 GMT; path=/; secure; HttpOnly - - stsservicecookie=estsppe; path=/; secure; HttpOnly - strict-transport-security: - - max-age=31536000; includeSubDomains - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - application/json - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - python/3.7.2 (Windows-10-10.0.17763-SP0) msrest/0.6.6 msrest_azure/0.4.34 - azure-mgmt-reservations/0.3.2 Azure-SDK-For-Python - accept-language: - - en-US - method: GET - uri: https://api-dogfood.resources.windows-int.net/providers/Microsoft.Capacity/reservationOrders?api-version=2019-04-01 - response: - body: - string: '{"value":[{"id":"/providers/microsoft.capacity/reservationOrders/053e1cf2-f160-4e82-89d2-a872eee4de8d","type":"Microsoft.Capacity/reservationOrders","name":"053e1cf2-f160-4e82-89d2-a872eee4de8d","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-18T00:50:30.4459428Z","createdDateTime":"2019-04-18T00:53:06.1026071Z","expiryDate":"2020-04-18","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/053e1cf2-f160-4e82-89d2-a872eee4de8d/reservations/a4d29a07-6626-4761-987e-06d0d1fdf369"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/a5d97f42-0bbd-446a-8424-1fc279f93103","type":"Microsoft.Capacity/reservationOrders","name":"a5d97f42-0bbd-446a-8424-1fc279f93103","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-18T01:00:45.438892Z","createdDateTime":"2019-04-18T01:03:11.0227465Z","expiryDate":"2020-04-18","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/a5d97f42-0bbd-446a-8424-1fc279f93103/reservations/cd6391f3-a580-4c0e-811a-99832a7418e4"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/92de10e2-a6b7-4056-ace2-ca126f242f12","type":"Microsoft.Capacity/reservationOrders","name":"92de10e2-a6b7-4056-ace2-ca126f242f12","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-19T18:28:43.5874014Z","createdDateTime":"2019-04-19T18:31:14.4092806Z","expiryDate":"2020-04-19","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/92de10e2-a6b7-4056-ace2-ca126f242f12/reservations/60e8adfe-f39d-434a-8151-c8d7f0a0e900"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/6b6b02bd-1718-4368-9dc6-109ce30baf27","type":"Microsoft.Capacity/reservationOrders","name":"6b6b02bd-1718-4368-9dc6-109ce30baf27","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-18T21:21:01.7442939Z","createdDateTime":"2019-04-18T21:23:17.5339214Z","expiryDate":"2020-04-18","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/6b6b02bd-1718-4368-9dc6-109ce30baf27/reservations/c61287dc-3420-4e90-8b26-3e924897d175"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/88e38576-b823-41f6-b128-65ac8da980c2","type":"Microsoft.Capacity/reservationOrders","name":"88e38576-b823-41f6-b128-65ac8da980c2","etag":10,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-19T19:37:21.462408Z","createdDateTime":"2019-04-19T19:39:49.687958Z","expiryDate":"2020-04-19","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/88e38576-b823-41f6-b128-65ac8da980c2/reservations/57de4172-493a-4929-a44a-b399cefe4ff8"},{"id":"/providers/microsoft.capacity/reservationOrders/88e38576-b823-41f6-b128-65ac8da980c2/reservations/74834fec-88fc-4d99-8940-a72b60ae6d9a"},{"id":"/providers/microsoft.capacity/reservationOrders/88e38576-b823-41f6-b128-65ac8da980c2/reservations/7e1a102b-1326-4c9a-a783-e4a5c542c417"},{"id":"/providers/microsoft.capacity/reservationOrders/88e38576-b823-41f6-b128-65ac8da980c2/reservations/07db5089-675f-4a11-b50d-ff6e03bc936d"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/d69416f8-db72-452b-92f5-eb0624f5cb77","type":"Microsoft.Capacity/reservationOrders","name":"d69416f8-db72-452b-92f5-eb0624f5cb77","etag":8,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T20:28:16.427723Z","createdDateTime":"2019-04-25T20:30:27.9675301Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/d69416f8-db72-452b-92f5-eb0624f5cb77/reservations/6ae65850-fe6b-4a2c-b4b2-dc3148839397"}],"originalQuantity":2}},{"id":"/providers/microsoft.capacity/reservationOrders/778da6ca-99fe-4b21-a5d6-1474f03311e1","type":"Microsoft.Capacity/reservationOrders","name":"778da6ca-99fe-4b21-a5d6-1474f03311e1","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-18T01:03:38.9455587Z","createdDateTime":"2019-04-18T01:05:45.813349Z","expiryDate":"2020-04-18","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/778da6ca-99fe-4b21-a5d6-1474f03311e1/reservations/9eba4702-5af6-493d-b7b2-ad2744fed6f3"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/34771af7-7696-4c78-a99a-f3dacb604ce3","type":"Microsoft.Capacity/reservationOrders","name":"34771af7-7696-4c78-a99a-f3dacb604ce3","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-18T00:56:21.9465604Z","createdDateTime":"2019-04-18T00:58:23.7494896Z","expiryDate":"2020-04-18","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/34771af7-7696-4c78-a99a-f3dacb604ce3/reservations/e7b92e3d-b88f-49ed-b4dd-6605d30a1d41"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/bcc3b518-37f4-422d-8778-f3de9aed97e8","type":"Microsoft.Capacity/reservationOrders","name":"bcc3b518-37f4-422d-8778-f3de9aed97e8","etag":8,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T18:37:48.2345991Z","createdDateTime":"2019-04-25T18:40:20.2655231Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/bcc3b518-37f4-422d-8778-f3de9aed97e8/reservations/dd092c33-72fc-49f6-a529-adb28627c143"}],"originalQuantity":2}},{"id":"/providers/microsoft.capacity/reservationOrders/0832bb7f-6caa-4616-8fb7-c171cb930f1a","type":"Microsoft.Capacity/reservationOrders","name":"0832bb7f-6caa-4616-8fb7-c171cb930f1a","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-18T19:09:09.9212977Z","createdDateTime":"2019-04-18T19:11:53.7417564Z","expiryDate":"2020-04-18","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/0832bb7f-6caa-4616-8fb7-c171cb930f1a/reservations/6eebc301-b174-48f2-84c7-214ba0e7440b"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/4b0a0f43-ea84-46f4-82a3-18c2b0e58f6a","type":"Microsoft.Capacity/reservationOrders","name":"4b0a0f43-ea84-46f4-82a3-18c2b0e58f6a","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-19T19:24:36.5490847Z","createdDateTime":"2019-04-19T19:26:46.8824742Z","expiryDate":"2020-04-19","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/4b0a0f43-ea84-46f4-82a3-18c2b0e58f6a/reservations/e18d44a9-c613-4c48-a55f-7c92ddf20da4"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/0452662c-0fb1-4f04-9d97-cdb8722ebe78","type":"Microsoft.Capacity/reservationOrders","name":"0452662c-0fb1-4f04-9d97-cdb8722ebe78","etag":8,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T18:32:13.6773712Z","createdDateTime":"2019-04-25T18:34:39.6389345Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/0452662c-0fb1-4f04-9d97-cdb8722ebe78/reservations/a51bda86-4d75-4cc6-a580-b0ecf41772a9"}],"originalQuantity":2}},{"id":"/providers/microsoft.capacity/reservationOrders/63d5e82b-6f10-4987-9be2-d743efd19444","type":"Microsoft.Capacity/reservationOrders","name":"63d5e82b-6f10-4987-9be2-d743efd19444","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-18T00:54:00.0437825Z","createdDateTime":"2019-04-18T00:56:02.3417057Z","expiryDate":"2020-04-18","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/63d5e82b-6f10-4987-9be2-d743efd19444/reservations/b62a53da-22be-47b1-9bfc-17efa8c12669"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/61dfc0f8-f187-4d02-96ed-f645ce8eb617","type":"Microsoft.Capacity/reservationOrders","name":"61dfc0f8-f187-4d02-96ed-f645ce8eb617","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-19T18:20:10.6512778Z","createdDateTime":"2019-04-19T18:22:41.7688951Z","expiryDate":"2020-04-19","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/61dfc0f8-f187-4d02-96ed-f645ce8eb617/reservations/30281bd2-52e6-4ef8-8887-f54df5e84da2"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/b38ac868-be83-4d7d-8df6-a3321fac4e56","type":"Microsoft.Capacity/reservationOrders","name":"b38ac868-be83-4d7d-8df6-a3321fac4e56","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-19T18:16:34.7008299Z","createdDateTime":"2019-04-19T18:25:57.3682073Z","expiryDate":"2020-04-19","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/b38ac868-be83-4d7d-8df6-a3321fac4e56/reservations/1eb9647a-0c71-472d-b07b-eeb66cdc1201"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/836ad341-6bf8-48ea-a30b-a9bcfa276f55","type":"Microsoft.Capacity/reservationOrders","name":"836ad341-6bf8-48ea-a30b-a9bcfa276f55","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-19T19:30:11.7195625Z","createdDateTime":"2019-04-19T19:32:36.5570687Z","expiryDate":"2020-04-19","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/836ad341-6bf8-48ea-a30b-a9bcfa276f55/reservations/e48e625f-540c-4def-8439-3a8980118d31"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76","type":"Microsoft.Capacity/reservationOrders","name":"97d573df-62e7-43f2-b2ad-92b5b798fa76","etag":10,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T20:48:47.2494885Z","createdDateTime":"2019-04-25T20:51:19.4563041Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/8844a041-62c4-4bf8-a73a-6ad336cdfea3"},{"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/9b930aa0-2ae9-4fed-9d2c-ab63147ec605"},{"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/dad81733-be2b-433c-ae81-43c929d3d66a"},{"id":"/providers/microsoft.capacity/reservationOrders/97d573df-62e7-43f2-b2ad-92b5b798fa76/reservations/0342394c-111a-4dac-a997-2856219da871"}],"originalQuantity":2}},{"id":"/providers/microsoft.capacity/reservationOrders/68ebd7d1-be83-4eaa-9f75-ad1f58d9a9df","type":"Microsoft.Capacity/reservationOrders","name":"68ebd7d1-be83-4eaa-9f75-ad1f58d9a9df","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-19T19:04:26.7015614Z","createdDateTime":"2019-04-19T19:07:08.2215489Z","expiryDate":"2020-04-19","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/68ebd7d1-be83-4eaa-9f75-ad1f58d9a9df/reservations/1ef92c7d-ce7b-4349-8229-98c36bade21d"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/491eb731-855e-4bfc-8795-223cc33e00bd","type":"Microsoft.Capacity/reservationOrders","name":"491eb731-855e-4bfc-8795-223cc33e00bd","etag":8,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T18:35:02.0730181Z","createdDateTime":"2019-04-25T18:37:14.4936265Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/491eb731-855e-4bfc-8795-223cc33e00bd/reservations/0c049d90-c5ad-4208-97bf-cc531730f6fa"}],"originalQuantity":2}},{"id":"/providers/microsoft.capacity/reservationOrders/89a0e60c-856c-4ce9-9570-d70e6f400816","type":"Microsoft.Capacity/reservationOrders","name":"89a0e60c-856c-4ce9-9570-d70e6f400816","etag":8,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T18:39:38.0026837Z","createdDateTime":"2019-04-25T18:42:03.7397619Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/89a0e60c-856c-4ce9-9570-d70e6f400816/reservations/fe1fac36-121a-4c8e-ab04-30722fbe1a41"}],"originalQuantity":2}},{"id":"/providers/microsoft.capacity/reservationOrders/6bf53dfa-76c0-451e-ac76-987748b2846d","type":"Microsoft.Capacity/reservationOrders","name":"6bf53dfa-76c0-451e-ac76-987748b2846d","etag":8,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T20:21:43.2464347Z","createdDateTime":"2019-04-25T20:24:13.1739459Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/6bf53dfa-76c0-451e-ac76-987748b2846d/reservations/09ad7de6-a9d3-4579-a65a-ce7769a5dddd"}],"originalQuantity":2}},{"id":"/providers/microsoft.capacity/reservationOrders/cef3cbc2-1ff1-4c4c-b6d5-3b687ea87a40","type":"Microsoft.Capacity/reservationOrders","name":"cef3cbc2-1ff1-4c4c-b6d5-3b687ea87a40","etag":8,"properties":{"displayName":"TestPurchaseReservation","requestDateTime":"2019-04-19T18:23:30.4310798Z","createdDateTime":"2019-04-19T18:25:53.9574678Z","expiryDate":"2020-04-19","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/cef3cbc2-1ff1-4c4c-b6d5-3b687ea87a40/reservations/cd329cca-6851-4e35-8449-94d312210f93"}],"originalQuantity":3}},{"id":"/providers/microsoft.capacity/reservationOrders/9d4fcbb1-038f-415a-ac2e-454fc85802a1","type":"Microsoft.Capacity/reservationOrders","name":"9d4fcbb1-038f-415a-ac2e-454fc85802a1","etag":8,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T20:15:06.526912Z","createdDateTime":"2019-04-25T20:17:19.5268406Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/9d4fcbb1-038f-415a-ac2e-454fc85802a1/reservations/8f3e2fe6-7890-4b2a-a74e-0c03ebeb14f3"}],"originalQuantity":2}},{"id":"/providers/microsoft.capacity/reservationOrders/87ea53cb-4bb4-4ad4-8d39-2d505a4d4f5b","type":"Microsoft.Capacity/reservationOrders","name":"87ea53cb-4bb4-4ad4-8d39-2d505a4d4f5b","etag":8,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T20:38:41.4938171Z","createdDateTime":"2019-04-25T20:45:19.8276387Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/87ea53cb-4bb4-4ad4-8d39-2d505a4d4f5b/reservations/300db048-8adc-485b-b630-8c7164c6c776"}],"originalQuantity":2}},{"id":"/providers/microsoft.capacity/reservationOrders/49ca2bb5-4e0e-496f-9413-e29d3c3b799a","type":"Microsoft.Capacity/reservationOrders","name":"49ca2bb5-4e0e-496f-9413-e29d3c3b799a","etag":8,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T20:45:47.0845282Z","createdDateTime":"2019-04-25T20:47:59.978431Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/49ca2bb5-4e0e-496f-9413-e29d3c3b799a/reservations/c8ef1300-c230-404a-872d-ecb4ffe9d0c4"}],"originalQuantity":2}},{"id":"/providers/microsoft.capacity/reservationOrders/3fca167c-0175-4cff-9ee5-b5ff7dabcb52","type":"Microsoft.Capacity/reservationOrders","name":"3fca167c-0175-4cff-9ee5-b5ff7dabcb52","etag":8,"properties":{"displayName":"VM_Reservation_04-01-2019_11-16","requestDateTime":"2019-04-01T18:23:00.3840142Z","createdDateTime":"2019-04-01T18:25:35.2620284Z","expiryDate":"2020-04-01","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/3fca167c-0175-4cff-9ee5-b5ff7dabcb52/reservations/e2301823-30ac-4205-8bf5-5a849d787a01"}],"originalQuantity":1}},{"id":"/providers/microsoft.capacity/reservationOrders/f3072c9f-d5b3-454c-8a66-2f343bb0b08d","type":"Microsoft.Capacity/reservationOrders","name":"f3072c9f-d5b3-454c-8a66-2f343bb0b08d","etag":8,"properties":{"displayName":"TestPythonPurchase","requestDateTime":"2019-04-25T18:41:25.1101801Z","createdDateTime":"2019-04-25T18:43:53.6818047Z","expiryDate":"2020-04-25","term":"P1Y","provisioningState":"Succeeded","reservations":[{"id":"/providers/microsoft.capacity/reservationOrders/f3072c9f-d5b3-454c-8a66-2f343bb0b08d/reservations/bb93b79b-d09e-4e3a-8d11-13e62f56e26b"}],"originalQuantity":2}}]}' - headers: - cache-control: - - no-cache - content-length: - - '17050' - content-type: - - application/json; charset=utf-8 - date: - - Thu, 25 Apr 2019 20:53:02 GMT - expires: - - '-1' - pragma: - - no-cache - strict-transport-security: - - max-age=31536000; includeSubDomains - vary: - - Accept-Encoding - x-content-type-options: - - nosniff - status: - code: 200 - message: OK -version: 1