From d308368e6aef03a984d8151cb29493a118f70cd9 Mon Sep 17 00:00:00 2001 From: mccoyp Date: Mon, 30 Sep 2024 15:56:43 -0700 Subject: [PATCH] Revert "[Key Vault] Generate Admin code for 7.6-preview.1, add basic support (#35425)" This reverts commit a5b1671b4d67234664f7305ecfb10b79e5e3971f. --- .../CHANGELOG.md | 4 +- .../administration/_generated/_client.py | 8 +- .../_generated/_configuration.py | 6 +- .../_generated/_serialization.py | 31 +- .../administration/_generated/aio/_client.py | 10 +- .../_generated/aio/_configuration.py | 6 +- .../_generated/aio/operations/_operations.py | 570 +++------------- .../_generated/models/__init__.py | 4 - .../_generated/models/_enums.py | 2 +- .../_generated/models/_models.py | 157 ++--- .../_generated/operations/_operations.py | 639 +++--------------- .../administration/_internal/client_base.py | 3 +- .../azure/keyvault/administration/_version.py | 2 +- .../azure-keyvault-administration/setup.py | 2 +- .../tests/test_access_control.py | 4 +- .../tests/test_access_control_async.py | 8 +- 16 files changed, 257 insertions(+), 1199 deletions(-) diff --git a/sdk/keyvault/azure-keyvault-administration/CHANGELOG.md b/sdk/keyvault/azure-keyvault-administration/CHANGELOG.md index 5fbdb54852ae..c1bed3a8aeeb 100644 --- a/sdk/keyvault/azure-keyvault-administration/CHANGELOG.md +++ b/sdk/keyvault/azure-keyvault-administration/CHANGELOG.md @@ -1,9 +1,8 @@ # Release History -## 4.5.0b1 (Unreleased) +## 4.4.1 (Unreleased) ### Features Added -- Added support for service API version `7.6-preview.1` - Added support for Continuous Access Evaluation (CAE) ### Breaking Changes @@ -13,7 +12,6 @@ ([#34744](https://github.com/Azure/azure-sdk-for-python/issues/34744)) ### Other Changes -- Key Vault API version `7.6-preview.1` is now the default ## 4.4.0 (2024-02-22) diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_client.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_client.py index e23c17cb76ea..967c30cd54ae 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_client.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_client.py @@ -24,11 +24,11 @@ class KeyVaultClient(KeyVaultClientOperationsMixin): # pylint: disable=client-a Vault service. :ivar role_definitions: RoleDefinitionsOperations operations - :vartype role_definitions: azure.keyvault.v7_6_preview_1.operations.RoleDefinitionsOperations + :vartype role_definitions: azure.keyvault.v7_5.operations.RoleDefinitionsOperations :ivar role_assignments: RoleAssignmentsOperations operations - :vartype role_assignments: azure.keyvault.v7_6_preview_1.operations.RoleAssignmentsOperations - :keyword api_version: Api Version. Default value is "7.6-preview.1". Note that overriding this - default value may result in unsupported behavior. + :vartype role_assignments: azure.keyvault.v7_5.operations.RoleAssignmentsOperations + :keyword api_version: Api Version. Default value is "7.5". Note that overriding this default + value may result in unsupported behavior. :paramtype api_version: str :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_configuration.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_configuration.py index 57ca854de83c..c7b4428506e3 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_configuration.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_configuration.py @@ -19,13 +19,13 @@ class KeyVaultClientConfiguration: # pylint: disable=too-many-instance-attribut Note that all parameters used to create this instance are saved as instance attributes. - :keyword api_version: Api Version. Default value is "7.6-preview.1". Note that overriding this - default value may result in unsupported behavior. + :keyword api_version: Api Version. Default value is "7.5". Note that overriding this default + value may result in unsupported behavior. :paramtype api_version: str """ def __init__(self, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "7.6-preview.1") + api_version: str = kwargs.pop("api_version", "7.5") self.api_version = api_version kwargs.setdefault("sdk_moniker", "keyvault/{}".format(VERSION)) diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_serialization.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_serialization.py index 2f781d740827..baa661cb82d2 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_serialization.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/_serialization.py @@ -170,6 +170,13 @@ def deserialize_from_http_generics(cls, body_bytes: Optional[Union[AnyStr, IO]], return None +try: + basestring # type: ignore + unicode_str = unicode # type: ignore +except NameError: + basestring = str + unicode_str = str + _LOGGER = logging.getLogger(__name__) try: @@ -538,7 +545,7 @@ class Serializer(object): "multiple": lambda x, y: x % y != 0, } - def __init__(self, classes: Optional[Mapping[str, type]] = None): + def __init__(self, classes: Optional[Mapping[str, Type[ModelType]]] = None): self.serialize_type = { "iso-8601": Serializer.serialize_iso, "rfc-1123": Serializer.serialize_rfc, @@ -554,7 +561,7 @@ def __init__(self, classes: Optional[Mapping[str, type]] = None): "[]": self.serialize_iter, "{}": self.serialize_dict, } - self.dependencies: Dict[str, type] = dict(classes) if classes else {} + self.dependencies: Dict[str, Type[ModelType]] = dict(classes) if classes else {} self.key_transformer = full_restapi_key_transformer self.client_side_validation = True @@ -642,7 +649,7 @@ def _serialize(self, target_obj, data_type=None, **kwargs): else: # That's a basic type # Integrate namespace if necessary local_node = _create_xml_node(xml_name, xml_prefix, xml_ns) - local_node.text = str(new_attr) + local_node.text = unicode_str(new_attr) serialized.append(local_node) # type: ignore else: # JSON for k in reversed(keys): # type: ignore @@ -987,7 +994,7 @@ def serialize_object(self, attr, **kwargs): return self.serialize_basic(attr, self.basic_types[obj_type], **kwargs) if obj_type is _long_type: return self.serialize_long(attr) - if obj_type is str: + if obj_type is unicode_str: return self.serialize_unicode(attr) if obj_type is datetime.datetime: return self.serialize_iso(attr) @@ -1363,7 +1370,7 @@ class Deserializer(object): valid_date = re.compile(r"\d{4}[-]\d{2}[-]\d{2}T\d{2}:\d{2}:\d{2}" r"\.?\d*Z?[-+]?[\d{2}]?:?[\d{2}]?") - def __init__(self, classes: Optional[Mapping[str, type]] = None): + def __init__(self, classes: Optional[Mapping[str, Type[ModelType]]] = None): self.deserialize_type = { "iso-8601": Deserializer.deserialize_iso, "rfc-1123": Deserializer.deserialize_rfc, @@ -1383,7 +1390,7 @@ def __init__(self, classes: Optional[Mapping[str, type]] = None): "duration": (isodate.Duration, datetime.timedelta), "iso-8601": (datetime.datetime), } - self.dependencies: Dict[str, type] = dict(classes) if classes else {} + self.dependencies: Dict[str, Type[ModelType]] = dict(classes) if classes else {} self.key_extractors = [rest_key_extractor, xml_key_extractor] # Additional properties only works if the "rest_key_extractor" is used to # extract the keys. Making it to work whatever the key extractor is too much @@ -1436,7 +1443,7 @@ def _deserialize(self, target_obj, data): response, class_name = self._classify_target(target_obj, data) - if isinstance(response, str): + if isinstance(response, basestring): return self.deserialize_data(data, response) elif isinstance(response, type) and issubclass(response, Enum): return self.deserialize_enum(data, response) @@ -1507,14 +1514,14 @@ def _classify_target(self, target, data): if target is None: return None, None - if isinstance(target, str): + if isinstance(target, basestring): try: target = self.dependencies[target] except KeyError: return target, target try: - target = target._classify(data, self.dependencies) # type: ignore + target = target._classify(data, self.dependencies) except AttributeError: pass # Target is not a Model, no classify return target, target.__class__.__name__ # type: ignore @@ -1570,7 +1577,7 @@ def _unpack_content(raw_data, content_type=None): if hasattr(raw_data, "_content_consumed"): return RawDeserializer.deserialize_from_http_generics(raw_data.text, raw_data.headers) - if isinstance(raw_data, (str, bytes)) or hasattr(raw_data, "read"): + if isinstance(raw_data, (basestring, bytes)) or hasattr(raw_data, "read"): return RawDeserializer.deserialize_from_text(raw_data, content_type) # type: ignore return raw_data @@ -1692,7 +1699,7 @@ def deserialize_object(self, attr, **kwargs): if isinstance(attr, ET.Element): # Do no recurse on XML, just return the tree as-is return attr - if isinstance(attr, str): + if isinstance(attr, basestring): return self.deserialize_basic(attr, "str") obj_type = type(attr) if obj_type in self.basic_types: @@ -1749,7 +1756,7 @@ def deserialize_basic(self, attr, data_type): if data_type == "bool": if attr in [True, False, 1, 0]: return bool(attr) - elif isinstance(attr, str): + elif isinstance(attr, basestring): if attr.lower() in ["true", "1"]: return True elif attr.lower() in ["false", "0"]: diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/_client.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/_client.py index 5bea77bd47c7..f57b604341ab 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/_client.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/_client.py @@ -24,13 +24,11 @@ class KeyVaultClient(KeyVaultClientOperationsMixin): # pylint: disable=client-a Vault service. :ivar role_definitions: RoleDefinitionsOperations operations - :vartype role_definitions: - azure.keyvault.v7_6_preview_1.aio.operations.RoleDefinitionsOperations + :vartype role_definitions: azure.keyvault.v7_5.aio.operations.RoleDefinitionsOperations :ivar role_assignments: RoleAssignmentsOperations operations - :vartype role_assignments: - azure.keyvault.v7_6_preview_1.aio.operations.RoleAssignmentsOperations - :keyword api_version: Api Version. Default value is "7.6-preview.1". Note that overriding this - default value may result in unsupported behavior. + :vartype role_assignments: azure.keyvault.v7_5.aio.operations.RoleAssignmentsOperations + :keyword api_version: Api Version. Default value is "7.5". Note that overriding this default + value may result in unsupported behavior. :paramtype api_version: str :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/_configuration.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/_configuration.py index 6f792e0f6a30..8dd6125e8e1d 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/_configuration.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/_configuration.py @@ -19,13 +19,13 @@ class KeyVaultClientConfiguration: # pylint: disable=too-many-instance-attribut Note that all parameters used to create this instance are saved as instance attributes. - :keyword api_version: Api Version. Default value is "7.6-preview.1". Note that overriding this - default value may result in unsupported behavior. + :keyword api_version: Api Version. Default value is "7.5". Note that overriding this default + value may result in unsupported behavior. :paramtype api_version: str """ def __init__(self, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "7.6-preview.1") + api_version: str = kwargs.pop("api_version", "7.5") self.api_version = api_version kwargs.setdefault("sdk_moniker", "keyvault/{}".format(VERSION)) diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/operations/_operations.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/operations/_operations.py index e2810c793495..9d24fbf316e1 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/operations/_operations.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/aio/operations/_operations.py @@ -7,8 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload +from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload import urllib.parse from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -35,8 +34,6 @@ build_key_vault_full_restore_operation_request, build_key_vault_get_setting_request, build_key_vault_get_settings_request, - build_key_vault_pre_full_backup_request, - build_key_vault_pre_full_restore_operation_request, build_key_vault_restore_status_request, build_key_vault_selective_key_restore_operation_request, build_key_vault_update_setting_request, @@ -51,23 +48,18 @@ ) from .._vendor import KeyVaultClientMixinABC -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] class KeyVaultClientOperationsMixin(KeyVaultClientMixinABC): - async def _full_backup_initial( self, vault_base_url: str, azure_storage_blob_container_uri: Optional[Union[_models.SASTokenParameter, IO[bytes]]] = None, **kwargs: Any ) -> _models.FullBackupOperation: - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -148,13 +140,12 @@ async def begin_full_backup( :param azure_storage_blob_container_uri: Azure blob shared access signature token pointing to a valid Azure blob container where full backup needs to be stored. This token needs to be valid for at least next 24 hours from the time of making this call. Default value is None. - :type azure_storage_blob_container_uri: ~azure.keyvault.v7_6_preview_1.models.SASTokenParameter + :type azure_storage_blob_container_uri: ~azure.keyvault.v7_5.models.SASTokenParameter :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: An instance of AsyncLROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_5.models.FullBackupOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -179,8 +170,7 @@ async def begin_full_backup( Default value is "application/json". :paramtype content_type: str :return: An instance of AsyncLROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_5.models.FullBackupOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -199,11 +189,13 @@ async def begin_full_backup( valid Azure blob container where full backup needs to be stored. This token needs to be valid for at least next 24 hours from the time of making this call. Is either a SASTokenParameter type or a IO[bytes] type. Default value is None. - :type azure_storage_blob_container_uri: ~azure.keyvault.v7_6_preview_1.models.SASTokenParameter - or IO[bytes] + :type azure_storage_blob_container_uri: ~azure.keyvault.v7_5.models.SASTokenParameter or + IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: An instance of AsyncLROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_5.models.FullBackupOperation] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) @@ -268,211 +260,6 @@ def get_long_running_output(pipeline_response): self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - async def _pre_full_backup_initial( - self, - vault_base_url: str, - pre_backup_operation_parameters: Optional[Union[_models.PreBackupOperationParameters, IO[bytes]]] = None, - **kwargs: Any - ) -> _models.FullBackupOperation: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.FullBackupOperation] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(pre_backup_operation_parameters, (IOBase, bytes)): - _content = pre_backup_operation_parameters - else: - if pre_backup_operation_parameters is not None: - _json = self._serialize.body(pre_backup_operation_parameters, "PreBackupOperationParameters") - else: - _json = None - - _request = build_key_vault_pre_full_backup_request( - content_type=content_type, - api_version=self._config.api_version, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "vaultBaseUrl": self._serialize.url("vault_base_url", vault_base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # type: ignore # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - if _stream: - await response.read() # Load the body in memory and close the socket - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.KeyVaultError, pipeline_response) - raise HttpResponseError(response=response, model=error) - - response_headers = {} - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - - deserialized = self._deserialize("FullBackupOperation", pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_pre_full_backup( - self, - vault_base_url: str, - pre_backup_operation_parameters: Optional[_models.PreBackupOperationParameters] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.FullBackupOperation]: - """Pre-backup operation for checking whether the customer can perform a full backup operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_backup_operation_parameters: Optional parameters to validate prior to performing a - full backup operation. Default value is None. - :type pre_backup_operation_parameters: - ~azure.keyvault.v7_6_preview_1.models.PreBackupOperationParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_pre_full_backup( - self, - vault_base_url: str, - pre_backup_operation_parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.FullBackupOperation]: - """Pre-backup operation for checking whether the customer can perform a full backup operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_backup_operation_parameters: Optional parameters to validate prior to performing a - full backup operation. Default value is None. - :type pre_backup_operation_parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_pre_full_backup( - self, - vault_base_url: str, - pre_backup_operation_parameters: Optional[Union[_models.PreBackupOperationParameters, IO[bytes]]] = None, - **kwargs: Any - ) -> AsyncLROPoller[_models.FullBackupOperation]: - """Pre-backup operation for checking whether the customer can perform a full backup operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_backup_operation_parameters: Optional parameters to validate prior to performing a - full backup operation. Is either a PreBackupOperationParameters type or a IO[bytes] type. - Default value is None. - :type pre_backup_operation_parameters: - ~azure.keyvault.v7_6_preview_1.models.PreBackupOperationParameters or IO[bytes] - :return: An instance of AsyncLROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.FullBackupOperation] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._pre_full_backup_initial( - vault_base_url=vault_base_url, - pre_backup_operation_parameters=pre_backup_operation_parameters, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - response_headers = {} - response = pipeline_response.http_response - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - - deserialized = self._deserialize("FullBackupOperation", pipeline_response) - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized - - path_format_arguments = { - "vaultBaseUrl": self._serialize.url("vault_base_url", vault_base_url, "str", skip_quote=True), - } - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncLROBasePolling( - lro_delay, - lro_options={"final-state-via": "azure-async-operation"}, - path_format_arguments=path_format_arguments, - **kwargs - ), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.FullBackupOperation].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.FullBackupOperation]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - @distributed_trace_async async def full_backup_status(self, vault_base_url: str, job_id: str, **kwargs: Any) -> _models.FullBackupOperation: """Returns the status of full backup operation. @@ -482,10 +269,10 @@ async def full_backup_status(self, vault_base_url: str, job_id: str, **kwargs: A :param job_id: The id returned as part of the backup request. Required. :type job_id: str :return: FullBackupOperation - :rtype: ~azure.keyvault.v7_6_preview_1.models.FullBackupOperation + :rtype: ~azure.keyvault.v7_5.models.FullBackupOperation :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -530,218 +317,13 @@ async def full_backup_status(self, vault_base_url: str, job_id: str, **kwargs: A return deserialized # type: ignore - async def _pre_full_restore_operation_initial( - self, - vault_base_url: str, - pre_restore_operation_parameters: Optional[Union[_models.PreRestoreOperationParameters, IO[bytes]]] = None, - **kwargs: Any - ) -> _models.RestoreOperation: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.RestoreOperation] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(pre_restore_operation_parameters, (IOBase, bytes)): - _content = pre_restore_operation_parameters - else: - if pre_restore_operation_parameters is not None: - _json = self._serialize.body(pre_restore_operation_parameters, "PreRestoreOperationParameters") - else: - _json = None - - _request = build_key_vault_pre_full_restore_operation_request( - content_type=content_type, - api_version=self._config.api_version, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "vaultBaseUrl": self._serialize.url("vault_base_url", vault_base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # type: ignore # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - if _stream: - await response.read() # Load the body in memory and close the socket - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.KeyVaultError, pipeline_response) - raise HttpResponseError(response=response, model=error) - - response_headers = {} - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - - deserialized = self._deserialize("RestoreOperation", pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_pre_full_restore_operation( - self, - vault_base_url: str, - pre_restore_operation_parameters: Optional[_models.PreRestoreOperationParameters] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.RestoreOperation]: - """Pre-restore operation for checking whether the customer can perform a full restore operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_restore_operation_parameters: Optional pre restore parameters to validate prior to - performing a full restore operation. Default value is None. - :type pre_restore_operation_parameters: - ~azure.keyvault.v7_6_preview_1.models.PreRestoreOperationParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns RestoreOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_pre_full_restore_operation( - self, - vault_base_url: str, - pre_restore_operation_parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.RestoreOperation]: - """Pre-restore operation for checking whether the customer can perform a full restore operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_restore_operation_parameters: Optional pre restore parameters to validate prior to - performing a full restore operation. Default value is None. - :type pre_restore_operation_parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns RestoreOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_pre_full_restore_operation( - self, - vault_base_url: str, - pre_restore_operation_parameters: Optional[Union[_models.PreRestoreOperationParameters, IO[bytes]]] = None, - **kwargs: Any - ) -> AsyncLROPoller[_models.RestoreOperation]: - """Pre-restore operation for checking whether the customer can perform a full restore operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_restore_operation_parameters: Optional pre restore parameters to validate prior to - performing a full restore operation. Is either a PreRestoreOperationParameters type or a - IO[bytes] type. Default value is None. - :type pre_restore_operation_parameters: - ~azure.keyvault.v7_6_preview_1.models.PreRestoreOperationParameters or IO[bytes] - :return: An instance of AsyncLROPoller that returns RestoreOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.RestoreOperation] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._pre_full_restore_operation_initial( - vault_base_url=vault_base_url, - pre_restore_operation_parameters=pre_restore_operation_parameters, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - response_headers = {} - response = pipeline_response.http_response - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - - deserialized = self._deserialize("RestoreOperation", pipeline_response) - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized - - path_format_arguments = { - "vaultBaseUrl": self._serialize.url("vault_base_url", vault_base_url, "str", skip_quote=True), - } - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncLROBasePolling( - lro_delay, - lro_options={"final-state-via": "azure-async-operation"}, - path_format_arguments=path_format_arguments, - **kwargs - ), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.RestoreOperation].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.RestoreOperation]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - async def _full_restore_operation_initial( self, vault_base_url: str, restore_blob_details: Optional[Union[_models.RestoreOperationParameters, IO[bytes]]] = None, **kwargs: Any ) -> _models.RestoreOperation: - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -822,13 +404,12 @@ async def begin_full_restore_operation( :type vault_base_url: str :param restore_blob_details: The Azure blob SAS token pointing to a folder where the previous successful full backup was stored. Default value is None. - :type restore_blob_details: ~azure.keyvault.v7_6_preview_1.models.RestoreOperationParameters + :type restore_blob_details: ~azure.keyvault.v7_5.models.RestoreOperationParameters :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: An instance of AsyncLROPoller that returns RestoreOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_5.models.RestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -853,8 +434,7 @@ async def begin_full_restore_operation( Default value is "application/json". :paramtype content_type: str :return: An instance of AsyncLROPoller that returns RestoreOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_5.models.RestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -873,11 +453,12 @@ async def begin_full_restore_operation( :param restore_blob_details: The Azure blob SAS token pointing to a folder where the previous successful full backup was stored. Is either a RestoreOperationParameters type or a IO[bytes] type. Default value is None. - :type restore_blob_details: ~azure.keyvault.v7_6_preview_1.models.RestoreOperationParameters or - IO[bytes] + :type restore_blob_details: ~azure.keyvault.v7_5.models.RestoreOperationParameters or IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: An instance of AsyncLROPoller that returns RestoreOperation - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_5.models.RestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) @@ -951,10 +532,10 @@ async def restore_status(self, vault_base_url: str, job_id: str, **kwargs: Any) :param job_id: The Job Id returned part of the restore operation. Required. :type job_id: str :return: RestoreOperation - :rtype: ~azure.keyvault.v7_6_preview_1.models.RestoreOperation + :rtype: ~azure.keyvault.v7_5.models.RestoreOperation :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1006,7 +587,7 @@ async def _selective_key_restore_operation_initial( restore_blob_details: Optional[Union[_models.SelectiveKeyRestoreOperationParameters, IO[bytes]]] = None, **kwargs: Any ) -> _models.SelectiveKeyRestoreOperation: - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1091,14 +672,13 @@ async def begin_selective_key_restore_operation( :type key_name: str :param restore_blob_details: The Azure blob SAS token pointing to a folder where the previous successful full backup was stored. Default value is None. - :type restore_blob_details: - ~azure.keyvault.v7_6_preview_1.models.SelectiveKeyRestoreOperationParameters + :type restore_blob_details: ~azure.keyvault.v7_5.models.SelectiveKeyRestoreOperationParameters :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: An instance of AsyncLROPoller that returns SelectiveKeyRestoreOperation :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.SelectiveKeyRestoreOperation] + ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_5.models.SelectiveKeyRestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1127,7 +707,7 @@ async def begin_selective_key_restore_operation( :paramtype content_type: str :return: An instance of AsyncLROPoller that returns SelectiveKeyRestoreOperation :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.SelectiveKeyRestoreOperation] + ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_5.models.SelectiveKeyRestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1149,11 +729,14 @@ async def begin_selective_key_restore_operation( :param restore_blob_details: The Azure blob SAS token pointing to a folder where the previous successful full backup was stored. Is either a SelectiveKeyRestoreOperationParameters type or a IO[bytes] type. Default value is None. - :type restore_blob_details: - ~azure.keyvault.v7_6_preview_1.models.SelectiveKeyRestoreOperationParameters or IO[bytes] + :type restore_blob_details: ~azure.keyvault.v7_5.models.SelectiveKeyRestoreOperationParameters + or IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: An instance of AsyncLROPoller that returns SelectiveKeyRestoreOperation :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_6_preview_1.models.SelectiveKeyRestoreOperation] + ~azure.core.polling.AsyncLROPoller[~azure.keyvault.v7_5.models.SelectiveKeyRestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) @@ -1240,12 +823,12 @@ async def update_setting( Required. :type setting_name: str :param parameters: The parameters to update an account setting. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.UpdateSettingRequest + :type parameters: ~azure.keyvault.v7_5.models.UpdateSettingRequest :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: Setting - :rtype: ~azure.keyvault.v7_6_preview_1.models.Setting + :rtype: ~azure.keyvault.v7_5.models.Setting :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1275,7 +858,7 @@ async def update_setting( Default value is "application/json". :paramtype content_type: str :return: Setting - :rtype: ~azure.keyvault.v7_6_preview_1.models.Setting + :rtype: ~azure.keyvault.v7_5.models.Setting :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1299,12 +882,15 @@ async def update_setting( :type setting_name: str :param parameters: The parameters to update an account setting. Is either a UpdateSettingRequest type or a IO[bytes] type. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.UpdateSettingRequest or IO[bytes] + :type parameters: ~azure.keyvault.v7_5.models.UpdateSettingRequest or IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: Setting - :rtype: ~azure.keyvault.v7_6_preview_1.models.Setting + :rtype: ~azure.keyvault.v7_5.models.Setting :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1373,10 +959,10 @@ async def get_setting(self, vault_base_url: str, setting_name: str, **kwargs: An Required. :type setting_name: str :return: Setting - :rtype: ~azure.keyvault.v7_6_preview_1.models.Setting + :rtype: ~azure.keyvault.v7_5.models.Setting :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1430,10 +1016,10 @@ async def get_settings(self, vault_base_url: str, **kwargs: Any) -> _models.Sett :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. :type vault_base_url: str :return: SettingsListResult - :rtype: ~azure.keyvault.v7_6_preview_1.models.SettingsListResult + :rtype: ~azure.keyvault.v7_5.models.SettingsListResult :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1484,7 +1070,7 @@ class RoleDefinitionsOperations: **DO NOT** instantiate this class directly. Instead, you should access the following operations through - :class:`~azure.keyvault.v7_6_preview_1.aio.KeyVaultClient`'s + :class:`~azure.keyvault.v7_5.aio.KeyVaultClient`'s :attr:`role_definitions` attribute. """ @@ -1511,10 +1097,10 @@ async def delete( :param role_definition_name: The name (GUID) of the role definition to delete. Required. :type role_definition_name: str :return: RoleDefinition - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleDefinition + :rtype: ~azure.keyvault.v7_5.models.RoleDefinition :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1582,12 +1168,12 @@ async def create_or_update( valid GUID. Required. :type role_definition_name: str :param parameters: Parameters for the role definition. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.RoleDefinitionCreateParameters + :type parameters: ~azure.keyvault.v7_5.models.RoleDefinitionCreateParameters :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: RoleDefinition - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleDefinition + :rtype: ~azure.keyvault.v7_5.models.RoleDefinition :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1618,7 +1204,7 @@ async def create_or_update( Default value is "application/json". :paramtype content_type: str :return: RoleDefinition - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleDefinition + :rtype: ~azure.keyvault.v7_5.models.RoleDefinition :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1643,13 +1229,15 @@ async def create_or_update( :type role_definition_name: str :param parameters: Parameters for the role definition. Is either a RoleDefinitionCreateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.RoleDefinitionCreateParameters or - IO[bytes] + :type parameters: ~azure.keyvault.v7_5.models.RoleDefinitionCreateParameters or IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: RoleDefinition - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleDefinition + :rtype: ~azure.keyvault.v7_5.models.RoleDefinition :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1720,10 +1308,10 @@ async def get( :param role_definition_name: The name of the role definition to get. Required. :type role_definition_name: str :return: RoleDefinition - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleDefinition + :rtype: ~azure.keyvault.v7_5.models.RoleDefinition :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1783,8 +1371,7 @@ def list( below the given scope as well. Default value is None. :paramtype filter: str :return: An iterator like instance of RoleDefinition - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.keyvault.v7_6_preview_1.models.RoleDefinition] + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.keyvault.v7_5.models.RoleDefinition] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} @@ -1794,7 +1381,7 @@ def list( "cls", None ) - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1873,7 +1460,7 @@ class RoleAssignmentsOperations: **DO NOT** instantiate this class directly. Instead, you should access the following operations through - :class:`~azure.keyvault.v7_6_preview_1.aio.KeyVaultClient`'s + :class:`~azure.keyvault.v7_5.aio.KeyVaultClient`'s :attr:`role_assignments` attribute. """ @@ -1899,10 +1486,10 @@ async def delete( :param role_assignment_name: The name of the role assignment to delete. Required. :type role_assignment_name: str :return: RoleAssignment - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleAssignment + :rtype: ~azure.keyvault.v7_5.models.RoleAssignment :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1969,12 +1556,12 @@ async def create( GUID. Required. :type role_assignment_name: str :param parameters: Parameters for the role assignment. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.RoleAssignmentCreateParameters + :type parameters: ~azure.keyvault.v7_5.models.RoleAssignmentCreateParameters :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: RoleAssignment - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleAssignment + :rtype: ~azure.keyvault.v7_5.models.RoleAssignment :raises ~azure.core.exceptions.HttpResponseError: """ @@ -2004,7 +1591,7 @@ async def create( Default value is "application/json". :paramtype content_type: str :return: RoleAssignment - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleAssignment + :rtype: ~azure.keyvault.v7_5.models.RoleAssignment :raises ~azure.core.exceptions.HttpResponseError: """ @@ -2028,13 +1615,15 @@ async def create( :type role_assignment_name: str :param parameters: Parameters for the role assignment. Is either a RoleAssignmentCreateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.RoleAssignmentCreateParameters or - IO[bytes] + :type parameters: ~azure.keyvault.v7_5.models.RoleAssignmentCreateParameters or IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: RoleAssignment - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleAssignment + :rtype: ~azure.keyvault.v7_5.models.RoleAssignment :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -2105,10 +1694,10 @@ async def get( :param role_assignment_name: The name of the role assignment to get. Required. :type role_assignment_name: str :return: RoleAssignment - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleAssignment + :rtype: ~azure.keyvault.v7_5.models.RoleAssignment :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -2169,8 +1758,7 @@ def list_for_scope( assignments at, above or below the scope for the specified principal. Default value is None. :paramtype filter: str :return: An iterator like instance of RoleAssignment - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.keyvault.v7_6_preview_1.models.RoleAssignment] + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.keyvault.v7_5.models.RoleAssignment] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} @@ -2180,7 +1768,7 @@ def list_for_scope( "cls", None ) - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/__init__.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/__init__.py index 01fb1e2325eb..de229e347c31 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/__init__.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/__init__.py @@ -11,8 +11,6 @@ from ._models import FullBackupOperation from ._models import KeyVaultError from ._models import Permission -from ._models import PreBackupOperationParameters -from ._models import PreRestoreOperationParameters from ._models import RestoreOperation from ._models import RestoreOperationParameters from ._models import RoleAssignment @@ -46,8 +44,6 @@ "FullBackupOperation", "KeyVaultError", "Permission", - "PreBackupOperationParameters", - "PreRestoreOperationParameters", "RestoreOperation", "RestoreOperationParameters", "RoleAssignment", diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/_enums.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/_enums.py index 31de400d0b72..5c976b985919 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/_enums.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/_enums.py @@ -92,7 +92,7 @@ class RoleDefinitionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): class RoleScope(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The role scope.""" - GLOBAL_ENUM = "/" + GLOBAL = "/" """Global scope""" KEYS = "/keys" """Keys scope""" diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/_models.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/_models.py index 914998edb01f..1945baf797ad 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/_models.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/models/_models.py @@ -81,7 +81,7 @@ class Error(_serialization.Model): :ivar message: The error message. :vartype message: str :ivar inner_error: The key vault server error. - :vartype inner_error: ~azure.keyvault.v7_6_preview_1.models.Error + :vartype inner_error: ~azure.keyvault.v7_5.models.Error """ _validation = { @@ -112,7 +112,7 @@ class FullBackupOperation(_serialization.Model): :ivar status_details: The status details of backup operation. :vartype status_details: str :ivar error: Error encountered, if any, during the full backup operation. - :vartype error: ~azure.keyvault.v7_6_preview_1.models.Error + :vartype error: ~azure.keyvault.v7_5.models.Error :ivar start_time: The start time of the backup operation in UTC. :vartype start_time: ~datetime.datetime :ivar end_time: The end time of the backup operation in UTC. @@ -152,7 +152,7 @@ def __init__( :keyword status_details: The status details of backup operation. :paramtype status_details: str :keyword error: Error encountered, if any, during the full backup operation. - :paramtype error: ~azure.keyvault.v7_6_preview_1.models.Error + :paramtype error: ~azure.keyvault.v7_5.models.Error :keyword start_time: The start time of the backup operation in UTC. :paramtype start_time: ~datetime.datetime :keyword end_time: The end time of the backup operation in UTC. @@ -179,7 +179,7 @@ class KeyVaultError(_serialization.Model): Variables are only populated by the server, and will be ignored when sending a request. :ivar error: The key vault server error. - :vartype error: ~azure.keyvault.v7_6_preview_1.models.Error + :vartype error: ~azure.keyvault.v7_5.models.Error """ _validation = { @@ -205,10 +205,10 @@ class Permission(_serialization.Model): other role definitions assigned to a principal. :vartype not_actions: list[str] :ivar data_actions: Data action permissions that are granted. - :vartype data_actions: list[str or ~azure.keyvault.v7_6_preview_1.models.DataAction] + :vartype data_actions: list[str or ~azure.keyvault.v7_5.models.DataAction] :ivar not_data_actions: Data action permissions that are excluded but not denied. They may be granted by other role definitions assigned to a principal. - :vartype not_data_actions: list[str or ~azure.keyvault.v7_6_preview_1.models.DataAction] + :vartype not_data_actions: list[str or ~azure.keyvault.v7_5.models.DataAction] """ _attribute_map = { @@ -234,10 +234,10 @@ def __init__( by other role definitions assigned to a principal. :paramtype not_actions: list[str] :keyword data_actions: Data action permissions that are granted. - :paramtype data_actions: list[str or ~azure.keyvault.v7_6_preview_1.models.DataAction] + :paramtype data_actions: list[str or ~azure.keyvault.v7_5.models.DataAction] :keyword not_data_actions: Data action permissions that are excluded but not denied. They may be granted by other role definitions assigned to a principal. - :paramtype not_data_actions: list[str or ~azure.keyvault.v7_6_preview_1.models.DataAction] + :paramtype not_data_actions: list[str or ~azure.keyvault.v7_5.models.DataAction] """ super().__init__(**kwargs) self.actions = actions @@ -246,83 +246,6 @@ def __init__( self.not_data_actions = not_data_actions -class PreBackupOperationParameters(_serialization.Model): - """PreBackupOperationParameters. - - :ivar storage_resource_uri: Azure Blob storage container Uri. - :vartype storage_resource_uri: str - :ivar token: The SAS token pointing to an Azure Blob storage container. - :vartype token: str - :ivar use_managed_identity: Indicates which authentication method should be used. If set to - true, Managed HSM will use the configured user-assigned managed identity to authenticate with - Azure Storage. Otherwise, a SAS token has to be specified. - :vartype use_managed_identity: bool - """ - - _attribute_map = { - "storage_resource_uri": {"key": "storageResourceUri", "type": "str"}, - "token": {"key": "token", "type": "str"}, - "use_managed_identity": {"key": "useManagedIdentity", "type": "bool"}, - } - - def __init__( - self, - *, - storage_resource_uri: Optional[str] = None, - token: Optional[str] = None, - use_managed_identity: bool = False, - **kwargs: Any - ) -> None: - """ - :keyword storage_resource_uri: Azure Blob storage container Uri. - :paramtype storage_resource_uri: str - :keyword token: The SAS token pointing to an Azure Blob storage container. - :paramtype token: str - :keyword use_managed_identity: Indicates which authentication method should be used. If set to - true, Managed HSM will use the configured user-assigned managed identity to authenticate with - Azure Storage. Otherwise, a SAS token has to be specified. - :paramtype use_managed_identity: bool - """ - super().__init__(**kwargs) - self.storage_resource_uri = storage_resource_uri - self.token = token - self.use_managed_identity = use_managed_identity - - -class PreRestoreOperationParameters(_serialization.Model): - """PreRestoreOperationParameters. - - :ivar sas_token_parameters: - :vartype sas_token_parameters: ~azure.keyvault.v7_6_preview_1.models.SASTokenParameter - :ivar folder_to_restore: The Folder name of the blob where the previous successful full backup - was stored. - :vartype folder_to_restore: str - """ - - _attribute_map = { - "sas_token_parameters": {"key": "sasTokenParameters", "type": "SASTokenParameter"}, - "folder_to_restore": {"key": "folderToRestore", "type": "str"}, - } - - def __init__( - self, - *, - sas_token_parameters: Optional["_models.SASTokenParameter"] = None, - folder_to_restore: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword sas_token_parameters: - :paramtype sas_token_parameters: ~azure.keyvault.v7_6_preview_1.models.SASTokenParameter - :keyword folder_to_restore: The Folder name of the blob where the previous successful full - backup was stored. - :paramtype folder_to_restore: str - """ - super().__init__(**kwargs) - self.sas_token_parameters = sas_token_parameters - self.folder_to_restore = folder_to_restore - - class RestoreOperation(_serialization.Model): """Restore operation. @@ -331,7 +254,7 @@ class RestoreOperation(_serialization.Model): :ivar status_details: The status details of restore operation. :vartype status_details: str :ivar error: Error encountered, if any, during the restore operation. - :vartype error: ~azure.keyvault.v7_6_preview_1.models.Error + :vartype error: ~azure.keyvault.v7_5.models.Error :ivar job_id: Identifier for the restore operation. :vartype job_id: str :ivar start_time: The start time of the restore operation. @@ -366,7 +289,7 @@ def __init__( :keyword status_details: The status details of restore operation. :paramtype status_details: str :keyword error: Error encountered, if any, during the restore operation. - :paramtype error: ~azure.keyvault.v7_6_preview_1.models.Error + :paramtype error: ~azure.keyvault.v7_5.models.Error :keyword job_id: Identifier for the restore operation. :paramtype job_id: str :keyword start_time: The start time of the restore operation. @@ -389,7 +312,7 @@ class RestoreOperationParameters(_serialization.Model): All required parameters must be populated in order to send to server. :ivar sas_token_parameters: Required. - :vartype sas_token_parameters: ~azure.keyvault.v7_6_preview_1.models.SASTokenParameter + :vartype sas_token_parameters: ~azure.keyvault.v7_5.models.SASTokenParameter :ivar folder_to_restore: The Folder name of the blob where the previous successful full backup was stored. Required. :vartype folder_to_restore: str @@ -410,7 +333,7 @@ def __init__( ) -> None: """ :keyword sas_token_parameters: Required. - :paramtype sas_token_parameters: ~azure.keyvault.v7_6_preview_1.models.SASTokenParameter + :paramtype sas_token_parameters: ~azure.keyvault.v7_5.models.SASTokenParameter :keyword folder_to_restore: The Folder name of the blob where the previous successful full backup was stored. Required. :paramtype folder_to_restore: str @@ -432,7 +355,7 @@ class RoleAssignment(_serialization.Model): :ivar type: The role assignment type. :vartype type: str :ivar properties: Role assignment properties. - :vartype properties: ~azure.keyvault.v7_6_preview_1.models.RoleAssignmentPropertiesWithScope + :vartype properties: ~azure.keyvault.v7_5.models.RoleAssignmentPropertiesWithScope """ _validation = { @@ -453,7 +376,7 @@ def __init__( ) -> None: """ :keyword properties: Role assignment properties. - :paramtype properties: ~azure.keyvault.v7_6_preview_1.models.RoleAssignmentPropertiesWithScope + :paramtype properties: ~azure.keyvault.v7_5.models.RoleAssignmentPropertiesWithScope """ super().__init__(**kwargs) self.id = None @@ -468,7 +391,7 @@ class RoleAssignmentCreateParameters(_serialization.Model): All required parameters must be populated in order to send to server. :ivar properties: Role assignment properties. Required. - :vartype properties: ~azure.keyvault.v7_6_preview_1.models.RoleAssignmentProperties + :vartype properties: ~azure.keyvault.v7_5.models.RoleAssignmentProperties """ _validation = { @@ -482,7 +405,7 @@ class RoleAssignmentCreateParameters(_serialization.Model): def __init__(self, *, properties: "_models.RoleAssignmentProperties", **kwargs: Any) -> None: """ :keyword properties: Role assignment properties. Required. - :paramtype properties: ~azure.keyvault.v7_6_preview_1.models.RoleAssignmentProperties + :paramtype properties: ~azure.keyvault.v7_5.models.RoleAssignmentProperties """ super().__init__(**kwargs) self.properties = properties @@ -512,7 +435,7 @@ class RoleAssignmentListResult(_serialization.Model): """Role assignment list operation result. :ivar value: Role assignment list. - :vartype value: list[~azure.keyvault.v7_6_preview_1.models.RoleAssignment] + :vartype value: list[~azure.keyvault.v7_5.models.RoleAssignment] :ivar next_link: The URL to use for getting the next set of results. :vartype next_link: str """ @@ -527,7 +450,7 @@ def __init__( ) -> None: """ :keyword value: Role assignment list. - :paramtype value: list[~azure.keyvault.v7_6_preview_1.models.RoleAssignment] + :paramtype value: list[~azure.keyvault.v7_5.models.RoleAssignment] :keyword next_link: The URL to use for getting the next set of results. :paramtype next_link: str """ @@ -575,7 +498,7 @@ class RoleAssignmentPropertiesWithScope(_serialization.Model): """Role assignment properties with scope. :ivar scope: The role scope. Known values are: "/" and "/keys". - :vartype scope: str or ~azure.keyvault.v7_6_preview_1.models.RoleScope + :vartype scope: str or ~azure.keyvault.v7_5.models.RoleScope :ivar role_definition_id: The role definition ID. :vartype role_definition_id: str :ivar principal_id: The principal ID. @@ -598,7 +521,7 @@ def __init__( ) -> None: """ :keyword scope: The role scope. Known values are: "/" and "/keys". - :paramtype scope: str or ~azure.keyvault.v7_6_preview_1.models.RoleScope + :paramtype scope: str or ~azure.keyvault.v7_5.models.RoleScope :keyword role_definition_id: The role definition ID. :paramtype role_definition_id: str :keyword principal_id: The principal ID. @@ -620,9 +543,9 @@ class RoleDefinition(_serialization.Model): :ivar name: The role definition name. :vartype name: str :ivar type: The role definition type. "Microsoft.Authorization/roleDefinitions" - :vartype type: str or ~azure.keyvault.v7_6_preview_1.models.RoleDefinitionType + :vartype type: str or ~azure.keyvault.v7_5.models.RoleDefinitionType :ivar properties: Role definition properties. - :vartype properties: ~azure.keyvault.v7_6_preview_1.models.RoleDefinitionProperties + :vartype properties: ~azure.keyvault.v7_5.models.RoleDefinitionProperties """ _validation = { @@ -641,7 +564,7 @@ class RoleDefinition(_serialization.Model): def __init__(self, *, properties: Optional["_models.RoleDefinitionProperties"] = None, **kwargs: Any) -> None: """ :keyword properties: Role definition properties. - :paramtype properties: ~azure.keyvault.v7_6_preview_1.models.RoleDefinitionProperties + :paramtype properties: ~azure.keyvault.v7_5.models.RoleDefinitionProperties """ super().__init__(**kwargs) self.id = None @@ -656,7 +579,7 @@ class RoleDefinitionCreateParameters(_serialization.Model): All required parameters must be populated in order to send to server. :ivar properties: Role definition properties. Required. - :vartype properties: ~azure.keyvault.v7_6_preview_1.models.RoleDefinitionProperties + :vartype properties: ~azure.keyvault.v7_5.models.RoleDefinitionProperties """ _validation = { @@ -670,7 +593,7 @@ class RoleDefinitionCreateParameters(_serialization.Model): def __init__(self, *, properties: "_models.RoleDefinitionProperties", **kwargs: Any) -> None: """ :keyword properties: Role definition properties. Required. - :paramtype properties: ~azure.keyvault.v7_6_preview_1.models.RoleDefinitionProperties + :paramtype properties: ~azure.keyvault.v7_5.models.RoleDefinitionProperties """ super().__init__(**kwargs) self.properties = properties @@ -700,7 +623,7 @@ class RoleDefinitionListResult(_serialization.Model): """Role definition list operation result. :ivar value: Role definition list. - :vartype value: list[~azure.keyvault.v7_6_preview_1.models.RoleDefinition] + :vartype value: list[~azure.keyvault.v7_5.models.RoleDefinition] :ivar next_link: The URL to use for getting the next set of results. :vartype next_link: str """ @@ -715,7 +638,7 @@ def __init__( ) -> None: """ :keyword value: Role definition list. - :paramtype value: list[~azure.keyvault.v7_6_preview_1.models.RoleDefinition] + :paramtype value: list[~azure.keyvault.v7_5.models.RoleDefinition] :keyword next_link: The URL to use for getting the next set of results. :paramtype next_link: str """ @@ -732,11 +655,11 @@ class RoleDefinitionProperties(_serialization.Model): :ivar description: The role definition description. :vartype description: str :ivar role_type: The role type. Known values are: "AKVBuiltInRole" and "CustomRole". - :vartype role_type: str or ~azure.keyvault.v7_6_preview_1.models.RoleType + :vartype role_type: str or ~azure.keyvault.v7_5.models.RoleType :ivar permissions: Role definition permissions. - :vartype permissions: list[~azure.keyvault.v7_6_preview_1.models.Permission] + :vartype permissions: list[~azure.keyvault.v7_5.models.Permission] :ivar assignable_scopes: Role definition assignable scopes. - :vartype assignable_scopes: list[str or ~azure.keyvault.v7_6_preview_1.models.RoleScope] + :vartype assignable_scopes: list[str or ~azure.keyvault.v7_5.models.RoleScope] """ _attribute_map = { @@ -763,11 +686,11 @@ def __init__( :keyword description: The role definition description. :paramtype description: str :keyword role_type: The role type. Known values are: "AKVBuiltInRole" and "CustomRole". - :paramtype role_type: str or ~azure.keyvault.v7_6_preview_1.models.RoleType + :paramtype role_type: str or ~azure.keyvault.v7_5.models.RoleType :keyword permissions: Role definition permissions. - :paramtype permissions: list[~azure.keyvault.v7_6_preview_1.models.Permission] + :paramtype permissions: list[~azure.keyvault.v7_5.models.Permission] :keyword assignable_scopes: Role definition assignable scopes. - :paramtype assignable_scopes: list[str or ~azure.keyvault.v7_6_preview_1.models.RoleScope] + :paramtype assignable_scopes: list[str or ~azure.keyvault.v7_5.models.RoleScope] """ super().__init__(**kwargs) self.role_name = role_name @@ -834,7 +757,7 @@ class SelectiveKeyRestoreOperation(_serialization.Model): :ivar status_details: The status details of restore operation. :vartype status_details: str :ivar error: Error encountered, if any, during the selective key restore operation. - :vartype error: ~azure.keyvault.v7_6_preview_1.models.Error + :vartype error: ~azure.keyvault.v7_5.models.Error :ivar job_id: Identifier for the selective key restore operation. :vartype job_id: str :ivar start_time: The start time of the restore operation. @@ -869,7 +792,7 @@ def __init__( :keyword status_details: The status details of restore operation. :paramtype status_details: str :keyword error: Error encountered, if any, during the selective key restore operation. - :paramtype error: ~azure.keyvault.v7_6_preview_1.models.Error + :paramtype error: ~azure.keyvault.v7_5.models.Error :keyword job_id: Identifier for the selective key restore operation. :paramtype job_id: str :keyword start_time: The start time of the restore operation. @@ -892,7 +815,7 @@ class SelectiveKeyRestoreOperationParameters(_serialization.Model): All required parameters must be populated in order to send to server. :ivar sas_token_parameters: Required. - :vartype sas_token_parameters: ~azure.keyvault.v7_6_preview_1.models.SASTokenParameter + :vartype sas_token_parameters: ~azure.keyvault.v7_5.models.SASTokenParameter :ivar folder: The Folder name of the blob where the previous successful full backup was stored. Required. :vartype folder: str @@ -911,7 +834,7 @@ class SelectiveKeyRestoreOperationParameters(_serialization.Model): def __init__(self, *, sas_token_parameters: "_models.SASTokenParameter", folder: str, **kwargs: Any) -> None: """ :keyword sas_token_parameters: Required. - :paramtype sas_token_parameters: ~azure.keyvault.v7_6_preview_1.models.SASTokenParameter + :paramtype sas_token_parameters: ~azure.keyvault.v7_5.models.SASTokenParameter :keyword folder: The Folder name of the blob where the previous successful full backup was stored. Required. :paramtype folder: str @@ -931,7 +854,7 @@ class Setting(_serialization.Model): :ivar value: The value of the pool setting. Required. :vartype value: str :ivar type: The type specifier of the value. "boolean" - :vartype type: str or ~azure.keyvault.v7_6_preview_1.models.SettingTypeEnum + :vartype type: str or ~azure.keyvault.v7_5.models.SettingTypeEnum """ _validation = { @@ -954,7 +877,7 @@ def __init__( :keyword value: The value of the pool setting. Required. :paramtype value: str :keyword type: The type specifier of the value. "boolean" - :paramtype type: str or ~azure.keyvault.v7_6_preview_1.models.SettingTypeEnum + :paramtype type: str or ~azure.keyvault.v7_5.models.SettingTypeEnum """ super().__init__(**kwargs) self.name = name @@ -969,7 +892,7 @@ class SettingsListResult(_serialization.Model): :ivar settings: A response message containing a list of account settings with their associated value. - :vartype settings: list[~azure.keyvault.v7_6_preview_1.models.Setting] + :vartype settings: list[~azure.keyvault.v7_5.models.Setting] """ _validation = { diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/operations/_operations.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/operations/_operations.py index be7516c9cf6b..5c4f796a6015 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/operations/_operations.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_generated/operations/_operations.py @@ -7,8 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, cast, overload +from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload import urllib.parse from azure.core.exceptions import ( @@ -31,10 +30,6 @@ from .._serialization import Serializer from .._vendor import KeyVaultClientMixinABC -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -47,7 +42,7 @@ def build_key_vault_full_backup_request(**kwargs: Any) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -64,35 +59,13 @@ def build_key_vault_full_backup_request(**kwargs: Any) -> HttpRequest: return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) -def build_key_vault_pre_full_backup_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = "/prebackup" - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - def build_key_vault_full_backup_status_request( # pylint: disable=name-too-long job_id: str, **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -112,34 +85,12 @@ def build_key_vault_full_backup_status_request( # pylint: disable=name-too-long return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_key_vault_pre_full_restore_operation_request(**kwargs: Any) -> HttpRequest: # pylint: disable=name-too-long - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = "/prerestore" - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - def build_key_vault_full_restore_operation_request(**kwargs: Any) -> HttpRequest: # pylint: disable=name-too-long _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -160,7 +111,7 @@ def build_key_vault_restore_status_request(job_id: str, **kwargs: Any) -> HttpRe _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -187,7 +138,7 @@ def build_key_vault_selective_key_restore_operation_request( # pylint: disable= _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -214,7 +165,7 @@ def build_key_vault_update_setting_request(setting_name: str, **kwargs: Any) -> _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -240,7 +191,7 @@ def build_key_vault_get_setting_request(setting_name: str, **kwargs: Any) -> Htt _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -264,7 +215,7 @@ def build_key_vault_get_settings_request(**kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -283,7 +234,7 @@ def build_role_definitions_delete_request(scope: str, role_definition_name: str, _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -311,7 +262,7 @@ def build_role_definitions_create_or_update_request( # pylint: disable=name-too _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -338,7 +289,7 @@ def build_role_definitions_get_request(scope: str, role_definition_name: str, ** _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -363,7 +314,7 @@ def build_role_definitions_list_request(scope: str, *, filter: Optional[str] = N _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -389,7 +340,7 @@ def build_role_assignments_delete_request(scope: str, role_assignment_name: str, _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -415,7 +366,7 @@ def build_role_assignments_create_request(scope: str, role_assignment_name: str, _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -442,7 +393,7 @@ def build_role_assignments_get_request(scope: str, role_assignment_name: str, ** _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -469,7 +420,7 @@ def build_role_assignments_list_for_scope_request( # pylint: disable=name-too-l _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.6-preview.1")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "7.5")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -492,14 +443,13 @@ def build_role_assignments_list_for_scope_request( # pylint: disable=name-too-l class KeyVaultClientOperationsMixin(KeyVaultClientMixinABC): - def _full_backup_initial( self, vault_base_url: str, azure_storage_blob_container_uri: Optional[Union[_models.SASTokenParameter, IO[bytes]]] = None, **kwargs: Any ) -> _models.FullBackupOperation: - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -580,13 +530,12 @@ def begin_full_backup( :param azure_storage_blob_container_uri: Azure blob shared access signature token pointing to a valid Azure blob container where full backup needs to be stored. This token needs to be valid for at least next 24 hours from the time of making this call. Default value is None. - :type azure_storage_blob_container_uri: ~azure.keyvault.v7_6_preview_1.models.SASTokenParameter + :type azure_storage_blob_container_uri: ~azure.keyvault.v7_5.models.SASTokenParameter :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: An instance of LROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] + :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_5.models.FullBackupOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -611,8 +560,7 @@ def begin_full_backup( Default value is "application/json". :paramtype content_type: str :return: An instance of LROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] + :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_5.models.FullBackupOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -631,11 +579,13 @@ def begin_full_backup( valid Azure blob container where full backup needs to be stored. This token needs to be valid for at least next 24 hours from the time of making this call. Is either a SASTokenParameter type or a IO[bytes] type. Default value is None. - :type azure_storage_blob_container_uri: ~azure.keyvault.v7_6_preview_1.models.SASTokenParameter - or IO[bytes] + :type azure_storage_blob_container_uri: ~azure.keyvault.v7_5.models.SASTokenParameter or + IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: An instance of LROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] + :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_5.models.FullBackupOperation] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) @@ -700,211 +650,6 @@ def get_long_running_output(pipeline_response): self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - def _pre_full_backup_initial( - self, - vault_base_url: str, - pre_backup_operation_parameters: Optional[Union[_models.PreBackupOperationParameters, IO[bytes]]] = None, - **kwargs: Any - ) -> _models.FullBackupOperation: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.FullBackupOperation] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(pre_backup_operation_parameters, (IOBase, bytes)): - _content = pre_backup_operation_parameters - else: - if pre_backup_operation_parameters is not None: - _json = self._serialize.body(pre_backup_operation_parameters, "PreBackupOperationParameters") - else: - _json = None - - _request = build_key_vault_pre_full_backup_request( - content_type=content_type, - api_version=self._config.api_version, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "vaultBaseUrl": self._serialize.url("vault_base_url", vault_base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - if _stream: - response.read() # Load the body in memory and close the socket - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.KeyVaultError, pipeline_response) - raise HttpResponseError(response=response, model=error) - - response_headers = {} - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - - deserialized = self._deserialize("FullBackupOperation", pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_pre_full_backup( - self, - vault_base_url: str, - pre_backup_operation_parameters: Optional[_models.PreBackupOperationParameters] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.FullBackupOperation]: - """Pre-backup operation for checking whether the customer can perform a full backup operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_backup_operation_parameters: Optional parameters to validate prior to performing a - full backup operation. Default value is None. - :type pre_backup_operation_parameters: - ~azure.keyvault.v7_6_preview_1.models.PreBackupOperationParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_pre_full_backup( - self, - vault_base_url: str, - pre_backup_operation_parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.FullBackupOperation]: - """Pre-backup operation for checking whether the customer can perform a full backup operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_backup_operation_parameters: Optional parameters to validate prior to performing a - full backup operation. Default value is None. - :type pre_backup_operation_parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_pre_full_backup( - self, - vault_base_url: str, - pre_backup_operation_parameters: Optional[Union[_models.PreBackupOperationParameters, IO[bytes]]] = None, - **kwargs: Any - ) -> LROPoller[_models.FullBackupOperation]: - """Pre-backup operation for checking whether the customer can perform a full backup operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_backup_operation_parameters: Optional parameters to validate prior to performing a - full backup operation. Is either a PreBackupOperationParameters type or a IO[bytes] type. - Default value is None. - :type pre_backup_operation_parameters: - ~azure.keyvault.v7_6_preview_1.models.PreBackupOperationParameters or IO[bytes] - :return: An instance of LROPoller that returns FullBackupOperation - :rtype: - ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.FullBackupOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.FullBackupOperation] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._pre_full_backup_initial( - vault_base_url=vault_base_url, - pre_backup_operation_parameters=pre_backup_operation_parameters, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - response_headers = {} - response = pipeline_response.http_response - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - - deserialized = self._deserialize("FullBackupOperation", pipeline_response) - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized - - path_format_arguments = { - "vaultBaseUrl": self._serialize.url("vault_base_url", vault_base_url, "str", skip_quote=True), - } - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, - LROBasePolling( - lro_delay, - lro_options={"final-state-via": "azure-async-operation"}, - path_format_arguments=path_format_arguments, - **kwargs - ), - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.FullBackupOperation].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.FullBackupOperation]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - @distributed_trace def full_backup_status(self, vault_base_url: str, job_id: str, **kwargs: Any) -> _models.FullBackupOperation: """Returns the status of full backup operation. @@ -914,10 +659,10 @@ def full_backup_status(self, vault_base_url: str, job_id: str, **kwargs: Any) -> :param job_id: The id returned as part of the backup request. Required. :type job_id: str :return: FullBackupOperation - :rtype: ~azure.keyvault.v7_6_preview_1.models.FullBackupOperation + :rtype: ~azure.keyvault.v7_5.models.FullBackupOperation :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -962,215 +707,13 @@ def full_backup_status(self, vault_base_url: str, job_id: str, **kwargs: Any) -> return deserialized # type: ignore - def _pre_full_restore_operation_initial( - self, - vault_base_url: str, - pre_restore_operation_parameters: Optional[Union[_models.PreRestoreOperationParameters, IO[bytes]]] = None, - **kwargs: Any - ) -> _models.RestoreOperation: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.RestoreOperation] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(pre_restore_operation_parameters, (IOBase, bytes)): - _content = pre_restore_operation_parameters - else: - if pre_restore_operation_parameters is not None: - _json = self._serialize.body(pre_restore_operation_parameters, "PreRestoreOperationParameters") - else: - _json = None - - _request = build_key_vault_pre_full_restore_operation_request( - content_type=content_type, - api_version=self._config.api_version, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "vaultBaseUrl": self._serialize.url("vault_base_url", vault_base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - if _stream: - response.read() # Load the body in memory and close the socket - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.KeyVaultError, pipeline_response) - raise HttpResponseError(response=response, model=error) - - response_headers = {} - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - - deserialized = self._deserialize("RestoreOperation", pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_pre_full_restore_operation( - self, - vault_base_url: str, - pre_restore_operation_parameters: Optional[_models.PreRestoreOperationParameters] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.RestoreOperation]: - """Pre-restore operation for checking whether the customer can perform a full restore operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_restore_operation_parameters: Optional pre restore parameters to validate prior to - performing a full restore operation. Default value is None. - :type pre_restore_operation_parameters: - ~azure.keyvault.v7_6_preview_1.models.PreRestoreOperationParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns RestoreOperation - :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_pre_full_restore_operation( - self, - vault_base_url: str, - pre_restore_operation_parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.RestoreOperation]: - """Pre-restore operation for checking whether the customer can perform a full restore operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_restore_operation_parameters: Optional pre restore parameters to validate prior to - performing a full restore operation. Default value is None. - :type pre_restore_operation_parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns RestoreOperation - :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_pre_full_restore_operation( - self, - vault_base_url: str, - pre_restore_operation_parameters: Optional[Union[_models.PreRestoreOperationParameters, IO[bytes]]] = None, - **kwargs: Any - ) -> LROPoller[_models.RestoreOperation]: - """Pre-restore operation for checking whether the customer can perform a full restore operation. - - :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. - :type vault_base_url: str - :param pre_restore_operation_parameters: Optional pre restore parameters to validate prior to - performing a full restore operation. Is either a PreRestoreOperationParameters type or a - IO[bytes] type. Default value is None. - :type pre_restore_operation_parameters: - ~azure.keyvault.v7_6_preview_1.models.PreRestoreOperationParameters or IO[bytes] - :return: An instance of LROPoller that returns RestoreOperation - :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.RestoreOperation] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._pre_full_restore_operation_initial( - vault_base_url=vault_base_url, - pre_restore_operation_parameters=pre_restore_operation_parameters, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - response_headers = {} - response = pipeline_response.http_response - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - - deserialized = self._deserialize("RestoreOperation", pipeline_response) - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized - - path_format_arguments = { - "vaultBaseUrl": self._serialize.url("vault_base_url", vault_base_url, "str", skip_quote=True), - } - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, - LROBasePolling( - lro_delay, - lro_options={"final-state-via": "azure-async-operation"}, - path_format_arguments=path_format_arguments, - **kwargs - ), - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.RestoreOperation].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.RestoreOperation]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - def _full_restore_operation_initial( self, vault_base_url: str, restore_blob_details: Optional[Union[_models.RestoreOperationParameters, IO[bytes]]] = None, **kwargs: Any ) -> _models.RestoreOperation: - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1251,12 +794,12 @@ def begin_full_restore_operation( :type vault_base_url: str :param restore_blob_details: The Azure blob SAS token pointing to a folder where the previous successful full backup was stored. Default value is None. - :type restore_blob_details: ~azure.keyvault.v7_6_preview_1.models.RestoreOperationParameters + :type restore_blob_details: ~azure.keyvault.v7_5.models.RestoreOperationParameters :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: An instance of LROPoller that returns RestoreOperation - :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] + :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_5.models.RestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1281,7 +824,7 @@ def begin_full_restore_operation( Default value is "application/json". :paramtype content_type: str :return: An instance of LROPoller that returns RestoreOperation - :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] + :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_5.models.RestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1300,10 +843,12 @@ def begin_full_restore_operation( :param restore_blob_details: The Azure blob SAS token pointing to a folder where the previous successful full backup was stored. Is either a RestoreOperationParameters type or a IO[bytes] type. Default value is None. - :type restore_blob_details: ~azure.keyvault.v7_6_preview_1.models.RestoreOperationParameters or - IO[bytes] + :type restore_blob_details: ~azure.keyvault.v7_5.models.RestoreOperationParameters or IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: An instance of LROPoller that returns RestoreOperation - :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.RestoreOperation] + :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_5.models.RestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) @@ -1377,10 +922,10 @@ def restore_status(self, vault_base_url: str, job_id: str, **kwargs: Any) -> _mo :param job_id: The Job Id returned part of the restore operation. Required. :type job_id: str :return: RestoreOperation - :rtype: ~azure.keyvault.v7_6_preview_1.models.RestoreOperation + :rtype: ~azure.keyvault.v7_5.models.RestoreOperation :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1432,7 +977,7 @@ def _selective_key_restore_operation_initial( restore_blob_details: Optional[Union[_models.SelectiveKeyRestoreOperationParameters, IO[bytes]]] = None, **kwargs: Any ) -> _models.SelectiveKeyRestoreOperation: - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1517,14 +1062,12 @@ def begin_selective_key_restore_operation( :type key_name: str :param restore_blob_details: The Azure blob SAS token pointing to a folder where the previous successful full backup was stored. Default value is None. - :type restore_blob_details: - ~azure.keyvault.v7_6_preview_1.models.SelectiveKeyRestoreOperationParameters + :type restore_blob_details: ~azure.keyvault.v7_5.models.SelectiveKeyRestoreOperationParameters :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: An instance of LROPoller that returns SelectiveKeyRestoreOperation - :rtype: - ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.SelectiveKeyRestoreOperation] + :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_5.models.SelectiveKeyRestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1552,8 +1095,7 @@ def begin_selective_key_restore_operation( Default value is "application/json". :paramtype content_type: str :return: An instance of LROPoller that returns SelectiveKeyRestoreOperation - :rtype: - ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.SelectiveKeyRestoreOperation] + :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_5.models.SelectiveKeyRestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1575,11 +1117,13 @@ def begin_selective_key_restore_operation( :param restore_blob_details: The Azure blob SAS token pointing to a folder where the previous successful full backup was stored. Is either a SelectiveKeyRestoreOperationParameters type or a IO[bytes] type. Default value is None. - :type restore_blob_details: - ~azure.keyvault.v7_6_preview_1.models.SelectiveKeyRestoreOperationParameters or IO[bytes] + :type restore_blob_details: ~azure.keyvault.v7_5.models.SelectiveKeyRestoreOperationParameters + or IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: An instance of LROPoller that returns SelectiveKeyRestoreOperation - :rtype: - ~azure.core.polling.LROPoller[~azure.keyvault.v7_6_preview_1.models.SelectiveKeyRestoreOperation] + :rtype: ~azure.core.polling.LROPoller[~azure.keyvault.v7_5.models.SelectiveKeyRestoreOperation] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) @@ -1666,12 +1210,12 @@ def update_setting( Required. :type setting_name: str :param parameters: The parameters to update an account setting. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.UpdateSettingRequest + :type parameters: ~azure.keyvault.v7_5.models.UpdateSettingRequest :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: Setting - :rtype: ~azure.keyvault.v7_6_preview_1.models.Setting + :rtype: ~azure.keyvault.v7_5.models.Setting :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1701,7 +1245,7 @@ def update_setting( Default value is "application/json". :paramtype content_type: str :return: Setting - :rtype: ~azure.keyvault.v7_6_preview_1.models.Setting + :rtype: ~azure.keyvault.v7_5.models.Setting :raises ~azure.core.exceptions.HttpResponseError: """ @@ -1725,12 +1269,15 @@ def update_setting( :type setting_name: str :param parameters: The parameters to update an account setting. Is either a UpdateSettingRequest type or a IO[bytes] type. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.UpdateSettingRequest or IO[bytes] + :type parameters: ~azure.keyvault.v7_5.models.UpdateSettingRequest or IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: Setting - :rtype: ~azure.keyvault.v7_6_preview_1.models.Setting + :rtype: ~azure.keyvault.v7_5.models.Setting :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1799,10 +1346,10 @@ def get_setting(self, vault_base_url: str, setting_name: str, **kwargs: Any) -> Required. :type setting_name: str :return: Setting - :rtype: ~azure.keyvault.v7_6_preview_1.models.Setting + :rtype: ~azure.keyvault.v7_5.models.Setting :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1856,10 +1403,10 @@ def get_settings(self, vault_base_url: str, **kwargs: Any) -> _models.SettingsLi :param vault_base_url: The vault name, for example https://myvault.vault.azure.net. Required. :type vault_base_url: str :return: SettingsListResult - :rtype: ~azure.keyvault.v7_6_preview_1.models.SettingsListResult + :rtype: ~azure.keyvault.v7_5.models.SettingsListResult :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -1910,7 +1457,7 @@ class RoleDefinitionsOperations: **DO NOT** instantiate this class directly. Instead, you should access the following operations through - :class:`~azure.keyvault.v7_6_preview_1.KeyVaultClient`'s + :class:`~azure.keyvault.v7_5.KeyVaultClient`'s :attr:`role_definitions` attribute. """ @@ -1937,10 +1484,10 @@ def delete( :param role_definition_name: The name (GUID) of the role definition to delete. Required. :type role_definition_name: str :return: RoleDefinition - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleDefinition + :rtype: ~azure.keyvault.v7_5.models.RoleDefinition :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -2008,12 +1555,12 @@ def create_or_update( valid GUID. Required. :type role_definition_name: str :param parameters: Parameters for the role definition. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.RoleDefinitionCreateParameters + :type parameters: ~azure.keyvault.v7_5.models.RoleDefinitionCreateParameters :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: RoleDefinition - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleDefinition + :rtype: ~azure.keyvault.v7_5.models.RoleDefinition :raises ~azure.core.exceptions.HttpResponseError: """ @@ -2044,7 +1591,7 @@ def create_or_update( Default value is "application/json". :paramtype content_type: str :return: RoleDefinition - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleDefinition + :rtype: ~azure.keyvault.v7_5.models.RoleDefinition :raises ~azure.core.exceptions.HttpResponseError: """ @@ -2069,13 +1616,15 @@ def create_or_update( :type role_definition_name: str :param parameters: Parameters for the role definition. Is either a RoleDefinitionCreateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.RoleDefinitionCreateParameters or - IO[bytes] + :type parameters: ~azure.keyvault.v7_5.models.RoleDefinitionCreateParameters or IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: RoleDefinition - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleDefinition + :rtype: ~azure.keyvault.v7_5.models.RoleDefinition :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -2144,10 +1693,10 @@ def get(self, vault_base_url: str, scope: str, role_definition_name: str, **kwar :param role_definition_name: The name of the role definition to get. Required. :type role_definition_name: str :return: RoleDefinition - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleDefinition + :rtype: ~azure.keyvault.v7_5.models.RoleDefinition :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -2207,7 +1756,7 @@ def list( below the given scope as well. Default value is None. :paramtype filter: str :return: An iterator like instance of RoleDefinition - :rtype: ~azure.core.paging.ItemPaged[~azure.keyvault.v7_6_preview_1.models.RoleDefinition] + :rtype: ~azure.core.paging.ItemPaged[~azure.keyvault.v7_5.models.RoleDefinition] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} @@ -2217,7 +1766,7 @@ def list( "cls", None ) - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -2296,7 +1845,7 @@ class RoleAssignmentsOperations: **DO NOT** instantiate this class directly. Instead, you should access the following operations through - :class:`~azure.keyvault.v7_6_preview_1.KeyVaultClient`'s + :class:`~azure.keyvault.v7_5.KeyVaultClient`'s :attr:`role_assignments` attribute. """ @@ -2322,10 +1871,10 @@ def delete( :param role_assignment_name: The name of the role assignment to delete. Required. :type role_assignment_name: str :return: RoleAssignment - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleAssignment + :rtype: ~azure.keyvault.v7_5.models.RoleAssignment :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -2392,12 +1941,12 @@ def create( GUID. Required. :type role_assignment_name: str :param parameters: Parameters for the role assignment. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.RoleAssignmentCreateParameters + :type parameters: ~azure.keyvault.v7_5.models.RoleAssignmentCreateParameters :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str :return: RoleAssignment - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleAssignment + :rtype: ~azure.keyvault.v7_5.models.RoleAssignment :raises ~azure.core.exceptions.HttpResponseError: """ @@ -2427,7 +1976,7 @@ def create( Default value is "application/json". :paramtype content_type: str :return: RoleAssignment - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleAssignment + :rtype: ~azure.keyvault.v7_5.models.RoleAssignment :raises ~azure.core.exceptions.HttpResponseError: """ @@ -2451,13 +2000,15 @@ def create( :type role_assignment_name: str :param parameters: Parameters for the role assignment. Is either a RoleAssignmentCreateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.keyvault.v7_6_preview_1.models.RoleAssignmentCreateParameters or - IO[bytes] + :type parameters: ~azure.keyvault.v7_5.models.RoleAssignmentCreateParameters or IO[bytes] + :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. + Default value is None. + :paramtype content_type: str :return: RoleAssignment - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleAssignment + :rtype: ~azure.keyvault.v7_5.models.RoleAssignment :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -2526,10 +2077,10 @@ def get(self, vault_base_url: str, scope: str, role_assignment_name: str, **kwar :param role_assignment_name: The name of the role assignment to get. Required. :type role_assignment_name: str :return: RoleAssignment - :rtype: ~azure.keyvault.v7_6_preview_1.models.RoleAssignment + :rtype: ~azure.keyvault.v7_5.models.RoleAssignment :raises ~azure.core.exceptions.HttpResponseError: """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, @@ -2590,7 +2141,7 @@ def list_for_scope( assignments at, above or below the scope for the specified principal. Default value is None. :paramtype filter: str :return: An iterator like instance of RoleAssignment - :rtype: ~azure.core.paging.ItemPaged[~azure.keyvault.v7_6_preview_1.models.RoleAssignment] + :rtype: ~azure.core.paging.ItemPaged[~azure.keyvault.v7_5.models.RoleAssignment] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} @@ -2600,7 +2151,7 @@ def list_for_scope( "cls", None ) - error_map: MutableMapping[int, Type[HttpResponseError]] = { + error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError, diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_internal/client_base.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_internal/client_base.py index 8b80c1dadd1b..600d1be20446 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_internal/client_base.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_internal/client_base.py @@ -24,14 +24,13 @@ class ApiVersion(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Key Vault API versions supported by this package""" #: this is the default version - V7_6_PREVIEW_1 = "7.6-preview.1" V7_5 = "7.5" V7_4 = "7.4" V7_3 = "7.3" V7_2 = "7.2" -DEFAULT_VERSION = ApiVersion.V7_6_PREVIEW_1 +DEFAULT_VERSION = ApiVersion.V7_5 _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_version.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_version.py index db03ba750e5a..08b43a9063e2 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_version.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_version.py @@ -3,4 +3,4 @@ # Licensed under the MIT License. # ------------------------------------ -VERSION = "4.5.0b1" +VERSION = "4.4.1" diff --git a/sdk/keyvault/azure-keyvault-administration/setup.py b/sdk/keyvault/azure-keyvault-administration/setup.py index 30c88eb275bd..5c624c27e20b 100644 --- a/sdk/keyvault/azure-keyvault-administration/setup.py +++ b/sdk/keyvault/azure-keyvault-administration/setup.py @@ -45,7 +45,7 @@ url="https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/keyvault/azure-keyvault-administration", keywords="azure, azure sdk", classifiers=[ - "Development Status :: 4 - Beta", + "Development Status :: 5 - Production/Stable", "Programming Language :: Python", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3", diff --git a/sdk/keyvault/azure-keyvault-administration/tests/test_access_control.py b/sdk/keyvault/azure-keyvault-administration/tests/test_access_control.py index 1614564bf94c..c14251a13080 100644 --- a/sdk/keyvault/azure-keyvault-administration/tests/test_access_control.py +++ b/sdk/keyvault/azure-keyvault-administration/tests/test_access_control.py @@ -26,11 +26,10 @@ def get_replayable_uuid(self, replay_value): def get_service_principal_id(self): replay_value = "service-principal-id" if self.is_live: - value = os.environ.get("AZURE_CLIENT_ID") or os.environ.get("KEYVAULT_CLIENT_ID") + value = os.environ["AZURE_CLIENT_ID"] return value return replay_value - @pytest.mark.live_test_only("Having playback issues after sanitizing update; need to investigate") @pytest.mark.parametrize("api_version", all_api_versions) @KeyVaultAccessControlClientPreparer() @recorded_by_proxy @@ -90,7 +89,6 @@ def test_role_definitions(self, client, **kwargs): if self.is_live: time.sleep(60) # additional waiting to avoid conflicts with resources in other tests - @pytest.mark.live_test_only("Having playback issues after sanitizing update; need to investigate") @pytest.mark.parametrize("api_version", all_api_versions) @KeyVaultAccessControlClientPreparer() @recorded_by_proxy diff --git a/sdk/keyvault/azure-keyvault-administration/tests/test_access_control_async.py b/sdk/keyvault/azure-keyvault-administration/tests/test_access_control_async.py index 49505d388b0d..db16f213da21 100644 --- a/sdk/keyvault/azure-keyvault-administration/tests/test_access_control_async.py +++ b/sdk/keyvault/azure-keyvault-administration/tests/test_access_control_async.py @@ -28,11 +28,10 @@ def get_replayable_uuid(self, replay_value): def get_service_principal_id(self): replay_value = "service-principal-id" if self.is_live: - value = os.environ.get("AZURE_CLIENT_ID") or os.environ.get("KEYVAULT_CLIENT_ID") + value = os.environ["AZURE_CLIENT_ID"] return value return replay_value - - @pytest.mark.live_test_only("Having playback issues after sanitizing update; need to investigate") + @pytest.mark.asyncio @pytest.mark.parametrize("api_version", all_api_versions) @KeyVaultAccessControlClientPreparer() @@ -100,7 +99,6 @@ async def test_role_definitions(self, client, **kwargs): await asyncio.sleep(60) # additional waiting to avoid conflicts with resources in other tests - @pytest.mark.live_test_only("Having playback issues after sanitizing update; need to investigate") @pytest.mark.asyncio @pytest.mark.parametrize("api_version", all_api_versions) @KeyVaultAccessControlClientPreparer() @@ -117,6 +115,8 @@ async def test_role_assignment(self, client, **kwargs): principal_id = self.get_service_principal_id() name = self.get_replayable_uuid("some-uuid") add_general_regex_sanitizer(regex=name, value = "some-uuid") + + created = await client.create_role_assignment(scope, definition.id, principal_id, name=name) assert created.name == name