diff --git a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/_sql_management_client.py b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/_sql_management_client.py index fc95b255f436..67c64ba79636 100644 --- a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/_sql_management_client.py +++ b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/_sql_management_client.py @@ -98,12 +98,12 @@ from .operations import ManagedInstanceLongTermRetentionPoliciesOperations from .operations import WorkloadGroupsOperations from .operations import WorkloadClassifiersOperations -from .operations import ManagedDatabaseRestoreDetailsOperations -from .operations import ManagedDatabasesOperations from .operations import ServerAzureADAdministratorsOperations from .operations import ManagedInstanceOperations from .operations import SyncGroupsOperations from .operations import SyncMembersOperations +from .operations import ManagedDatabaseRestoreDetailsOperations +from .operations import ManagedDatabasesOperations from . import models @@ -283,10 +283,6 @@ class SqlManagementClient(SDKClient): :vartype workload_groups: azure.mgmt.sql.operations.WorkloadGroupsOperations :ivar workload_classifiers: WorkloadClassifiers operations :vartype workload_classifiers: azure.mgmt.sql.operations.WorkloadClassifiersOperations - :ivar managed_database_restore_details: ManagedDatabaseRestoreDetails operations - :vartype managed_database_restore_details: azure.mgmt.sql.operations.ManagedDatabaseRestoreDetailsOperations - :ivar managed_databases: ManagedDatabases operations - :vartype managed_databases: azure.mgmt.sql.operations.ManagedDatabasesOperations :ivar server_azure_ad_administrators: ServerAzureADAdministrators operations :vartype server_azure_ad_administrators: azure.mgmt.sql.operations.ServerAzureADAdministratorsOperations :ivar managed_instance_operations: ManagedInstanceOperations operations @@ -295,6 +291,10 @@ class SqlManagementClient(SDKClient): :vartype sync_groups: azure.mgmt.sql.operations.SyncGroupsOperations :ivar sync_members: SyncMembers operations :vartype sync_members: azure.mgmt.sql.operations.SyncMembersOperations + :ivar managed_database_restore_details: ManagedDatabaseRestoreDetails operations + :vartype managed_database_restore_details: azure.mgmt.sql.operations.ManagedDatabaseRestoreDetailsOperations + :ivar managed_databases: ManagedDatabases operations + :vartype managed_databases: azure.mgmt.sql.operations.ManagedDatabasesOperations :param credentials: Credentials needed for the client to connect to Azure. :type credentials: :mod:`A msrestazure Credentials @@ -485,10 +485,6 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.workload_classifiers = WorkloadClassifiersOperations( self._client, self.config, self._serialize, self._deserialize) - self.managed_database_restore_details = ManagedDatabaseRestoreDetailsOperations( - self._client, self.config, self._serialize, self._deserialize) - self.managed_databases = ManagedDatabasesOperations( - self._client, self.config, self._serialize, self._deserialize) self.server_azure_ad_administrators = ServerAzureADAdministratorsOperations( self._client, self.config, self._serialize, self._deserialize) self.managed_instance_operations = ManagedInstanceOperations( @@ -497,3 +493,7 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.sync_members = SyncMembersOperations( self._client, self.config, self._serialize, self._deserialize) + self.managed_database_restore_details = ManagedDatabaseRestoreDetailsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.managed_databases = ManagedDatabasesOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/__init__.py b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/__init__.py index f1f1ca355cc4..74be0f46025c 100644 --- a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/__init__.py +++ b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/__init__.py @@ -96,6 +96,8 @@ from ._models_py3 import ManagedInstanceLongTermRetentionBackup from ._models_py3 import ManagedInstanceLongTermRetentionPolicy from ._models_py3 import ManagedInstanceOperation + from ._models_py3 import ManagedInstanceOperationParametersPair + from ._models_py3 import ManagedInstanceOperationSteps from ._models_py3 import ManagedInstancePairInfo from ._models_py3 import ManagedInstanceUpdate from ._models_py3 import ManagedInstanceVcoresCapability @@ -178,6 +180,8 @@ from ._models_py3 import TransparentDataEncryption from ._models_py3 import TransparentDataEncryptionActivity from ._models_py3 import UnlinkParameters + from ._models_py3 import UpsertManagedServerOperationParameters + from ._models_py3 import UpsertManagedServerOperationStep from ._models_py3 import Usage from ._models_py3 import VirtualCluster from ._models_py3 import VirtualClusterUpdate @@ -274,6 +278,8 @@ from ._models import ManagedInstanceLongTermRetentionBackup from ._models import ManagedInstanceLongTermRetentionPolicy from ._models import ManagedInstanceOperation + from ._models import ManagedInstanceOperationParametersPair + from ._models import ManagedInstanceOperationSteps from ._models import ManagedInstancePairInfo from ._models import ManagedInstanceUpdate from ._models import ManagedInstanceVcoresCapability @@ -356,6 +362,8 @@ from ._models import TransparentDataEncryption from ._models import TransparentDataEncryptionActivity from ._models import UnlinkParameters + from ._models import UpsertManagedServerOperationParameters + from ._models import UpsertManagedServerOperationStep from ._models import Usage from ._models import VirtualCluster from ._models import VirtualClusterUpdate @@ -521,13 +529,13 @@ CapabilityStatus, PerformanceLevelUnit, PauseDelayTimeUnit, - ManagedDatabaseStatus, - ManagedDatabaseCreateMode, SyncGroupLogType, SyncConflictResolutionPolicy, SyncGroupState, SyncDirection, SyncMemberState, + ManagedDatabaseStatus, + ManagedDatabaseCreateMode, LongTermRetentionDatabaseState, VulnerabilityAssessmentPolicyBaselineName, SensitivityLabelSource, @@ -628,6 +636,8 @@ 'ManagedInstanceLongTermRetentionBackup', 'ManagedInstanceLongTermRetentionPolicy', 'ManagedInstanceOperation', + 'ManagedInstanceOperationParametersPair', + 'ManagedInstanceOperationSteps', 'ManagedInstancePairInfo', 'ManagedInstanceUpdate', 'ManagedInstanceVcoresCapability', @@ -710,6 +720,8 @@ 'TransparentDataEncryption', 'TransparentDataEncryptionActivity', 'UnlinkParameters', + 'UpsertManagedServerOperationParameters', + 'UpsertManagedServerOperationStep', 'Usage', 'VirtualCluster', 'VirtualClusterUpdate', @@ -790,7 +802,6 @@ 'ManagedInstanceLongTermRetentionPolicyPaged', 'WorkloadGroupPaged', 'WorkloadClassifierPaged', - 'ManagedDatabasePaged', 'ServerAzureADAdministratorPaged', 'ManagedInstanceOperationPaged', 'SyncDatabaseIdPropertiesPaged', @@ -798,6 +809,7 @@ 'SyncGroupLogPropertiesPaged', 'SyncGroupPaged', 'SyncMemberPaged', + 'ManagedDatabasePaged', 'ServerConnectionType', 'SecurityAlertPolicyState', 'SecurityAlertPolicyEmailAccountAdmins', @@ -874,13 +886,13 @@ 'CapabilityStatus', 'PerformanceLevelUnit', 'PauseDelayTimeUnit', - 'ManagedDatabaseStatus', - 'ManagedDatabaseCreateMode', 'SyncGroupLogType', 'SyncConflictResolutionPolicy', 'SyncGroupState', 'SyncDirection', 'SyncMemberState', + 'ManagedDatabaseStatus', + 'ManagedDatabaseCreateMode', 'LongTermRetentionDatabaseState', 'VulnerabilityAssessmentPolicyBaselineName', 'SensitivityLabelSource', diff --git a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_models.py b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_models.py index d634bd9dd34d..0afc5b980357 100644 --- a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_models.py +++ b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_models.py @@ -4740,6 +4740,12 @@ class ManagedDatabase(TrackedResource): :param long_term_retention_backup_resource_id: The name of the Long Term Retention backup to be used for restore of this managed database. :type long_term_retention_backup_resource_id: str + :param auto_complete_restore: Whether to auto complete restore of this + managed database. + :type auto_complete_restore: bool + :param last_backup_name: Last backup file name for restore of this managed + database. + :type last_backup_name: str """ _validation = { @@ -4775,6 +4781,8 @@ class ManagedDatabase(TrackedResource): 'failover_group_id': {'key': 'properties.failoverGroupId', 'type': 'str'}, 'recoverable_database_id': {'key': 'properties.recoverableDatabaseId', 'type': 'str'}, 'long_term_retention_backup_resource_id': {'key': 'properties.longTermRetentionBackupResourceId', 'type': 'str'}, + 'auto_complete_restore': {'key': 'properties.autoCompleteRestore', 'type': 'bool'}, + 'last_backup_name': {'key': 'properties.lastBackupName', 'type': 'str'}, } def __init__(self, **kwargs): @@ -4794,6 +4802,8 @@ def __init__(self, **kwargs): self.failover_group_id = None self.recoverable_database_id = kwargs.get('recoverable_database_id', None) self.long_term_retention_backup_resource_id = kwargs.get('long_term_retention_backup_resource_id', None) + self.auto_complete_restore = kwargs.get('auto_complete_restore', None) + self.last_backup_name = kwargs.get('last_backup_name', None) class ManagedDatabaseRestoreDetailsResult(ProxyResource): @@ -5015,6 +5025,12 @@ class ManagedDatabaseUpdate(Model): :param long_term_retention_backup_resource_id: The name of the Long Term Retention backup to be used for restore of this managed database. :type long_term_retention_backup_resource_id: str + :param auto_complete_restore: Whether to auto complete restore of this + managed database. + :type auto_complete_restore: bool + :param last_backup_name: Last backup file name for restore of this managed + database. + :type last_backup_name: str :param tags: Resource tags. :type tags: dict[str, str] """ @@ -5043,6 +5059,8 @@ class ManagedDatabaseUpdate(Model): 'failover_group_id': {'key': 'properties.failoverGroupId', 'type': 'str'}, 'recoverable_database_id': {'key': 'properties.recoverableDatabaseId', 'type': 'str'}, 'long_term_retention_backup_resource_id': {'key': 'properties.longTermRetentionBackupResourceId', 'type': 'str'}, + 'auto_complete_restore': {'key': 'properties.autoCompleteRestore', 'type': 'bool'}, + 'last_backup_name': {'key': 'properties.lastBackupName', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, } @@ -5063,6 +5081,8 @@ def __init__(self, **kwargs): self.failover_group_id = None self.recoverable_database_id = kwargs.get('recoverable_database_id', None) self.long_term_retention_backup_resource_id = kwargs.get('long_term_retention_backup_resource_id', None) + self.auto_complete_restore = kwargs.get('auto_complete_restore', None) + self.last_backup_name = kwargs.get('last_backup_name', None) self.tags = kwargs.get('tags', None) @@ -5649,6 +5669,12 @@ class ManagedInstanceOperation(ProxyResource): :vartype description: str :ivar is_cancellable: Whether the operation can be cancelled. :vartype is_cancellable: bool + :ivar operation_parameters: The operation parameters. + :vartype operation_parameters: + ~azure.mgmt.sql.models.ManagedInstanceOperationParametersPair + :ivar operation_steps: The operation steps. + :vartype operation_steps: + ~azure.mgmt.sql.models.ManagedInstanceOperationSteps """ _validation = { @@ -5668,6 +5694,8 @@ class ManagedInstanceOperation(ProxyResource): 'estimated_completion_time': {'readonly': True}, 'description': {'readonly': True}, 'is_cancellable': {'readonly': True}, + 'operation_parameters': {'readonly': True}, + 'operation_steps': {'readonly': True}, } _attribute_map = { @@ -5687,6 +5715,8 @@ class ManagedInstanceOperation(ProxyResource): 'estimated_completion_time': {'key': 'properties.estimatedCompletionTime', 'type': 'iso-8601'}, 'description': {'key': 'properties.description', 'type': 'str'}, 'is_cancellable': {'key': 'properties.isCancellable', 'type': 'bool'}, + 'operation_parameters': {'key': 'properties.operationParameters', 'type': 'ManagedInstanceOperationParametersPair'}, + 'operation_steps': {'key': 'properties.operationSteps', 'type': 'ManagedInstanceOperationSteps'}, } def __init__(self, **kwargs): @@ -5704,6 +5734,72 @@ def __init__(self, **kwargs): self.estimated_completion_time = None self.description = None self.is_cancellable = None + self.operation_parameters = None + self.operation_steps = None + + +class ManagedInstanceOperationParametersPair(Model): + """The parameters of a managed instance operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar current_parameters: The current parameters. + :vartype current_parameters: + ~azure.mgmt.sql.models.UpsertManagedServerOperationParameters + :ivar requested_parameters: The requested parameters. + :vartype requested_parameters: + ~azure.mgmt.sql.models.UpsertManagedServerOperationParameters + """ + + _validation = { + 'current_parameters': {'readonly': True}, + 'requested_parameters': {'readonly': True}, + } + + _attribute_map = { + 'current_parameters': {'key': 'currentParameters', 'type': 'UpsertManagedServerOperationParameters'}, + 'requested_parameters': {'key': 'requestedParameters', 'type': 'UpsertManagedServerOperationParameters'}, + } + + def __init__(self, **kwargs): + super(ManagedInstanceOperationParametersPair, self).__init__(**kwargs) + self.current_parameters = None + self.requested_parameters = None + + +class ManagedInstanceOperationSteps(Model): + """The steps of a managed instance operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar total_steps: The total number of operation steps. + :vartype total_steps: str + :ivar current_step: The number of current operation steps. + :vartype current_step: int + :ivar steps_list: The operation steps list. + :vartype steps_list: + list[~azure.mgmt.sql.models.UpsertManagedServerOperationStep] + """ + + _validation = { + 'total_steps': {'readonly': True}, + 'current_step': {'readonly': True}, + 'steps_list': {'readonly': True}, + } + + _attribute_map = { + 'total_steps': {'key': 'totalSteps', 'type': 'str'}, + 'current_step': {'key': 'currentStep', 'type': 'int'}, + 'steps_list': {'key': 'stepsList', 'type': '[UpsertManagedServerOperationStep]'}, + } + + def __init__(self, **kwargs): + super(ManagedInstanceOperationSteps, self).__init__(**kwargs) + self.total_steps = None + self.current_step = None + self.steps_list = None class ManagedInstancePairInfo(Model): @@ -9695,6 +9791,59 @@ def __init__(self, **kwargs): self.forced_termination = kwargs.get('forced_termination', None) +class UpsertManagedServerOperationParameters(Model): + """UpsertManagedServerOperationParameters. + + :param family: + :type family: str + :param tier: + :type tier: str + :param v_cores: + :type v_cores: int + :param storage_size_in_gb: + :type storage_size_in_gb: int + """ + + _attribute_map = { + 'family': {'key': 'family', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'v_cores': {'key': 'vCores', 'type': 'int'}, + 'storage_size_in_gb': {'key': 'storageSizeInGB', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(UpsertManagedServerOperationParameters, self).__init__(**kwargs) + self.family = kwargs.get('family', None) + self.tier = kwargs.get('tier', None) + self.v_cores = kwargs.get('v_cores', None) + self.storage_size_in_gb = kwargs.get('storage_size_in_gb', None) + + +class UpsertManagedServerOperationStep(Model): + """UpsertManagedServerOperationStep. + + :param order: + :type order: int + :param name: + :type name: str + :param status: Possible values include: 'NotStarted', 'InProgress', + 'SlowedDown', 'Completed', 'Failed', 'Canceled' + :type status: str or ~azure.mgmt.sql.models.enum + """ + + _attribute_map = { + 'order': {'key': 'order', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UpsertManagedServerOperationStep, self).__init__(**kwargs) + self.order = kwargs.get('order', None) + self.name = kwargs.get('name', None) + self.status = kwargs.get('status', None) + + class Usage(Model): """ARM usage. diff --git a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_models_py3.py b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_models_py3.py index 0c5b5b9e6595..2145cfc94924 100644 --- a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_models_py3.py +++ b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_models_py3.py @@ -4740,6 +4740,12 @@ class ManagedDatabase(TrackedResource): :param long_term_retention_backup_resource_id: The name of the Long Term Retention backup to be used for restore of this managed database. :type long_term_retention_backup_resource_id: str + :param auto_complete_restore: Whether to auto complete restore of this + managed database. + :type auto_complete_restore: bool + :param last_backup_name: Last backup file name for restore of this managed + database. + :type last_backup_name: str """ _validation = { @@ -4775,9 +4781,11 @@ class ManagedDatabase(TrackedResource): 'failover_group_id': {'key': 'properties.failoverGroupId', 'type': 'str'}, 'recoverable_database_id': {'key': 'properties.recoverableDatabaseId', 'type': 'str'}, 'long_term_retention_backup_resource_id': {'key': 'properties.longTermRetentionBackupResourceId', 'type': 'str'}, + 'auto_complete_restore': {'key': 'properties.autoCompleteRestore', 'type': 'bool'}, + 'last_backup_name': {'key': 'properties.lastBackupName', 'type': 'str'}, } - def __init__(self, *, location: str, tags=None, collation: str=None, restore_point_in_time=None, catalog_collation=None, create_mode=None, storage_container_uri: str=None, source_database_id: str=None, restorable_dropped_database_id: str=None, storage_container_sas_token: str=None, recoverable_database_id: str=None, long_term_retention_backup_resource_id: str=None, **kwargs) -> None: + def __init__(self, *, location: str, tags=None, collation: str=None, restore_point_in_time=None, catalog_collation=None, create_mode=None, storage_container_uri: str=None, source_database_id: str=None, restorable_dropped_database_id: str=None, storage_container_sas_token: str=None, recoverable_database_id: str=None, long_term_retention_backup_resource_id: str=None, auto_complete_restore: bool=None, last_backup_name: str=None, **kwargs) -> None: super(ManagedDatabase, self).__init__(location=location, tags=tags, **kwargs) self.collation = collation self.status = None @@ -4794,6 +4802,8 @@ def __init__(self, *, location: str, tags=None, collation: str=None, restore_poi self.failover_group_id = None self.recoverable_database_id = recoverable_database_id self.long_term_retention_backup_resource_id = long_term_retention_backup_resource_id + self.auto_complete_restore = auto_complete_restore + self.last_backup_name = last_backup_name class ManagedDatabaseRestoreDetailsResult(ProxyResource): @@ -5015,6 +5025,12 @@ class ManagedDatabaseUpdate(Model): :param long_term_retention_backup_resource_id: The name of the Long Term Retention backup to be used for restore of this managed database. :type long_term_retention_backup_resource_id: str + :param auto_complete_restore: Whether to auto complete restore of this + managed database. + :type auto_complete_restore: bool + :param last_backup_name: Last backup file name for restore of this managed + database. + :type last_backup_name: str :param tags: Resource tags. :type tags: dict[str, str] """ @@ -5043,10 +5059,12 @@ class ManagedDatabaseUpdate(Model): 'failover_group_id': {'key': 'properties.failoverGroupId', 'type': 'str'}, 'recoverable_database_id': {'key': 'properties.recoverableDatabaseId', 'type': 'str'}, 'long_term_retention_backup_resource_id': {'key': 'properties.longTermRetentionBackupResourceId', 'type': 'str'}, + 'auto_complete_restore': {'key': 'properties.autoCompleteRestore', 'type': 'bool'}, + 'last_backup_name': {'key': 'properties.lastBackupName', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self, *, collation: str=None, restore_point_in_time=None, catalog_collation=None, create_mode=None, storage_container_uri: str=None, source_database_id: str=None, restorable_dropped_database_id: str=None, storage_container_sas_token: str=None, recoverable_database_id: str=None, long_term_retention_backup_resource_id: str=None, tags=None, **kwargs) -> None: + def __init__(self, *, collation: str=None, restore_point_in_time=None, catalog_collation=None, create_mode=None, storage_container_uri: str=None, source_database_id: str=None, restorable_dropped_database_id: str=None, storage_container_sas_token: str=None, recoverable_database_id: str=None, long_term_retention_backup_resource_id: str=None, auto_complete_restore: bool=None, last_backup_name: str=None, tags=None, **kwargs) -> None: super(ManagedDatabaseUpdate, self).__init__(**kwargs) self.collation = collation self.status = None @@ -5063,6 +5081,8 @@ def __init__(self, *, collation: str=None, restore_point_in_time=None, catalog_c self.failover_group_id = None self.recoverable_database_id = recoverable_database_id self.long_term_retention_backup_resource_id = long_term_retention_backup_resource_id + self.auto_complete_restore = auto_complete_restore + self.last_backup_name = last_backup_name self.tags = tags @@ -5649,6 +5669,12 @@ class ManagedInstanceOperation(ProxyResource): :vartype description: str :ivar is_cancellable: Whether the operation can be cancelled. :vartype is_cancellable: bool + :ivar operation_parameters: The operation parameters. + :vartype operation_parameters: + ~azure.mgmt.sql.models.ManagedInstanceOperationParametersPair + :ivar operation_steps: The operation steps. + :vartype operation_steps: + ~azure.mgmt.sql.models.ManagedInstanceOperationSteps """ _validation = { @@ -5668,6 +5694,8 @@ class ManagedInstanceOperation(ProxyResource): 'estimated_completion_time': {'readonly': True}, 'description': {'readonly': True}, 'is_cancellable': {'readonly': True}, + 'operation_parameters': {'readonly': True}, + 'operation_steps': {'readonly': True}, } _attribute_map = { @@ -5687,6 +5715,8 @@ class ManagedInstanceOperation(ProxyResource): 'estimated_completion_time': {'key': 'properties.estimatedCompletionTime', 'type': 'iso-8601'}, 'description': {'key': 'properties.description', 'type': 'str'}, 'is_cancellable': {'key': 'properties.isCancellable', 'type': 'bool'}, + 'operation_parameters': {'key': 'properties.operationParameters', 'type': 'ManagedInstanceOperationParametersPair'}, + 'operation_steps': {'key': 'properties.operationSteps', 'type': 'ManagedInstanceOperationSteps'}, } def __init__(self, **kwargs) -> None: @@ -5704,6 +5734,72 @@ def __init__(self, **kwargs) -> None: self.estimated_completion_time = None self.description = None self.is_cancellable = None + self.operation_parameters = None + self.operation_steps = None + + +class ManagedInstanceOperationParametersPair(Model): + """The parameters of a managed instance operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar current_parameters: The current parameters. + :vartype current_parameters: + ~azure.mgmt.sql.models.UpsertManagedServerOperationParameters + :ivar requested_parameters: The requested parameters. + :vartype requested_parameters: + ~azure.mgmt.sql.models.UpsertManagedServerOperationParameters + """ + + _validation = { + 'current_parameters': {'readonly': True}, + 'requested_parameters': {'readonly': True}, + } + + _attribute_map = { + 'current_parameters': {'key': 'currentParameters', 'type': 'UpsertManagedServerOperationParameters'}, + 'requested_parameters': {'key': 'requestedParameters', 'type': 'UpsertManagedServerOperationParameters'}, + } + + def __init__(self, **kwargs) -> None: + super(ManagedInstanceOperationParametersPair, self).__init__(**kwargs) + self.current_parameters = None + self.requested_parameters = None + + +class ManagedInstanceOperationSteps(Model): + """The steps of a managed instance operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar total_steps: The total number of operation steps. + :vartype total_steps: str + :ivar current_step: The number of current operation steps. + :vartype current_step: int + :ivar steps_list: The operation steps list. + :vartype steps_list: + list[~azure.mgmt.sql.models.UpsertManagedServerOperationStep] + """ + + _validation = { + 'total_steps': {'readonly': True}, + 'current_step': {'readonly': True}, + 'steps_list': {'readonly': True}, + } + + _attribute_map = { + 'total_steps': {'key': 'totalSteps', 'type': 'str'}, + 'current_step': {'key': 'currentStep', 'type': 'int'}, + 'steps_list': {'key': 'stepsList', 'type': '[UpsertManagedServerOperationStep]'}, + } + + def __init__(self, **kwargs) -> None: + super(ManagedInstanceOperationSteps, self).__init__(**kwargs) + self.total_steps = None + self.current_step = None + self.steps_list = None class ManagedInstancePairInfo(Model): @@ -9695,6 +9791,59 @@ def __init__(self, *, forced_termination: bool=None, **kwargs) -> None: self.forced_termination = forced_termination +class UpsertManagedServerOperationParameters(Model): + """UpsertManagedServerOperationParameters. + + :param family: + :type family: str + :param tier: + :type tier: str + :param v_cores: + :type v_cores: int + :param storage_size_in_gb: + :type storage_size_in_gb: int + """ + + _attribute_map = { + 'family': {'key': 'family', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'v_cores': {'key': 'vCores', 'type': 'int'}, + 'storage_size_in_gb': {'key': 'storageSizeInGB', 'type': 'int'}, + } + + def __init__(self, *, family: str=None, tier: str=None, v_cores: int=None, storage_size_in_gb: int=None, **kwargs) -> None: + super(UpsertManagedServerOperationParameters, self).__init__(**kwargs) + self.family = family + self.tier = tier + self.v_cores = v_cores + self.storage_size_in_gb = storage_size_in_gb + + +class UpsertManagedServerOperationStep(Model): + """UpsertManagedServerOperationStep. + + :param order: + :type order: int + :param name: + :type name: str + :param status: Possible values include: 'NotStarted', 'InProgress', + 'SlowedDown', 'Completed', 'Failed', 'Canceled' + :type status: str or ~azure.mgmt.sql.models.enum + """ + + _attribute_map = { + 'order': {'key': 'order', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__(self, *, order: int=None, name: str=None, status=None, **kwargs) -> None: + super(UpsertManagedServerOperationStep, self).__init__(**kwargs) + self.order = order + self.name = name + self.status = status + + class Usage(Model): """ARM usage. diff --git a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_paged_models.py b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_paged_models.py index 62947ee575a3..4c70305b679c 100644 --- a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_paged_models.py +++ b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_paged_models.py @@ -935,19 +935,6 @@ class WorkloadClassifierPaged(Paged): def __init__(self, *args, **kwargs): super(WorkloadClassifierPaged, self).__init__(*args, **kwargs) -class ManagedDatabasePaged(Paged): - """ - A paging container for iterating over a list of :class:`ManagedDatabase ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[ManagedDatabase]'} - } - - def __init__(self, *args, **kwargs): - - super(ManagedDatabasePaged, self).__init__(*args, **kwargs) class ServerAzureADAdministratorPaged(Paged): """ A paging container for iterating over a list of :class:`ServerAzureADAdministrator ` object @@ -1039,3 +1026,16 @@ class SyncMemberPaged(Paged): def __init__(self, *args, **kwargs): super(SyncMemberPaged, self).__init__(*args, **kwargs) +class ManagedDatabasePaged(Paged): + """ + A paging container for iterating over a list of :class:`ManagedDatabase ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ManagedDatabase]'} + } + + def __init__(self, *args, **kwargs): + + super(ManagedDatabasePaged, self).__init__(*args, **kwargs) diff --git a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_sql_management_client_enums.py b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_sql_management_client_enums.py index 70e7a417cdfe..b8275e2d4df1 100644 --- a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_sql_management_client_enums.py +++ b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/models/_sql_management_client_enums.py @@ -657,26 +657,6 @@ class PauseDelayTimeUnit(str, Enum): minutes = "Minutes" -class ManagedDatabaseStatus(str, Enum): - - online = "Online" - offline = "Offline" - shutdown = "Shutdown" - creating = "Creating" - inaccessible = "Inaccessible" - restoring = "Restoring" - updating = "Updating" - - -class ManagedDatabaseCreateMode(str, Enum): - - default = "Default" - restore_external_backup = "RestoreExternalBackup" - point_in_time_restore = "PointInTimeRestore" - recovery = "Recovery" - restore_long_term_retention_backup = "RestoreLongTermRetentionBackup" - - class SyncGroupLogType(str, Enum): all = "All" @@ -729,6 +709,26 @@ class SyncMemberState(str, Enum): un_reprovisioned = "UnReprovisioned" +class ManagedDatabaseStatus(str, Enum): + + online = "Online" + offline = "Offline" + shutdown = "Shutdown" + creating = "Creating" + inaccessible = "Inaccessible" + restoring = "Restoring" + updating = "Updating" + + +class ManagedDatabaseCreateMode(str, Enum): + + default = "Default" + restore_external_backup = "RestoreExternalBackup" + point_in_time_restore = "PointInTimeRestore" + recovery = "Recovery" + restore_long_term_retention_backup = "RestoreLongTermRetentionBackup" + + class LongTermRetentionDatabaseState(str, Enum): all = "All" diff --git a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/__init__.py b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/__init__.py index 9dc1718f5420..9ab7784a088f 100644 --- a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/__init__.py +++ b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/__init__.py @@ -94,12 +94,12 @@ from ._managed_instance_long_term_retention_policies_operations import ManagedInstanceLongTermRetentionPoliciesOperations from ._workload_groups_operations import WorkloadGroupsOperations from ._workload_classifiers_operations import WorkloadClassifiersOperations -from ._managed_database_restore_details_operations import ManagedDatabaseRestoreDetailsOperations -from ._managed_databases_operations import ManagedDatabasesOperations from ._server_azure_ad_administrators_operations import ServerAzureADAdministratorsOperations from ._managed_instance_operations import ManagedInstanceOperations from ._sync_groups_operations import SyncGroupsOperations from ._sync_members_operations import SyncMembersOperations +from ._managed_database_restore_details_operations import ManagedDatabaseRestoreDetailsOperations +from ._managed_databases_operations import ManagedDatabasesOperations __all__ = [ 'RecoverableDatabasesOperations', @@ -187,10 +187,10 @@ 'ManagedInstanceLongTermRetentionPoliciesOperations', 'WorkloadGroupsOperations', 'WorkloadClassifiersOperations', - 'ManagedDatabaseRestoreDetailsOperations', - 'ManagedDatabasesOperations', 'ServerAzureADAdministratorsOperations', 'ManagedInstanceOperations', 'SyncGroupsOperations', 'SyncMembersOperations', + 'ManagedDatabaseRestoreDetailsOperations', + 'ManagedDatabasesOperations', ] diff --git a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/_managed_database_restore_details_operations.py b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/_managed_database_restore_details_operations.py index 5bbe912ae775..16e6a3439aae 100644 --- a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/_managed_database_restore_details_operations.py +++ b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/_managed_database_restore_details_operations.py @@ -26,7 +26,7 @@ class ManagedDatabaseRestoreDetailsOperations(object): :param serializer: An object model serializer. :param deserializer: An object model deserializer. :ivar restore_details_name: The name of the restore details to retrieve. Constant value: "Default". - :ivar api_version: The API version to use for the request. Constant value: "2019-06-01-preview". + :ivar api_version: The API version to use for this operation. Constant value: "2020-02-02-preview". """ models = models @@ -37,7 +37,7 @@ def __init__(self, client, config, serializer, deserializer): self._serialize = serializer self._deserialize = deserializer self.restore_details_name = "Default" - self.api_version = "2019-06-01-preview" + self.api_version = "2020-02-02-preview" self.config = config @@ -45,9 +45,8 @@ def get( self, resource_group_name, managed_instance_name, database_name, custom_headers=None, raw=False, **operation_config): """Gets managed database restore details. - :param resource_group_name: The name of the resource group that - contains the resource. You can obtain this value from the Azure - Resource Manager API or the portal. + :param resource_group_name: The name of the resource group. The name + is case insensitive. :type resource_group_name: str :param managed_instance_name: The name of the managed instance. :type managed_instance_name: str @@ -67,7 +66,7 @@ def get( # Construct URL url = self.get.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), 'databaseName': self._serialize.url("database_name", database_name, 'str'), 'restoreDetailsName': self._serialize.url("self.restore_details_name", self.restore_details_name, 'str'), @@ -77,7 +76,7 @@ def get( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) # Construct headers header_parameters = {} diff --git a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/_managed_databases_operations.py b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/_managed_databases_operations.py index 07db1c34032a..fb53b4aa9299 100644 --- a/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/_managed_databases_operations.py +++ b/sdk/sql/azure-mgmt-sql/azure/mgmt/sql/operations/_managed_databases_operations.py @@ -27,7 +27,7 @@ class ManagedDatabasesOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The API version to use for the request. Constant value: "2019-06-01-preview". + :ivar api_version: The API version to use for this operation. Constant value: "2020-02-02-preview". """ models = models @@ -37,7 +37,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2019-06-01-preview" + self.api_version = "2020-02-02-preview" self.config = config @@ -45,9 +45,8 @@ def list_by_instance( self, resource_group_name, managed_instance_name, custom_headers=None, raw=False, **operation_config): """Gets a list of managed databases. - :param resource_group_name: The name of the resource group that - contains the resource. You can obtain this value from the Azure - Resource Manager API or the portal. + :param resource_group_name: The name of the resource group. The name + is case insensitive. :type resource_group_name: str :param managed_instance_name: The name of the managed instance. :type managed_instance_name: str @@ -66,7 +65,7 @@ def prepare_request(next_link=None): # Construct URL url = self.list_by_instance.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -74,7 +73,7 @@ def prepare_request(next_link=None): # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) else: url = next_link @@ -119,9 +118,8 @@ def get( self, resource_group_name, managed_instance_name, database_name, custom_headers=None, raw=False, **operation_config): """Gets a managed database. - :param resource_group_name: The name of the resource group that - contains the resource. You can obtain this value from the Azure - Resource Manager API or the portal. + :param resource_group_name: The name of the resource group. The name + is case insensitive. :type resource_group_name: str :param managed_instance_name: The name of the managed instance. :type managed_instance_name: str @@ -140,7 +138,7 @@ def get( # Construct URL url = self.get.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), 'databaseName': self._serialize.url("database_name", database_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') @@ -149,7 +147,7 @@ def get( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) # Construct headers header_parameters = {} @@ -187,7 +185,7 @@ def _create_or_update_initial( # Construct URL url = self.create_or_update.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), 'databaseName': self._serialize.url("database_name", database_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') @@ -196,7 +194,7 @@ def _create_or_update_initial( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) # Construct headers header_parameters = {} @@ -238,9 +236,8 @@ def create_or_update( self, resource_group_name, managed_instance_name, database_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): """Creates a new database or updates an existing database. - :param resource_group_name: The name of the resource group that - contains the resource. You can obtain this value from the Azure - Resource Manager API or the portal. + :param resource_group_name: The name of the resource group. The name + is case insensitive. :type resource_group_name: str :param managed_instance_name: The name of the managed instance. :type managed_instance_name: str @@ -295,7 +292,7 @@ def _delete_initial( # Construct URL url = self.delete.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), 'databaseName': self._serialize.url("database_name", database_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') @@ -304,7 +301,7 @@ def _delete_initial( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) # Construct headers header_parameters = {} @@ -332,9 +329,8 @@ def delete( self, resource_group_name, managed_instance_name, database_name, custom_headers=None, raw=False, polling=True, **operation_config): """Deletes a managed database. - :param resource_group_name: The name of the resource group that - contains the resource. You can obtain this value from the Azure - Resource Manager API or the portal. + :param resource_group_name: The name of the resource group. The name + is case insensitive. :type resource_group_name: str :param managed_instance_name: The name of the managed instance. :type managed_instance_name: str @@ -380,7 +376,7 @@ def _update_initial( # Construct URL url = self.update.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), 'databaseName': self._serialize.url("database_name", database_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') @@ -389,7 +385,7 @@ def _update_initial( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) # Construct headers header_parameters = {} @@ -429,9 +425,8 @@ def update( self, resource_group_name, managed_instance_name, database_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): """Updates an existing database. - :param resource_group_name: The name of the resource group that - contains the resource. You can obtain this value from the Azure - Resource Manager API or the portal. + :param resource_group_name: The name of the resource group. The name + is case insensitive. :type resource_group_name: str :param managed_instance_name: The name of the managed instance. :type managed_instance_name: str @@ -484,9 +479,8 @@ def list_inaccessible_by_instance( self, resource_group_name, managed_instance_name, custom_headers=None, raw=False, **operation_config): """Gets a list of inaccessible managed databases in a managed instance. - :param resource_group_name: The name of the resource group that - contains the resource. You can obtain this value from the Azure - Resource Manager API or the portal. + :param resource_group_name: The name of the resource group. The name + is case insensitive. :type resource_group_name: str :param managed_instance_name: The name of the managed instance. :type managed_instance_name: str @@ -505,7 +499,7 @@ def prepare_request(next_link=None): # Construct URL url = self.list_inaccessible_by_instance.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -513,7 +507,7 @@ def prepare_request(next_link=None): # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) else: url = next_link @@ -562,7 +556,7 @@ def _complete_restore_initial( # Construct URL url = self.complete_restore.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), 'databaseName': self._serialize.url("database_name", database_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') @@ -571,7 +565,7 @@ def _complete_restore_initial( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) # Construct headers header_parameters = {} @@ -603,9 +597,8 @@ def complete_restore( self, resource_group_name, managed_instance_name, database_name, last_backup_name, custom_headers=None, raw=False, polling=True, **operation_config): """Completes the restore operation on a managed database. - :param resource_group_name: The name of the resource group that - contains the resource. You can obtain this value from the Azure - Resource Manager API or the portal. + :param resource_group_name: The name of the resource group. The name + is case insensitive. :type resource_group_name: str :param managed_instance_name: The name of the managed instance. :type managed_instance_name: str