From 3fbb0f9e1f86acc4e0a8cb13b790dccf32e3860f Mon Sep 17 00:00:00 2001 From: Azure CLI Bot Date: Tue, 24 Aug 2021 22:26:42 +0800 Subject: [PATCH] [AutoRelease] t2-datamigration-2021-08-19-04035 (#20349) * CodeGen from PR 15259 in Azure/azure-rest-api-specs Dev datamigration microsoft.data migration 2021 06 30 (#15259) * Created new api version and refactoring changes (such as fixing new build restrictions) * Adding breaking changes * Adding location to the services update example * Adding location for projects update and refactoring the task command * Resolving tasks command ModelValidation test failure * Resolving issue based on zhenglaizhang's recommendation * Adding comma to resolve issue Co-authored-by: Artem Pavlichenko * version,CHANGELOG Co-authored-by: SDKAuto Co-authored-by: Artem Pavlichenko Co-authored-by: PythonSdkPipelines --- .../azure-mgmt-datamigration/CHANGELOG.md | 22 + .../azure-mgmt-datamigration/MANIFEST.in | 1 + .../azure-mgmt-datamigration/_meta.json | 11 + .../mgmt/datamigration/_configuration.py | 2 +- .../_data_migration_management_client.py | 19 + .../azure/mgmt/datamigration/_metadata.json | 14 +- .../azure/mgmt/datamigration/_version.py | 2 +- .../mgmt/datamigration/aio/_configuration.py | 2 +- .../aio/_data_migration_management_client.py | 18 + .../aio/operations/_files_operations.py | 28 +- .../aio/operations/_operations.py | 4 +- .../aio/operations/_projects_operations.py | 20 +- .../operations/_resource_skus_operations.py | 4 +- .../operations/_service_tasks_operations.py | 24 +- .../aio/operations/_services_operations.py | 78 +- .../aio/operations/_tasks_operations.py | 28 +- .../aio/operations/_usages_operations.py | 4 +- .../mgmt/datamigration/models/__init__.py | 44 + ..._data_migration_management_client_enums.py | 9 + .../mgmt/datamigration/models/_models.py | 1307 +++++++++++++--- .../mgmt/datamigration/models/_models_py3.py | 1338 ++++++++++++++--- .../operations/_files_operations.py | 14 +- .../datamigration/operations/_operations.py | 2 +- .../operations/_projects_operations.py | 10 +- .../operations/_resource_skus_operations.py | 2 +- .../operations/_service_tasks_operations.py | 12 +- .../operations/_services_operations.py | 44 +- .../operations/_tasks_operations.py | 14 +- .../operations/_usages_operations.py | 2 +- 29 files changed, 2473 insertions(+), 606 deletions(-) create mode 100644 sdk/datamigration/azure-mgmt-datamigration/_meta.json diff --git a/sdk/datamigration/azure-mgmt-datamigration/CHANGELOG.md b/sdk/datamigration/azure-mgmt-datamigration/CHANGELOG.md index 9e1f4a6f0afe..7030c0e68d8b 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/CHANGELOG.md +++ b/sdk/datamigration/azure-mgmt-datamigration/CHANGELOG.md @@ -1,5 +1,27 @@ # Release History +## 10.0.0 (2021-08-19) + +**Features** + + - Model ConnectToTargetAzureDbForMySqlTaskInput has a new parameter is_offline_migration + - Model MySqlConnectionInfo has a new parameter encrypt_connection + - Model TrackedResource has a new parameter system_data + - Model Project has a new parameter system_data + - Model ApiError has a new parameter system_data + - Model ProjectFile has a new parameter system_data + - Model DataMigrationService has a new parameter system_data + - Model ConnectToSourceMySqlTaskInput has a new parameter is_offline_migration + - Model ProjectTask has a new parameter system_data + +**Breaking changes** + + - Parameter result_type of model MigrateSchemaSqlServerSqlDbTaskOutputError is now required + - Parameter result_type of model MigrateSchemaSqlServerSqlDbTaskOutput is now required + - Parameter result_type of model MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel is now required + - Parameter result_type of model MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel is now required + - Parameter result_type of model MigrateSchemaSqlTaskOutputError is now required + ## 9.0.0 (2021-04-07) **Features** diff --git a/sdk/datamigration/azure-mgmt-datamigration/MANIFEST.in b/sdk/datamigration/azure-mgmt-datamigration/MANIFEST.in index a3cb07df8765..3a9b6517412b 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/MANIFEST.in +++ b/sdk/datamigration/azure-mgmt-datamigration/MANIFEST.in @@ -1,3 +1,4 @@ +include _meta.json recursive-include tests *.py *.yaml include *.md include azure/__init__.py diff --git a/sdk/datamigration/azure-mgmt-datamigration/_meta.json b/sdk/datamigration/azure-mgmt-datamigration/_meta.json new file mode 100644 index 000000000000..a8d432b309aa --- /dev/null +++ b/sdk/datamigration/azure-mgmt-datamigration/_meta.json @@ -0,0 +1,11 @@ +{ + "autorest": "3.4.5", + "use": [ + "@autorest/python@5.8.4", + "@autorest/modelerfour@4.19.2" + ], + "commit": "850425353115aa23d469f12f44847ff9e8326294", + "repository_url": "https://github.com/Azure/azure-rest-api-specs", + "autorest_command": "autorest specification/datamigration/resource-manager/readme.md --multiapi --python --python-mode=update --python-sdks-folder=/home/vsts/work/1/s/azure-sdk-for-python/sdk --track2 --use=@autorest/python@5.8.4 --use=@autorest/modelerfour@4.19.2 --version=3.4.5", + "readme": "specification/datamigration/resource-manager/readme.md" +} \ No newline at end of file diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_configuration.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_configuration.py index fb14e90d4c10..1cf3678b0b78 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_configuration.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_configuration.py @@ -48,7 +48,7 @@ def __init__( self.credential = credential self.subscription_id = subscription_id - self.api_version = "2018-07-15-preview" + self.api_version = "2021-06-30" self.credential_scopes = kwargs.pop('credential_scopes', ['https://management.azure.com/.default']) kwargs.setdefault('sdk_moniker', 'mgmt-datamigration/{}'.format(VERSION)) self._configure(**kwargs) diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_data_migration_management_client.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_data_migration_management_client.py index 5a89a72e4d7a..356d1f60be9b 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_data_migration_management_client.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_data_migration_management_client.py @@ -16,6 +16,7 @@ from typing import Any, Optional from azure.core.credentials import TokenCredential + from azure.core.pipeline.transport import HttpRequest, HttpResponse from ._configuration import DataMigrationManagementClientConfiguration from .operations import ResourceSkusOperations @@ -91,6 +92,24 @@ def __init__( self.files = FilesOperations( self._client, self._config, self._serialize, self._deserialize) + def _send_request(self, http_request, **kwargs): + # type: (HttpRequest, Any) -> HttpResponse + """Runs the network request through the client's chained policies. + + :param http_request: The network request you want to make. Required. + :type http_request: ~azure.core.pipeline.transport.HttpRequest + :keyword bool stream: Whether the response payload will be streamed. Defaults to True. + :return: The response of your network call. Does not do error handling on your response. + :rtype: ~azure.core.pipeline.transport.HttpResponse + """ + path_format_arguments = { + 'subscriptionId': self._serialize.url("self._config.subscription_id", self._config.subscription_id, 'str'), + } + http_request.url = self._client.format_url(http_request.url, **path_format_arguments) + stream = kwargs.pop("stream", True) + pipeline_response = self._client._pipeline.run(http_request, stream=stream, **kwargs) + return pipeline_response.http_response + def close(self): # type: () -> None self._client.close() diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_metadata.json b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_metadata.json index f1599761d515..fea5b14b43b6 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_metadata.json +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_metadata.json @@ -1,6 +1,6 @@ { - "chosen_version": "2018-07-15-preview", - "total_api_version_list": ["2018-07-15-preview"], + "chosen_version": "2021-06-30", + "total_api_version_list": ["2021-06-30"], "client": { "name": "DataMigrationManagementClient", "filename": "_data_migration_management_client", @@ -10,8 +10,8 @@ "azure_arm": true, "has_lro_operations": true, "client_side_validation": false, - "sync_imports": "{\"typing\": {\"azurecore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}, \"regular\": {\"azurecore\": {\"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"], \"msrest\": [\"Deserializer\", \"Serializer\"], \"azure.mgmt.core\": [\"ARMPipelineClient\"]}, \"local\": {\"._configuration\": [\"DataMigrationManagementClientConfiguration\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}}", - "async_imports": "{\"typing\": {\"azurecore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}, \"regular\": {\"azurecore\": {\"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"], \"msrest\": [\"Deserializer\", \"Serializer\"], \"azure.mgmt.core\": [\"AsyncARMPipelineClient\"]}, \"local\": {\"._configuration\": [\"DataMigrationManagementClientConfiguration\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}}" + "sync_imports": "{\"typing\": {\"azurecore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}, \"regular\": {\"azurecore\": {\"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"], \"msrest\": [\"Deserializer\", \"Serializer\"], \"azure.mgmt.core\": [\"ARMPipelineClient\"]}, \"local\": {\"._configuration\": [\"DataMigrationManagementClientConfiguration\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}, \"azurecore\": {\"azure.core.pipeline.transport\": [\"HttpRequest\", \"HttpResponse\"]}}}", + "async_imports": "{\"typing\": {\"azurecore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}, \"regular\": {\"azurecore\": {\"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"], \"msrest\": [\"Deserializer\", \"Serializer\"], \"azure.mgmt.core\": [\"AsyncARMPipelineClient\"]}, \"local\": {\"._configuration\": [\"DataMigrationManagementClientConfiguration\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}, \"azurecore\": {\"azure.core.pipeline.transport\": [\"AsyncHttpResponse\", \"HttpRequest\"]}}}" }, "global_parameters": { "sync": { @@ -106,11 +106,5 @@ "usages": "UsagesOperations", "operations": "Operations", "files": "FilesOperations" - }, - "operation_mixins": { - "sync_imports": "None", - "async_imports": "None", - "operations": { - } } } \ No newline at end of file diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_version.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_version.py index b77ac9246082..9f8bb24bdd99 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_version.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/_version.py @@ -6,4 +6,4 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -VERSION = "9.0.0" +VERSION = "10.0.0" diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/_configuration.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/_configuration.py index fd3f194391cc..6a35d74a7602 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/_configuration.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/_configuration.py @@ -45,7 +45,7 @@ def __init__( self.credential = credential self.subscription_id = subscription_id - self.api_version = "2018-07-15-preview" + self.api_version = "2021-06-30" self.credential_scopes = kwargs.pop('credential_scopes', ['https://management.azure.com/.default']) kwargs.setdefault('sdk_moniker', 'mgmt-datamigration/{}'.format(VERSION)) self._configure(**kwargs) diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/_data_migration_management_client.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/_data_migration_management_client.py index afddfe9a67e6..672ca04d1562 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/_data_migration_management_client.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/_data_migration_management_client.py @@ -8,6 +8,7 @@ from typing import Any, Optional, TYPE_CHECKING +from azure.core.pipeline.transport import AsyncHttpResponse, HttpRequest from azure.mgmt.core import AsyncARMPipelineClient from msrest import Deserializer, Serializer @@ -88,6 +89,23 @@ def __init__( self.files = FilesOperations( self._client, self._config, self._serialize, self._deserialize) + async def _send_request(self, http_request: HttpRequest, **kwargs: Any) -> AsyncHttpResponse: + """Runs the network request through the client's chained policies. + + :param http_request: The network request you want to make. Required. + :type http_request: ~azure.core.pipeline.transport.HttpRequest + :keyword bool stream: Whether the response payload will be streamed. Defaults to True. + :return: The response of your network call. Does not do error handling on your response. + :rtype: ~azure.core.pipeline.transport.AsyncHttpResponse + """ + path_format_arguments = { + 'subscriptionId': self._serialize.url("self._config.subscription_id", self._config.subscription_id, 'str'), + } + http_request.url = self._client.format_url(http_request.url, **path_format_arguments) + stream = kwargs.pop("stream", True) + pipeline_response = await self._client._pipeline.run(http_request, stream=stream, **kwargs) + return pipeline_response.http_response + async def close(self) -> None: await self._client.close() diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_files_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_files_operations.py index 456bf8191654..b9ff418d9a5c 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_files_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_files_operations.py @@ -46,7 +46,7 @@ def list( group_name: str, service_name: str, project_name: str, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.FileList"]: """Get files in a project. @@ -69,7 +69,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -129,7 +129,7 @@ async def get( service_name: str, project_name: str, file_name: str, - **kwargs + **kwargs: Any ) -> "_models.ProjectFile": """Get file information. @@ -154,7 +154,7 @@ async def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -200,7 +200,7 @@ async def create_or_update( project_name: str, file_name: str, parameters: "_models.ProjectFile", - **kwargs + **kwargs: Any ) -> "_models.ProjectFile": """Create a file resource. @@ -226,7 +226,7 @@ async def create_or_update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -280,7 +280,7 @@ async def delete( service_name: str, project_name: str, file_name: str, - **kwargs + **kwargs: Any ) -> None: """Delete file. @@ -304,7 +304,7 @@ async def delete( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -347,7 +347,7 @@ async def update( project_name: str, file_name: str, parameters: "_models.ProjectFile", - **kwargs + **kwargs: Any ) -> "_models.ProjectFile": """Update a file. @@ -373,7 +373,7 @@ async def update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -423,7 +423,7 @@ async def read( service_name: str, project_name: str, file_name: str, - **kwargs + **kwargs: Any ) -> "_models.FileStorageInfo": """Request storage information for downloading the file content. @@ -448,7 +448,7 @@ async def read( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -493,7 +493,7 @@ async def read_write( service_name: str, project_name: str, file_name: str, - **kwargs + **kwargs: Any ) -> "_models.FileStorageInfo": """Request information for reading and writing file content. @@ -517,7 +517,7 @@ async def read_write( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_operations.py index 0c4fccb0365b..084ece29dd8c 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_operations.py @@ -43,7 +43,7 @@ def __init__(self, client, config, serializer, deserializer) -> None: def list( self, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.ServiceOperationList"]: """Get available resource provider actions (operations). @@ -59,7 +59,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_projects_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_projects_operations.py index e5be74bf73bb..a46f80a04bdb 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_projects_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_projects_operations.py @@ -45,7 +45,7 @@ def list( self, group_name: str, service_name: str, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.ProjectList"]: """Get projects in a service. @@ -66,7 +66,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -125,7 +125,7 @@ async def create_or_update( service_name: str, project_name: str, parameters: "_models.Project", - **kwargs + **kwargs: Any ) -> "_models.Project": """Create or update project. @@ -150,7 +150,7 @@ async def create_or_update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -202,7 +202,7 @@ async def get( group_name: str, service_name: str, project_name: str, - **kwargs + **kwargs: Any ) -> "_models.Project": """Get project information. @@ -225,7 +225,7 @@ async def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -269,7 +269,7 @@ async def delete( service_name: str, project_name: str, delete_running_tasks: Optional[bool] = None, - **kwargs + **kwargs: Any ) -> None: """Delete project. @@ -294,7 +294,7 @@ async def delete( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -337,7 +337,7 @@ async def update( service_name: str, project_name: str, parameters: "_models.Project", - **kwargs + **kwargs: Any ) -> "_models.Project": """Update project. @@ -362,7 +362,7 @@ async def update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_resource_skus_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_resource_skus_operations.py index c9d47f16c7c5..a14042c2e597 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_resource_skus_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_resource_skus_operations.py @@ -43,7 +43,7 @@ def __init__(self, client, config, serializer, deserializer) -> None: def list_skus( self, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.ResourceSkusResult"]: """Get supported SKUs. @@ -59,7 +59,7 @@ def list_skus( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_service_tasks_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_service_tasks_operations.py index d90b7f6da567..bfe711b48276 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_service_tasks_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_service_tasks_operations.py @@ -46,7 +46,7 @@ def list( group_name: str, service_name: str, task_type: Optional[str] = None, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.TaskList"]: """Get service level tasks for a service. @@ -71,7 +71,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -132,7 +132,7 @@ async def create_or_update( service_name: str, task_name: str, parameters: "_models.ProjectTask", - **kwargs + **kwargs: Any ) -> "_models.ProjectTask": """Create or update service task. @@ -159,7 +159,7 @@ async def create_or_update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -212,7 +212,7 @@ async def get( service_name: str, task_name: str, expand: Optional[str] = None, - **kwargs + **kwargs: Any ) -> "_models.ProjectTask": """Get service task information. @@ -237,7 +237,7 @@ async def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -283,7 +283,7 @@ async def delete( service_name: str, task_name: str, delete_running_tasks: Optional[bool] = None, - **kwargs + **kwargs: Any ) -> None: """Delete service task. @@ -308,7 +308,7 @@ async def delete( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -351,7 +351,7 @@ async def update( service_name: str, task_name: str, parameters: "_models.ProjectTask", - **kwargs + **kwargs: Any ) -> "_models.ProjectTask": """Create or update service task. @@ -377,7 +377,7 @@ async def update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -425,7 +425,7 @@ async def cancel( group_name: str, service_name: str, task_name: str, - **kwargs + **kwargs: Any ) -> "_models.ProjectTask": """Cancel a service task. @@ -448,7 +448,7 @@ async def cancel( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_services_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_services_operations.py index fc2df220921a..04467e7f1a2a 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_services_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_services_operations.py @@ -48,14 +48,14 @@ async def _create_or_update_initial( group_name: str, service_name: str, parameters: "_models.DataMigrationService", - **kwargs + **kwargs: Any ) -> Optional["_models.DataMigrationService"]: cls = kwargs.pop('cls', None) # type: ClsType[Optional["_models.DataMigrationService"]] error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -107,7 +107,7 @@ async def begin_create_or_update( group_name: str, service_name: str, parameters: "_models.DataMigrationService", - **kwargs + **kwargs: Any ) -> AsyncLROPoller["_models.DataMigrationService"]: """Create or update DMS Instance. @@ -128,8 +128,8 @@ async def begin_create_or_update( :type parameters: ~azure.mgmt.datamigration.models.DataMigrationService :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: Pass in True if you'd like the AsyncARMPolling polling method, - False for no polling, or your own initialized polling object for a personal polling strategy. + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either DataMigrationService or the result of cls(response) @@ -186,7 +186,7 @@ async def get( self, group_name: str, service_name: str, - **kwargs + **kwargs: Any ) -> "_models.DataMigrationService": """Get DMS Service Instance. @@ -207,7 +207,7 @@ async def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -249,14 +249,14 @@ async def _delete_initial( group_name: str, service_name: str, delete_running_tasks: Optional[bool] = None, - **kwargs + **kwargs: Any ) -> None: cls = kwargs.pop('cls', None) # type: ClsType[None] error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -297,7 +297,7 @@ async def begin_delete( group_name: str, service_name: str, delete_running_tasks: Optional[bool] = None, - **kwargs + **kwargs: Any ) -> AsyncLROPoller[None]: """Delete DMS Service Instance. @@ -312,8 +312,8 @@ async def begin_delete( :type delete_running_tasks: bool :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: Pass in True if you'd like the AsyncARMPolling polling method, - False for no polling, or your own initialized polling object for a personal polling strategy. + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) @@ -368,14 +368,14 @@ async def _update_initial( group_name: str, service_name: str, parameters: "_models.DataMigrationService", - **kwargs + **kwargs: Any ) -> Optional["_models.DataMigrationService"]: cls = kwargs.pop('cls', None) # type: ClsType[Optional["_models.DataMigrationService"]] error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -424,7 +424,7 @@ async def begin_update( group_name: str, service_name: str, parameters: "_models.DataMigrationService", - **kwargs + **kwargs: Any ) -> AsyncLROPoller["_models.DataMigrationService"]: """Create or update DMS Service Instance. @@ -441,8 +441,8 @@ async def begin_update( :type parameters: ~azure.mgmt.datamigration.models.DataMigrationService :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: Pass in True if you'd like the AsyncARMPolling polling method, - False for no polling, or your own initialized polling object for a personal polling strategy. + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either DataMigrationService or the result of cls(response) @@ -499,7 +499,7 @@ async def check_status( self, group_name: str, service_name: str, - **kwargs + **kwargs: Any ) -> "_models.DataMigrationServiceStatusResponse": """Check service health status. @@ -521,7 +521,7 @@ async def check_status( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -562,14 +562,14 @@ async def _start_initial( self, group_name: str, service_name: str, - **kwargs + **kwargs: Any ) -> None: cls = kwargs.pop('cls', None) # type: ClsType[None] error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -607,7 +607,7 @@ async def begin_start( self, group_name: str, service_name: str, - **kwargs + **kwargs: Any ) -> AsyncLROPoller[None]: """Start service. @@ -620,8 +620,8 @@ async def begin_start( :type service_name: str :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: Pass in True if you'd like the AsyncARMPolling polling method, - False for no polling, or your own initialized polling object for a personal polling strategy. + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) @@ -674,14 +674,14 @@ async def _stop_initial( self, group_name: str, service_name: str, - **kwargs + **kwargs: Any ) -> None: cls = kwargs.pop('cls', None) # type: ClsType[None] error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -719,7 +719,7 @@ async def begin_stop( self, group_name: str, service_name: str, - **kwargs + **kwargs: Any ) -> AsyncLROPoller[None]: """Stop service. @@ -733,8 +733,8 @@ async def begin_stop( :type service_name: str :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: Pass in True if you'd like the AsyncARMPolling polling method, - False for no polling, or your own initialized polling object for a personal polling strategy. + :keyword polling: By default, your polling method will be AsyncARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) @@ -787,7 +787,7 @@ def list_skus( self, group_name: str, service_name: str, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.ServiceSkuList"]: """Get compatible SKUs. @@ -808,7 +808,7 @@ def list_skus( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -866,7 +866,7 @@ async def check_children_name_availability( group_name: str, service_name: str, parameters: "_models.NameAvailabilityRequest", - **kwargs + **kwargs: Any ) -> "_models.NameAvailabilityResponse": """Check nested resource name validity and availability. @@ -888,7 +888,7 @@ async def check_children_name_availability( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -933,7 +933,7 @@ async def check_children_name_availability( def list_by_resource_group( self, group_name: str, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.DataMigrationServiceList"]: """Get services in resource group. @@ -952,7 +952,7 @@ def list_by_resource_group( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -1006,7 +1006,7 @@ async def get_next(next_link=None): def list( self, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.DataMigrationServiceList"]: """Get services in subscription. @@ -1023,7 +1023,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -1078,7 +1078,7 @@ async def check_name_availability( self, location: str, parameters: "_models.NameAvailabilityRequest", - **kwargs + **kwargs: Any ) -> "_models.NameAvailabilityResponse": """Check name validity and availability. @@ -1098,7 +1098,7 @@ async def check_name_availability( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_tasks_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_tasks_operations.py index 26b7f5335478..df5a2348ffa3 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_tasks_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_tasks_operations.py @@ -47,7 +47,7 @@ def list( service_name: str, project_name: str, task_type: Optional[str] = None, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.TaskList"]: """Get tasks in a service. @@ -73,7 +73,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -136,7 +136,7 @@ async def create_or_update( project_name: str, task_name: str, parameters: "_models.ProjectTask", - **kwargs + **kwargs: Any ) -> "_models.ProjectTask": """Create or update task. @@ -164,7 +164,7 @@ async def create_or_update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -219,7 +219,7 @@ async def get( project_name: str, task_name: str, expand: Optional[str] = None, - **kwargs + **kwargs: Any ) -> "_models.ProjectTask": """Get task information. @@ -246,7 +246,7 @@ async def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -294,7 +294,7 @@ async def delete( project_name: str, task_name: str, delete_running_tasks: Optional[bool] = None, - **kwargs + **kwargs: Any ) -> None: """Delete task. @@ -321,7 +321,7 @@ async def delete( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -366,7 +366,7 @@ async def update( project_name: str, task_name: str, parameters: "_models.ProjectTask", - **kwargs + **kwargs: Any ) -> "_models.ProjectTask": """Create or update task. @@ -394,7 +394,7 @@ async def update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -444,7 +444,7 @@ async def cancel( service_name: str, project_name: str, task_name: str, - **kwargs + **kwargs: Any ) -> "_models.ProjectTask": """Cancel a task. @@ -469,7 +469,7 @@ async def cancel( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -515,7 +515,7 @@ async def command( project_name: str, task_name: str, parameters: "_models.CommandProperties", - **kwargs + **kwargs: Any ) -> "_models.CommandProperties": """Execute a command on a task. @@ -542,7 +542,7 @@ async def command( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_usages_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_usages_operations.py index 7e72a4270d1b..53c421bb9941 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_usages_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/aio/operations/_usages_operations.py @@ -44,7 +44,7 @@ def __init__(self, client, config, serializer, deserializer) -> None: def list( self, location: str, - **kwargs + **kwargs: Any ) -> AsyncIterable["_models.QuotaList"]: """Get resource quotas and usage information. @@ -63,7 +63,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/__init__.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/__init__.py index e5c69ebe4274..c0f8d87c93ca 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/__init__.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/__init__.py @@ -82,6 +82,9 @@ from ._models_py3 import GetTdeCertificatesSqlTaskInput from ._models_py3 import GetTdeCertificatesSqlTaskOutput from ._models_py3 import GetTdeCertificatesSqlTaskProperties + from ._models_py3 import GetUserTablesMySqlTaskInput + from ._models_py3 import GetUserTablesMySqlTaskOutput + from ._models_py3 import GetUserTablesMySqlTaskProperties from ._models_py3 import GetUserTablesOracleTaskInput from ._models_py3 import GetUserTablesOracleTaskOutput from ._models_py3 import GetUserTablesOracleTaskProperties @@ -102,6 +105,14 @@ from ._models_py3 import MigrateMISyncCompleteCommandOutput from ._models_py3 import MigrateMISyncCompleteCommandProperties from ._models_py3 import MigrateMongoDbTaskProperties + from ._models_py3 import MigrateMySqlAzureDbForMySqlOfflineDatabaseInput + from ._models_py3 import MigrateMySqlAzureDbForMySqlOfflineTaskInput + from ._models_py3 import MigrateMySqlAzureDbForMySqlOfflineTaskOutput + from ._models_py3 import MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel + from ._models_py3 import MigrateMySqlAzureDbForMySqlOfflineTaskOutputError + from ._models_py3 import MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel + from ._models_py3 import MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel + from ._models_py3 import MigrateMySqlAzureDbForMySqlOfflineTaskProperties from ._models_py3 import MigrateMySqlAzureDbForMySqlSyncDatabaseInput from ._models_py3 import MigrateMySqlAzureDbForMySqlSyncTaskInput from ._models_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutput @@ -152,9 +163,11 @@ from ._models_py3 import MigrateSqlServerSqlDbTaskInput from ._models_py3 import MigrateSqlServerSqlDbTaskOutput from ._models_py3 import MigrateSqlServerSqlDbTaskOutputDatabaseLevel + from ._models_py3 import MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult from ._models_py3 import MigrateSqlServerSqlDbTaskOutputError from ._models_py3 import MigrateSqlServerSqlDbTaskOutputMigrationLevel from ._models_py3 import MigrateSqlServerSqlDbTaskOutputTableLevel + from ._models_py3 import MigrateSqlServerSqlDbTaskOutputValidationResult from ._models_py3 import MigrateSqlServerSqlDbTaskProperties from ._models_py3 import MigrateSqlServerSqlMIDatabaseInput from ._models_py3 import MigrateSqlServerSqlMISyncTaskInput @@ -255,6 +268,7 @@ from ._models_py3 import SsisMigrationInfo from ._models_py3 import StartMigrationScenarioServerRoleResult from ._models_py3 import SyncMigrationDatabaseErrorEvent + from ._models_py3 import SystemData from ._models_py3 import TaskList from ._models_py3 import TrackedResource from ._models_py3 import UploadOCIDriverTaskInput @@ -350,6 +364,9 @@ from ._models import GetTdeCertificatesSqlTaskInput # type: ignore from ._models import GetTdeCertificatesSqlTaskOutput # type: ignore from ._models import GetTdeCertificatesSqlTaskProperties # type: ignore + from ._models import GetUserTablesMySqlTaskInput # type: ignore + from ._models import GetUserTablesMySqlTaskOutput # type: ignore + from ._models import GetUserTablesMySqlTaskProperties # type: ignore from ._models import GetUserTablesOracleTaskInput # type: ignore from ._models import GetUserTablesOracleTaskOutput # type: ignore from ._models import GetUserTablesOracleTaskProperties # type: ignore @@ -370,6 +387,14 @@ from ._models import MigrateMISyncCompleteCommandOutput # type: ignore from ._models import MigrateMISyncCompleteCommandProperties # type: ignore from ._models import MigrateMongoDbTaskProperties # type: ignore + from ._models import MigrateMySqlAzureDbForMySqlOfflineDatabaseInput # type: ignore + from ._models import MigrateMySqlAzureDbForMySqlOfflineTaskInput # type: ignore + from ._models import MigrateMySqlAzureDbForMySqlOfflineTaskOutput # type: ignore + from ._models import MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel # type: ignore + from ._models import MigrateMySqlAzureDbForMySqlOfflineTaskOutputError # type: ignore + from ._models import MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel # type: ignore + from ._models import MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel # type: ignore + from ._models import MigrateMySqlAzureDbForMySqlOfflineTaskProperties # type: ignore from ._models import MigrateMySqlAzureDbForMySqlSyncDatabaseInput # type: ignore from ._models import MigrateMySqlAzureDbForMySqlSyncTaskInput # type: ignore from ._models import MigrateMySqlAzureDbForMySqlSyncTaskOutput # type: ignore @@ -420,9 +445,11 @@ from ._models import MigrateSqlServerSqlDbTaskInput # type: ignore from ._models import MigrateSqlServerSqlDbTaskOutput # type: ignore from ._models import MigrateSqlServerSqlDbTaskOutputDatabaseLevel # type: ignore + from ._models import MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult # type: ignore from ._models import MigrateSqlServerSqlDbTaskOutputError # type: ignore from ._models import MigrateSqlServerSqlDbTaskOutputMigrationLevel # type: ignore from ._models import MigrateSqlServerSqlDbTaskOutputTableLevel # type: ignore + from ._models import MigrateSqlServerSqlDbTaskOutputValidationResult # type: ignore from ._models import MigrateSqlServerSqlDbTaskProperties # type: ignore from ._models import MigrateSqlServerSqlMIDatabaseInput # type: ignore from ._models import MigrateSqlServerSqlMISyncTaskInput # type: ignore @@ -523,6 +550,7 @@ from ._models import SsisMigrationInfo # type: ignore from ._models import StartMigrationScenarioServerRoleResult # type: ignore from ._models import SyncMigrationDatabaseErrorEvent # type: ignore + from ._models import SystemData # type: ignore from ._models import TaskList # type: ignore from ._models import TrackedResource # type: ignore from ._models import UploadOCIDriverTaskInput # type: ignore @@ -549,6 +577,7 @@ BackupMode, BackupType, CommandState, + CreatedByType, DataMigrationResultCode, DatabaseCompatLevel, DatabaseFileType, @@ -671,6 +700,9 @@ 'GetTdeCertificatesSqlTaskInput', 'GetTdeCertificatesSqlTaskOutput', 'GetTdeCertificatesSqlTaskProperties', + 'GetUserTablesMySqlTaskInput', + 'GetUserTablesMySqlTaskOutput', + 'GetUserTablesMySqlTaskProperties', 'GetUserTablesOracleTaskInput', 'GetUserTablesOracleTaskOutput', 'GetUserTablesOracleTaskProperties', @@ -691,6 +723,14 @@ 'MigrateMISyncCompleteCommandOutput', 'MigrateMISyncCompleteCommandProperties', 'MigrateMongoDbTaskProperties', + 'MigrateMySqlAzureDbForMySqlOfflineDatabaseInput', + 'MigrateMySqlAzureDbForMySqlOfflineTaskInput', + 'MigrateMySqlAzureDbForMySqlOfflineTaskOutput', + 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel', + 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputError', + 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel', + 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel', + 'MigrateMySqlAzureDbForMySqlOfflineTaskProperties', 'MigrateMySqlAzureDbForMySqlSyncDatabaseInput', 'MigrateMySqlAzureDbForMySqlSyncTaskInput', 'MigrateMySqlAzureDbForMySqlSyncTaskOutput', @@ -741,9 +781,11 @@ 'MigrateSqlServerSqlDbTaskInput', 'MigrateSqlServerSqlDbTaskOutput', 'MigrateSqlServerSqlDbTaskOutputDatabaseLevel', + 'MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult', 'MigrateSqlServerSqlDbTaskOutputError', 'MigrateSqlServerSqlDbTaskOutputMigrationLevel', 'MigrateSqlServerSqlDbTaskOutputTableLevel', + 'MigrateSqlServerSqlDbTaskOutputValidationResult', 'MigrateSqlServerSqlDbTaskProperties', 'MigrateSqlServerSqlMIDatabaseInput', 'MigrateSqlServerSqlMISyncTaskInput', @@ -844,6 +886,7 @@ 'SsisMigrationInfo', 'StartMigrationScenarioServerRoleResult', 'SyncMigrationDatabaseErrorEvent', + 'SystemData', 'TaskList', 'TrackedResource', 'UploadOCIDriverTaskInput', @@ -868,6 +911,7 @@ 'BackupMode', 'BackupType', 'CommandState', + 'CreatedByType', 'DataMigrationResultCode', 'DatabaseCompatLevel', 'DatabaseFileType', diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_data_migration_management_client_enums.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_data_migration_management_client_enums.py index dc68ebf34d36..b3e390d66cab 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_data_migration_management_client_enums.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_data_migration_management_client_enums.py @@ -77,6 +77,15 @@ class CommandState(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): SUCCEEDED = "Succeeded" FAILED = "Failed" +class CreatedByType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): + """The type of identity that created the resource. + """ + + USER = "User" + APPLICATION = "Application" + MANAGED_IDENTITY = "ManagedIdentity" + KEY = "Key" + class DatabaseCompatLevel(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): """An enumeration of SQL Server database compatibility levels """ diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_models.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_models.py index 5727adefdf0f..bed787077512 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_models.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_models.py @@ -13,12 +13,21 @@ class ApiError(msrest.serialization.Model): """Error information. + Variables are only populated by the server, and will be ignored when sending a request. + :param error: Error information in OData format. :type error: ~azure.mgmt.datamigration.models.ODataError + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData """ + _validation = { + 'system_data': {'readonly': True}, + } + _attribute_map = { 'error': {'key': 'error', 'type': 'ODataError'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, } def __init__( @@ -27,6 +36,7 @@ def __init__( ): super(ApiError, self).__init__(**kwargs) self.error = kwargs.get('error', None) + self.system_data = None class AvailableServiceSku(msrest.serialization.Model): @@ -316,7 +326,7 @@ class ProjectTaskProperties(msrest.serialization.Model): """Base class for all types of DMS task properties. If task is not supported by current client, this object is returned. You probably want to use the sub-classes and not this class directly. Known - sub-classes are: ConnectToMongoDbTaskProperties, ConnectToSourceMySqlTaskProperties, ConnectToSourceOracleSyncTaskProperties, ConnectToSourcePostgreSqlSyncTaskProperties, ConnectToSourceSqlServerTaskProperties, ConnectToSourceSqlServerSyncTaskProperties, ConnectToTargetAzureDbForMySqlTaskProperties, ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, ConnectToTargetSqlMITaskProperties, ConnectToTargetSqlMISyncTaskProperties, ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, ConnectToTargetSqlDbTaskProperties, ConnectToTargetSqlDbSyncTaskProperties, GetTdeCertificatesSqlTaskProperties, GetUserTablesSqlSyncTaskProperties, GetUserTablesSqlTaskProperties, GetUserTablesOracleTaskProperties, GetUserTablesPostgreSqlTaskProperties, MigrateMongoDbTaskProperties, MigrateMySqlAzureDbForMySqlSyncTaskProperties, MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, MigrateSqlServerSqlDbSyncTaskProperties, MigrateSqlServerSqlMITaskProperties, MigrateSqlServerSqlMISyncTaskProperties, MigrateSqlServerSqlDbTaskProperties, MigrateSsisTaskProperties, MigrateSchemaSqlServerSqlDbTaskProperties, CheckOCIDriverTaskProperties, InstallOCIDriverTaskProperties, UploadOCIDriverTaskProperties, ValidateMongoDbTaskProperties, ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, ValidateMigrationInputSqlServerSqlMITaskProperties, ValidateMigrationInputSqlServerSqlMISyncTaskProperties, ValidateMigrationInputSqlServerSqlDbSyncTaskProperties. + sub-classes are: ConnectToMongoDbTaskProperties, ConnectToSourceMySqlTaskProperties, ConnectToSourceOracleSyncTaskProperties, ConnectToSourcePostgreSqlSyncTaskProperties, ConnectToSourceSqlServerTaskProperties, ConnectToSourceSqlServerSyncTaskProperties, ConnectToTargetAzureDbForMySqlTaskProperties, ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, ConnectToTargetSqlMITaskProperties, ConnectToTargetSqlMISyncTaskProperties, ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, ConnectToTargetSqlDbTaskProperties, ConnectToTargetSqlDbSyncTaskProperties, GetTdeCertificatesSqlTaskProperties, GetUserTablesSqlSyncTaskProperties, GetUserTablesSqlTaskProperties, GetUserTablesMySqlTaskProperties, GetUserTablesOracleTaskProperties, GetUserTablesPostgreSqlTaskProperties, MigrateMongoDbTaskProperties, MigrateMySqlAzureDbForMySqlOfflineTaskProperties, MigrateMySqlAzureDbForMySqlSyncTaskProperties, MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, MigrateSqlServerSqlDbSyncTaskProperties, MigrateSqlServerSqlMITaskProperties, MigrateSqlServerSqlMISyncTaskProperties, MigrateSqlServerSqlDbTaskProperties, MigrateSsisTaskProperties, MigrateSchemaSqlServerSqlDbTaskProperties, CheckOCIDriverTaskProperties, InstallOCIDriverTaskProperties, UploadOCIDriverTaskProperties, ValidateMongoDbTaskProperties, ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, ValidateMigrationInputSqlServerSqlMITaskProperties, ValidateMigrationInputSqlServerSqlMISyncTaskProperties, ValidateMigrationInputSqlServerSqlDbSyncTaskProperties. Variables are only populated by the server, and will be ignored when sending a request. @@ -352,7 +362,7 @@ class ProjectTaskProperties(msrest.serialization.Model): } _subtype_map = { - 'task_type': {'Connect.MongoDb': 'ConnectToMongoDbTaskProperties', 'ConnectToSource.MySql': 'ConnectToSourceMySqlTaskProperties', 'ConnectToSource.Oracle.Sync': 'ConnectToSourceOracleSyncTaskProperties', 'ConnectToSource.PostgreSql.Sync': 'ConnectToSourcePostgreSqlSyncTaskProperties', 'ConnectToSource.SqlServer': 'ConnectToSourceSqlServerTaskProperties', 'ConnectToSource.SqlServer.Sync': 'ConnectToSourceSqlServerSyncTaskProperties', 'ConnectToTarget.AzureDbForMySql': 'ConnectToTargetAzureDbForMySqlTaskProperties', 'ConnectToTarget.AzureDbForPostgreSql.Sync': 'ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties', 'ConnectToTarget.AzureSqlDbMI': 'ConnectToTargetSqlMITaskProperties', 'ConnectToTarget.AzureSqlDbMI.Sync.LRS': 'ConnectToTargetSqlMISyncTaskProperties', 'ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync': 'ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties', 'ConnectToTarget.SqlDb': 'ConnectToTargetSqlDbTaskProperties', 'ConnectToTarget.SqlDb.Sync': 'ConnectToTargetSqlDbSyncTaskProperties', 'GetTDECertificates.Sql': 'GetTdeCertificatesSqlTaskProperties', 'GetUserTables.AzureSqlDb.Sync': 'GetUserTablesSqlSyncTaskProperties', 'GetUserTables.Sql': 'GetUserTablesSqlTaskProperties', 'GetUserTablesOracle': 'GetUserTablesOracleTaskProperties', 'GetUserTablesPostgreSql': 'GetUserTablesPostgreSqlTaskProperties', 'Migrate.MongoDb': 'MigrateMongoDbTaskProperties', 'Migrate.MySql.AzureDbForMySql.Sync': 'MigrateMySqlAzureDbForMySqlSyncTaskProperties', 'Migrate.Oracle.AzureDbForPostgreSql.Sync': 'MigrateOracleAzureDbForPostgreSqlSyncTaskProperties', 'Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties', 'Migrate.SqlServer.AzureSqlDb.Sync': 'MigrateSqlServerSqlDbSyncTaskProperties', 'Migrate.SqlServer.AzureSqlDbMI': 'MigrateSqlServerSqlMITaskProperties', 'Migrate.SqlServer.AzureSqlDbMI.Sync.LRS': 'MigrateSqlServerSqlMISyncTaskProperties', 'Migrate.SqlServer.SqlDb': 'MigrateSqlServerSqlDbTaskProperties', 'Migrate.Ssis': 'MigrateSsisTaskProperties', 'MigrateSchemaSqlServerSqlDb': 'MigrateSchemaSqlServerSqlDbTaskProperties', 'Service.Check.OCI': 'CheckOCIDriverTaskProperties', 'Service.Install.OCI': 'InstallOCIDriverTaskProperties', 'Service.Upload.OCI': 'UploadOCIDriverTaskProperties', 'Validate.MongoDb': 'ValidateMongoDbTaskProperties', 'Validate.Oracle.AzureDbPostgreSql.Sync': 'ValidateOracleAzureDbForPostgreSqlSyncTaskProperties', 'ValidateMigrationInput.SqlServer.AzureSqlDbMI': 'ValidateMigrationInputSqlServerSqlMITaskProperties', 'ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS': 'ValidateMigrationInputSqlServerSqlMISyncTaskProperties', 'ValidateMigrationInput.SqlServer.SqlDb.Sync': 'ValidateMigrationInputSqlServerSqlDbSyncTaskProperties'} + 'task_type': {'Connect.MongoDb': 'ConnectToMongoDbTaskProperties', 'ConnectToSource.MySql': 'ConnectToSourceMySqlTaskProperties', 'ConnectToSource.Oracle.Sync': 'ConnectToSourceOracleSyncTaskProperties', 'ConnectToSource.PostgreSql.Sync': 'ConnectToSourcePostgreSqlSyncTaskProperties', 'ConnectToSource.SqlServer': 'ConnectToSourceSqlServerTaskProperties', 'ConnectToSource.SqlServer.Sync': 'ConnectToSourceSqlServerSyncTaskProperties', 'ConnectToTarget.AzureDbForMySql': 'ConnectToTargetAzureDbForMySqlTaskProperties', 'ConnectToTarget.AzureDbForPostgreSql.Sync': 'ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties', 'ConnectToTarget.AzureSqlDbMI': 'ConnectToTargetSqlMITaskProperties', 'ConnectToTarget.AzureSqlDbMI.Sync.LRS': 'ConnectToTargetSqlMISyncTaskProperties', 'ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync': 'ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties', 'ConnectToTarget.SqlDb': 'ConnectToTargetSqlDbTaskProperties', 'ConnectToTarget.SqlDb.Sync': 'ConnectToTargetSqlDbSyncTaskProperties', 'GetTDECertificates.Sql': 'GetTdeCertificatesSqlTaskProperties', 'GetUserTables.AzureSqlDb.Sync': 'GetUserTablesSqlSyncTaskProperties', 'GetUserTables.Sql': 'GetUserTablesSqlTaskProperties', 'GetUserTablesMySql': 'GetUserTablesMySqlTaskProperties', 'GetUserTablesOracle': 'GetUserTablesOracleTaskProperties', 'GetUserTablesPostgreSql': 'GetUserTablesPostgreSqlTaskProperties', 'Migrate.MongoDb': 'MigrateMongoDbTaskProperties', 'Migrate.MySql.AzureDbForMySql': 'MigrateMySqlAzureDbForMySqlOfflineTaskProperties', 'Migrate.MySql.AzureDbForMySql.Sync': 'MigrateMySqlAzureDbForMySqlSyncTaskProperties', 'Migrate.Oracle.AzureDbForPostgreSql.Sync': 'MigrateOracleAzureDbForPostgreSqlSyncTaskProperties', 'Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties', 'Migrate.SqlServer.AzureSqlDb.Sync': 'MigrateSqlServerSqlDbSyncTaskProperties', 'Migrate.SqlServer.AzureSqlDbMI': 'MigrateSqlServerSqlMITaskProperties', 'Migrate.SqlServer.AzureSqlDbMI.Sync.LRS': 'MigrateSqlServerSqlMISyncTaskProperties', 'Migrate.SqlServer.SqlDb': 'MigrateSqlServerSqlDbTaskProperties', 'Migrate.Ssis': 'MigrateSsisTaskProperties', 'MigrateSchemaSqlServerSqlDb': 'MigrateSchemaSqlServerSqlDbTaskProperties', 'Service.Check.OCI': 'CheckOCIDriverTaskProperties', 'Service.Install.OCI': 'InstallOCIDriverTaskProperties', 'Service.Upload.OCI': 'UploadOCIDriverTaskProperties', 'Validate.MongoDb': 'ValidateMongoDbTaskProperties', 'Validate.Oracle.AzureDbPostgreSql.Sync': 'ValidateOracleAzureDbForPostgreSqlSyncTaskProperties', 'ValidateMigrationInput.SqlServer.AzureSqlDbMI': 'ValidateMigrationInputSqlServerSqlMITaskProperties', 'ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS': 'ValidateMigrationInputSqlServerSqlMISyncTaskProperties', 'ValidateMigrationInput.SqlServer.SqlDb.Sync': 'ValidateMigrationInputSqlServerSqlDbSyncTaskProperties'} } def __init__( @@ -573,6 +583,8 @@ class ConnectToSourceMySqlTaskInput(msrest.serialization.Model): "MigrationFromMySQLToAzureDBForMySQL". :type check_permissions_group: str or ~azure.mgmt.datamigration.models.ServerLevelPermissionsGroup + :param is_offline_migration: Flag for whether or not the migration is offline. + :type is_offline_migration: bool """ _validation = { @@ -583,6 +595,7 @@ class ConnectToSourceMySqlTaskInput(msrest.serialization.Model): 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, 'target_platform': {'key': 'targetPlatform', 'type': 'str'}, 'check_permissions_group': {'key': 'checkPermissionsGroup', 'type': 'str'}, + 'is_offline_migration': {'key': 'isOfflineMigration', 'type': 'bool'}, } def __init__( @@ -593,6 +606,7 @@ def __init__( self.source_connection_info = kwargs['source_connection_info'] self.target_platform = kwargs.get('target_platform', None) self.check_permissions_group = kwargs.get('check_permissions_group', None) + self.is_offline_migration = kwargs.get('is_offline_migration', False) class ConnectToSourceMySqlTaskProperties(ProjectTaskProperties): @@ -1398,6 +1412,8 @@ class ConnectToTargetAzureDbForMySqlTaskInput(msrest.serialization.Model): :param target_connection_info: Required. Connection information for target Azure Database for MySQL server. :type target_connection_info: ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param is_offline_migration: Flag for whether or not the migration is offline. + :type is_offline_migration: bool """ _validation = { @@ -1408,6 +1424,7 @@ class ConnectToTargetAzureDbForMySqlTaskInput(msrest.serialization.Model): _attribute_map = { 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'is_offline_migration': {'key': 'isOfflineMigration', 'type': 'bool'}, } def __init__( @@ -1417,6 +1434,7 @@ def __init__( super(ConnectToTargetAzureDbForMySqlTaskInput, self).__init__(**kwargs) self.source_connection_info = kwargs['source_connection_info'] self.target_connection_info = kwargs['target_connection_info'] + self.is_offline_migration = kwargs.get('is_offline_migration', False) class ConnectToTargetAzureDbForMySqlTaskOutput(msrest.serialization.Model): @@ -2881,6 +2899,8 @@ class TrackedResource(Resource): :type tags: dict[str, str] :param location: Required. Resource location. :type location: str + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData """ _validation = { @@ -2888,6 +2908,7 @@ class TrackedResource(Resource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'system_data': {'readonly': True}, } _attribute_map = { @@ -2896,6 +2917,7 @@ class TrackedResource(Resource): 'type': {'key': 'type', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, } def __init__( @@ -2905,6 +2927,7 @@ def __init__( super(TrackedResource, self).__init__(**kwargs) self.tags = kwargs.get('tags', None) self.location = kwargs['location'] + self.system_data = None class DataMigrationService(TrackedResource): @@ -2924,6 +2947,8 @@ class DataMigrationService(TrackedResource): :type tags: dict[str, str] :param location: Required. Resource location. :type location: str + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData :param etag: HTTP strong entity tag value. Ignored if submitted. :type etag: str :param kind: The resource kind. Only 'vm' (the default) is supported. @@ -2949,6 +2974,7 @@ class DataMigrationService(TrackedResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'system_data': {'readonly': True}, 'provisioning_state': {'readonly': True}, } @@ -2958,6 +2984,7 @@ class DataMigrationService(TrackedResource): 'type': {'key': 'type', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, 'etag': {'key': 'etag', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'sku': {'key': 'sku', 'type': 'ServiceSku'}, @@ -3306,6 +3333,124 @@ def __init__( self.output = None +class GetUserTablesMySqlTaskInput(msrest.serialization.Model): + """Input for the task that collects user tables for the given list of databases. + + All required parameters must be populated in order to send to Azure. + + :param connection_info: Required. Connection information for SQL Server. + :type connection_info: ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param selected_databases: Required. List of database names to collect tables for. + :type selected_databases: list[str] + """ + + _validation = { + 'connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'connection_info': {'key': 'connectionInfo', 'type': 'MySqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[str]'}, + } + + def __init__( + self, + **kwargs + ): + super(GetUserTablesMySqlTaskInput, self).__init__(**kwargs) + self.connection_info = kwargs['connection_info'] + self.selected_databases = kwargs['selected_databases'] + + +class GetUserTablesMySqlTaskOutput(msrest.serialization.Model): + """Output of the task that collects user tables for the given list of databases. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Result identifier. + :vartype id: str + :ivar databases_to_tables: Mapping from database name to list of tables. + :vartype databases_to_tables: str + :ivar validation_errors: Validation errors. + :vartype validation_errors: list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'databases_to_tables': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'databases_to_tables': {'key': 'databasesToTables', 'type': 'str'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__( + self, + **kwargs + ): + super(GetUserTablesMySqlTaskOutput, self).__init__(**kwargs) + self.id = None + self.databases_to_tables = None + self.validation_errors = None + + +class GetUserTablesMySqlTaskProperties(ProjectTaskProperties): + """Properties for the task that collects user tables for the given list of databases. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :param task_type: Required. Task type.Constant filled by server. + :type task_type: str + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible values include: + "Unknown", "Queued", "Running", "Canceled", "Succeeded", "Failed", "FailedInputValidation", + "Faulted". + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: list[~azure.mgmt.datamigration.models.CommandProperties] + :param client_data: Key value pairs of client data to attach meta data information to task. + :type client_data: dict[str, str] + :param input: Task input. + :type input: ~azure.mgmt.datamigration.models.GetUserTablesMySqlTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: list[~azure.mgmt.datamigration.models.GetUserTablesMySqlTaskOutput] + """ + + _validation = { + 'task_type': {'required': True}, + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'client_data': {'key': 'clientData', 'type': '{str}'}, + 'input': {'key': 'input', 'type': 'GetUserTablesMySqlTaskInput'}, + 'output': {'key': 'output', 'type': '[GetUserTablesMySqlTaskOutput]'}, + } + + def __init__( + self, + **kwargs + ): + super(GetUserTablesMySqlTaskProperties, self).__init__(**kwargs) + self.task_type = 'GetUserTablesMySql' # type: str + self.input = kwargs.get('input', None) + self.output = None + + class GetUserTablesOracleTaskInput(msrest.serialization.Model): """Input for the task that gets the list of tables contained within a provided list of Oracle schemas. @@ -4034,20 +4179,14 @@ def __init__( self.output = None -class MigrateMySqlAzureDbForMySqlSyncDatabaseInput(msrest.serialization.Model): - """Database specific information for MySQL to Azure Database for MySQL migration task inputs. +class MigrateMySqlAzureDbForMySqlOfflineDatabaseInput(msrest.serialization.Model): + """Database specific information for offline MySQL to Azure Database for MySQL migration task inputs. :param name: Name of the database. :type name: str :param target_database_name: Name of target database. Note: Target database will be truncated before starting migration. :type target_database_name: str - :param migration_setting: Migration settings which tune the migration behavior. - :type migration_setting: dict[str, str] - :param source_setting: Source settings to tune source endpoint migration behavior. - :type source_setting: dict[str, str] - :param target_setting: Target settings to tune target endpoint migration behavior. - :type target_setting: dict[str, str] :param table_map: Mapping of source to target tables. :type table_map: dict[str, str] """ @@ -4055,9 +4194,6 @@ class MigrateMySqlAzureDbForMySqlSyncDatabaseInput(msrest.serialization.Model): _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, - 'migration_setting': {'key': 'migrationSetting', 'type': '{str}'}, - 'source_setting': {'key': 'sourceSetting', 'type': '{str}'}, - 'target_setting': {'key': 'targetSetting', 'type': '{str}'}, 'table_map': {'key': 'tableMap', 'type': '{str}'}, } @@ -4065,17 +4201,14 @@ def __init__( self, **kwargs ): - super(MigrateMySqlAzureDbForMySqlSyncDatabaseInput, self).__init__(**kwargs) + super(MigrateMySqlAzureDbForMySqlOfflineDatabaseInput, self).__init__(**kwargs) self.name = kwargs.get('name', None) self.target_database_name = kwargs.get('target_database_name', None) - self.migration_setting = kwargs.get('migration_setting', None) - self.source_setting = kwargs.get('source_setting', None) - self.target_setting = kwargs.get('target_setting', None) self.table_map = kwargs.get('table_map', None) -class MigrateMySqlAzureDbForMySqlSyncTaskInput(msrest.serialization.Model): - """Input for the task that migrates MySQL databases to Azure Database for MySQL for online migrations. +class MigrateMySqlAzureDbForMySqlOfflineTaskInput(msrest.serialization.Model): + """Input for the task that migrates MySQL databases to Azure Database for MySQL for offline migrations. All required parameters must be populated in order to send to Azure. @@ -4086,7 +4219,14 @@ class MigrateMySqlAzureDbForMySqlSyncTaskInput(msrest.serialization.Model): :type target_connection_info: ~azure.mgmt.datamigration.models.MySqlConnectionInfo :param selected_databases: Required. Databases to migrate. :type selected_databases: - list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlSyncDatabaseInput] + list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlOfflineDatabaseInput] + :param make_source_server_read_only: Setting to set the source server read only. + :type make_source_server_read_only: bool + :param started_on: Parameter to specify when the migration started. + :type started_on: ~datetime.datetime + :param optional_agent_settings: Optional parameters for fine tuning the data transfer rate + during migration. + :type optional_agent_settings: dict[str, str] """ _validation = { @@ -4098,24 +4238,30 @@ class MigrateMySqlAzureDbForMySqlSyncTaskInput(msrest.serialization.Model): _attribute_map = { 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'MySqlConnectionInfo'}, - 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateMySqlAzureDbForMySqlSyncDatabaseInput]'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateMySqlAzureDbForMySqlOfflineDatabaseInput]'}, + 'make_source_server_read_only': {'key': 'makeSourceServerReadOnly', 'type': 'bool'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'optional_agent_settings': {'key': 'optionalAgentSettings', 'type': '{str}'}, } def __init__( self, **kwargs ): - super(MigrateMySqlAzureDbForMySqlSyncTaskInput, self).__init__(**kwargs) + super(MigrateMySqlAzureDbForMySqlOfflineTaskInput, self).__init__(**kwargs) self.source_connection_info = kwargs['source_connection_info'] self.target_connection_info = kwargs['target_connection_info'] self.selected_databases = kwargs['selected_databases'] + self.make_source_server_read_only = kwargs.get('make_source_server_read_only', False) + self.started_on = kwargs.get('started_on', None) + self.optional_agent_settings = kwargs.get('optional_agent_settings', None) -class MigrateMySqlAzureDbForMySqlSyncTaskOutput(msrest.serialization.Model): - """Output for the task that migrates MySQL databases to Azure Database for MySQL for online migrations. +class MigrateMySqlAzureDbForMySqlOfflineTaskOutput(msrest.serialization.Model): + """Output for the task that migrates MySQL databases to Azure Database for MySQL for offline migrations. You probably want to use the sub-classes and not this class directly. Known - sub-classes are: MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, MigrateMySqlAzureDbForMySqlSyncTaskOutputError, MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel. + sub-classes are: MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel, MigrateMySqlAzureDbForMySqlOfflineTaskOutputError, MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel, MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel. Variables are only populated by the server, and will be ignored when sending a request. @@ -4138,20 +4284,20 @@ class MigrateMySqlAzureDbForMySqlSyncTaskOutput(msrest.serialization.Model): } _subtype_map = { - 'result_type': {'DatabaseLevelErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError', 'DatabaseLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel', 'ErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputError', 'MigrationLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel', 'TableLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel'} + 'result_type': {'DatabaseLevelOutput': 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel', 'ErrorOutput': 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputError', 'MigrationLevelOutput': 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel', 'TableLevelOutput': 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel'} } def __init__( self, **kwargs ): - super(MigrateMySqlAzureDbForMySqlSyncTaskOutput, self).__init__(**kwargs) + super(MigrateMySqlAzureDbForMySqlOfflineTaskOutput, self).__init__(**kwargs) self.id = None self.result_type = None # type: Optional[str] -class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError(MigrateMySqlAzureDbForMySqlSyncTaskOutput): - """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError. +class MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel(MigrateMySqlAzureDbForMySqlOfflineTaskOutput): + """MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel. Variables are only populated by the server, and will be ignored when sending a request. @@ -4161,36 +4307,106 @@ class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError(MigrateMySqlAzureDb :vartype id: str :param result_type: Required. Result type.Constant filled by server. :type result_type: str - :param error_message: Error message. - :type error_message: str - :param events: List of error events. - :type events: list[~azure.mgmt.datamigration.models.SyncMigrationDatabaseErrorEvent] + :ivar database_name: Name of the database. + :vartype database_name: str + :ivar started_on: Migration start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Migration end time. + :vartype ended_on: ~datetime.datetime + :ivar state: Current state of migration. Possible values include: "None", "InProgress", + "Failed", "Warning", "Completed", "Skipped", "Stopped". + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar stage: Migration stage that this database is in. Possible values include: "None", + "Initialize", "Backup", "FileCopy", "Restore", "Completed". + :vartype stage: str or ~azure.mgmt.datamigration.models.DatabaseMigrationStage + :ivar status_message: Status message. + :vartype status_message: str + :ivar message: Migration progress message. + :vartype message: str + :ivar number_of_objects: Number of objects. + :vartype number_of_objects: long + :ivar number_of_objects_completed: Number of successfully completed objects. + :vartype number_of_objects_completed: long + :ivar error_count: Number of database/object errors. + :vartype error_count: long + :ivar error_prefix: Wildcard string prefix to use for querying all errors of the item. + :vartype error_prefix: str + :ivar result_prefix: Wildcard string prefix to use for querying all sub-tem results of the + item. + :vartype result_prefix: str + :ivar exceptions_and_warnings: Migration exceptions and warnings. + :vartype exceptions_and_warnings: list[~azure.mgmt.datamigration.models.ReportableException] + :ivar last_storage_update: Last time the storage was updated. + :vartype last_storage_update: ~datetime.datetime + :ivar object_summary: Summary of object results in the migration. + :vartype object_summary: str """ _validation = { 'id': {'readonly': True}, 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'state': {'readonly': True}, + 'stage': {'readonly': True}, + 'status_message': {'readonly': True}, + 'message': {'readonly': True}, + 'number_of_objects': {'readonly': True}, + 'number_of_objects_completed': {'readonly': True}, + 'error_count': {'readonly': True}, + 'error_prefix': {'readonly': True}, + 'result_prefix': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + 'last_storage_update': {'readonly': True}, + 'object_summary': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'result_type': {'key': 'resultType', 'type': 'str'}, - 'error_message': {'key': 'errorMessage', 'type': 'str'}, - 'events': {'key': 'events', 'type': '[SyncMigrationDatabaseErrorEvent]'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'str'}, + 'stage': {'key': 'stage', 'type': 'str'}, + 'status_message': {'key': 'statusMessage', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'number_of_objects': {'key': 'numberOfObjects', 'type': 'long'}, + 'number_of_objects_completed': {'key': 'numberOfObjectsCompleted', 'type': 'long'}, + 'error_count': {'key': 'errorCount', 'type': 'long'}, + 'error_prefix': {'key': 'errorPrefix', 'type': 'str'}, + 'result_prefix': {'key': 'resultPrefix', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + 'last_storage_update': {'key': 'lastStorageUpdate', 'type': 'iso-8601'}, + 'object_summary': {'key': 'objectSummary', 'type': 'str'}, } def __init__( self, **kwargs ): - super(MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, self).__init__(**kwargs) - self.result_type = 'DatabaseLevelErrorOutput' # type: str - self.error_message = kwargs.get('error_message', None) - self.events = kwargs.get('events', None) + super(MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.result_type = 'DatabaseLevelOutput' # type: str + self.database_name = None + self.started_on = None + self.ended_on = None + self.state = None + self.stage = None + self.status_message = None + self.message = None + self.number_of_objects = None + self.number_of_objects_completed = None + self.error_count = None + self.error_prefix = None + self.result_prefix = None + self.exceptions_and_warnings = None + self.last_storage_update = None + self.object_summary = None -class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel(MigrateMySqlAzureDbForMySqlSyncTaskOutput): - """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel. +class MigrateMySqlAzureDbForMySqlOfflineTaskOutputError(MigrateMySqlAzureDbForMySqlOfflineTaskOutput): + """MigrateMySqlAzureDbForMySqlOfflineTaskOutputError. Variables are only populated by the server, and will be ignored when sending a request. @@ -4200,38 +4416,473 @@ class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel(MigrateMySqlAzureDb :vartype id: str :param result_type: Required. Result type.Constant filled by server. :type result_type: str - :ivar database_name: Name of the database. - :vartype database_name: str - :ivar started_on: Migration start time. - :vartype started_on: ~datetime.datetime - :ivar ended_on: Migration end time. - :vartype ended_on: ~datetime.datetime - :ivar migration_state: Migration state that this database is in. Possible values include: - "UNDEFINED", "CONFIGURING", "INITIALIAZING", "STARTING", "RUNNING", "READY_TO_COMPLETE", - "COMPLETING", "COMPLETE", "CANCELLING", "CANCELLED", "FAILED", "VALIDATING", - "VALIDATION_COMPLETE", "VALIDATION_FAILED", "RESTORE_IN_PROGRESS", "RESTORE_COMPLETED", - "BACKUP_IN_PROGRESS", "BACKUP_COMPLETED". - :vartype migration_state: str or - ~azure.mgmt.datamigration.models.SyncDatabaseMigrationReportingState - :ivar incoming_changes: Number of incoming changes. - :vartype incoming_changes: long - :ivar applied_changes: Number of applied changes. - :vartype applied_changes: long - :ivar cdc_insert_counter: Number of cdc inserts. - :vartype cdc_insert_counter: long - :ivar cdc_delete_counter: Number of cdc deletes. - :vartype cdc_delete_counter: long - :ivar cdc_update_counter: Number of cdc updates. - :vartype cdc_update_counter: long - :ivar full_load_completed_tables: Number of tables completed in full load. - :vartype full_load_completed_tables: long - :ivar full_load_loading_tables: Number of tables loading in full load. - :vartype full_load_loading_tables: long - :ivar full_load_queued_tables: Number of tables queued in full load. - :vartype full_load_queued_tables: long - :ivar full_load_errored_tables: Number of tables errored in full load. - :vartype full_load_errored_tables: long - :ivar initialization_completed: Indicates if initial load (full load) has been completed. + :ivar error: Migration error. + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlOfflineTaskOutputError, self).__init__(**kwargs) + self.result_type = 'ErrorOutput' # type: str + self.error = None + + +class MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel(MigrateMySqlAzureDbForMySqlOfflineTaskOutput): + """MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + :ivar started_on: Migration start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Migration end time. + :vartype ended_on: ~datetime.datetime + :ivar duration_in_seconds: Duration of task execution in seconds. + :vartype duration_in_seconds: long + :ivar status: Current status of migration. Possible values include: "Default", "Connecting", + "SourceAndTargetSelected", "SelectLogins", "Configured", "Running", "Error", "Stopped", + "Completed", "CompletedWithWarnings". + :vartype status: str or ~azure.mgmt.datamigration.models.MigrationStatus + :ivar status_message: Migration status message. + :vartype status_message: str + :ivar message: Migration progress message. + :vartype message: str + :param databases: Selected databases as a map from database name to database id. + :type databases: str + :ivar database_summary: Summary of database results in the migration. + :vartype database_summary: str + :param migration_report_result: Migration Report Result, provides unique url for downloading + your migration report. + :type migration_report_result: ~azure.mgmt.datamigration.models.MigrationReportResult + :ivar source_server_version: Source server version. + :vartype source_server_version: str + :ivar source_server_brand_version: Source server brand version. + :vartype source_server_brand_version: str + :ivar target_server_version: Target server version. + :vartype target_server_version: str + :ivar target_server_brand_version: Target server brand version. + :vartype target_server_brand_version: str + :ivar exceptions_and_warnings: Migration exceptions and warnings. + :vartype exceptions_and_warnings: list[~azure.mgmt.datamigration.models.ReportableException] + :ivar last_storage_update: Last time the storage was updated. + :vartype last_storage_update: ~datetime.datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'duration_in_seconds': {'readonly': True}, + 'status': {'readonly': True}, + 'status_message': {'readonly': True}, + 'message': {'readonly': True}, + 'database_summary': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server_brand_version': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server_brand_version': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + 'last_storage_update': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'duration_in_seconds': {'key': 'durationInSeconds', 'type': 'long'}, + 'status': {'key': 'status', 'type': 'str'}, + 'status_message': {'key': 'statusMessage', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'databases': {'key': 'databases', 'type': 'str'}, + 'database_summary': {'key': 'databaseSummary', 'type': 'str'}, + 'migration_report_result': {'key': 'migrationReportResult', 'type': 'MigrationReportResult'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server_brand_version': {'key': 'targetServerBrandVersion', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + 'last_storage_update': {'key': 'lastStorageUpdate', 'type': 'iso-8601'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel, self).__init__(**kwargs) + self.result_type = 'MigrationLevelOutput' # type: str + self.started_on = None + self.ended_on = None + self.duration_in_seconds = None + self.status = None + self.status_message = None + self.message = None + self.databases = kwargs.get('databases', None) + self.database_summary = None + self.migration_report_result = kwargs.get('migration_report_result', None) + self.source_server_version = None + self.source_server_brand_version = None + self.target_server_version = None + self.target_server_brand_version = None + self.exceptions_and_warnings = None + self.last_storage_update = None + + +class MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel(MigrateMySqlAzureDbForMySqlOfflineTaskOutput): + """MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + :ivar object_name: Name of the item. + :vartype object_name: str + :ivar started_on: Migration start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Migration end time. + :vartype ended_on: ~datetime.datetime + :ivar state: Current state of migration. Possible values include: "None", "InProgress", + "Failed", "Warning", "Completed", "Skipped", "Stopped". + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar status_message: Status message. + :vartype status_message: str + :ivar items_count: Number of items. + :vartype items_count: long + :ivar items_completed_count: Number of successfully completed items. + :vartype items_completed_count: long + :ivar error_prefix: Wildcard string prefix to use for querying all errors of the item. + :vartype error_prefix: str + :ivar result_prefix: Wildcard string prefix to use for querying all sub-tem results of the + item. + :vartype result_prefix: str + :ivar last_storage_update: Last time the storage was updated. + :vartype last_storage_update: ~datetime.datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'object_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'state': {'readonly': True}, + 'status_message': {'readonly': True}, + 'items_count': {'readonly': True}, + 'items_completed_count': {'readonly': True}, + 'error_prefix': {'readonly': True}, + 'result_prefix': {'readonly': True}, + 'last_storage_update': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'object_name': {'key': 'objectName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'str'}, + 'status_message': {'key': 'statusMessage', 'type': 'str'}, + 'items_count': {'key': 'itemsCount', 'type': 'long'}, + 'items_completed_count': {'key': 'itemsCompletedCount', 'type': 'long'}, + 'error_prefix': {'key': 'errorPrefix', 'type': 'str'}, + 'result_prefix': {'key': 'resultPrefix', 'type': 'str'}, + 'last_storage_update': {'key': 'lastStorageUpdate', 'type': 'iso-8601'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel, self).__init__(**kwargs) + self.result_type = 'TableLevelOutput' # type: str + self.object_name = None + self.started_on = None + self.ended_on = None + self.state = None + self.status_message = None + self.items_count = None + self.items_completed_count = None + self.error_prefix = None + self.result_prefix = None + self.last_storage_update = None + + +class MigrateMySqlAzureDbForMySqlOfflineTaskProperties(ProjectTaskProperties): + """Properties for the task that migrates MySQL databases to Azure Database for MySQL for offline migrations. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :param task_type: Required. Task type.Constant filled by server. + :type task_type: str + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible values include: + "Unknown", "Queued", "Running", "Canceled", "Succeeded", "Failed", "FailedInputValidation", + "Faulted". + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: list[~azure.mgmt.datamigration.models.CommandProperties] + :param client_data: Key value pairs of client data to attach meta data information to task. + :type client_data: dict[str, str] + :param input: Task input. + :type input: ~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlOfflineTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlOfflineTaskOutput] + """ + + _validation = { + 'task_type': {'required': True}, + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'client_data': {'key': 'clientData', 'type': '{str}'}, + 'input': {'key': 'input', 'type': 'MigrateMySqlAzureDbForMySqlOfflineTaskInput'}, + 'output': {'key': 'output', 'type': '[MigrateMySqlAzureDbForMySqlOfflineTaskOutput]'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlOfflineTaskProperties, self).__init__(**kwargs) + self.task_type = 'Migrate.MySql.AzureDbForMySql' # type: str + self.input = kwargs.get('input', None) + self.output = None + + +class MigrateMySqlAzureDbForMySqlSyncDatabaseInput(msrest.serialization.Model): + """Database specific information for MySQL to Azure Database for MySQL migration task inputs. + + :param name: Name of the database. + :type name: str + :param target_database_name: Name of target database. Note: Target database will be truncated + before starting migration. + :type target_database_name: str + :param migration_setting: Migration settings which tune the migration behavior. + :type migration_setting: dict[str, str] + :param source_setting: Source settings to tune source endpoint migration behavior. + :type source_setting: dict[str, str] + :param target_setting: Target settings to tune target endpoint migration behavior. + :type target_setting: dict[str, str] + :param table_map: Mapping of source to target tables. + :type table_map: dict[str, str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'migration_setting': {'key': 'migrationSetting', 'type': '{str}'}, + 'source_setting': {'key': 'sourceSetting', 'type': '{str}'}, + 'target_setting': {'key': 'targetSetting', 'type': '{str}'}, + 'table_map': {'key': 'tableMap', 'type': '{str}'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlSyncDatabaseInput, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.target_database_name = kwargs.get('target_database_name', None) + self.migration_setting = kwargs.get('migration_setting', None) + self.source_setting = kwargs.get('source_setting', None) + self.target_setting = kwargs.get('target_setting', None) + self.table_map = kwargs.get('table_map', None) + + +class MigrateMySqlAzureDbForMySqlSyncTaskInput(msrest.serialization.Model): + """Input for the task that migrates MySQL databases to Azure Database for MySQL for online migrations. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Connection information for source MySQL. + :type source_connection_info: ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param target_connection_info: Required. Connection information for target Azure Database for + MySQL. + :type target_connection_info: ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param selected_databases: Required. Databases to migrate. + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlSyncDatabaseInput] + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateMySqlAzureDbForMySqlSyncDatabaseInput]'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlSyncTaskInput, self).__init__(**kwargs) + self.source_connection_info = kwargs['source_connection_info'] + self.target_connection_info = kwargs['target_connection_info'] + self.selected_databases = kwargs['selected_databases'] + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutput(msrest.serialization.Model): + """Output for the task that migrates MySQL databases to Azure Database for MySQL for online migrations. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, MigrateMySqlAzureDbForMySqlSyncTaskOutputError, MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'DatabaseLevelErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError', 'DatabaseLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel', 'ErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputError', 'MigrationLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel', 'TableLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel'} + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlSyncTaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None # type: Optional[str] + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + :param error_message: Error message. + :type error_message: str + :param events: List of error events. + :type events: list[~azure.mgmt.datamigration.models.SyncMigrationDatabaseErrorEvent] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error_message': {'key': 'errorMessage', 'type': 'str'}, + 'events': {'key': 'events', 'type': '[SyncMigrationDatabaseErrorEvent]'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, self).__init__(**kwargs) + self.result_type = 'DatabaseLevelErrorOutput' # type: str + self.error_message = kwargs.get('error_message', None) + self.events = kwargs.get('events', None) + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + :ivar database_name: Name of the database. + :vartype database_name: str + :ivar started_on: Migration start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Migration end time. + :vartype ended_on: ~datetime.datetime + :ivar migration_state: Migration state that this database is in. Possible values include: + "UNDEFINED", "CONFIGURING", "INITIALIAZING", "STARTING", "RUNNING", "READY_TO_COMPLETE", + "COMPLETING", "COMPLETE", "CANCELLING", "CANCELLED", "FAILED", "VALIDATING", + "VALIDATION_COMPLETE", "VALIDATION_FAILED", "RESTORE_IN_PROGRESS", "RESTORE_COMPLETED", + "BACKUP_IN_PROGRESS", "BACKUP_COMPLETED". + :vartype migration_state: str or + ~azure.mgmt.datamigration.models.SyncDatabaseMigrationReportingState + :ivar incoming_changes: Number of incoming changes. + :vartype incoming_changes: long + :ivar applied_changes: Number of applied changes. + :vartype applied_changes: long + :ivar cdc_insert_counter: Number of cdc inserts. + :vartype cdc_insert_counter: long + :ivar cdc_delete_counter: Number of cdc deletes. + :vartype cdc_delete_counter: long + :ivar cdc_update_counter: Number of cdc updates. + :vartype cdc_update_counter: long + :ivar full_load_completed_tables: Number of tables completed in full load. + :vartype full_load_completed_tables: long + :ivar full_load_loading_tables: Number of tables loading in full load. + :vartype full_load_loading_tables: long + :ivar full_load_queued_tables: Number of tables queued in full load. + :vartype full_load_queued_tables: long + :ivar full_load_errored_tables: Number of tables errored in full load. + :vartype full_load_errored_tables: long + :ivar initialization_completed: Indicates if initial load (full load) has been completed. :vartype initialization_completed: bool :ivar latency: CDC apply latency. :vartype latency: long @@ -5723,15 +6374,17 @@ class MigrateSchemaSqlServerSqlDbTaskOutput(msrest.serialization.Model): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Result identifier. :vartype id: str - :ivar result_type: Result type.Constant filled by server. - :vartype result_type: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str """ _validation = { 'id': {'readonly': True}, - 'result_type': {'readonly': True}, + 'result_type': {'required': True}, } _attribute_map = { @@ -5757,10 +6410,12 @@ class MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel(MigrateSchemaSqlServerS Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Result identifier. :vartype id: str - :ivar result_type: Result type.Constant filled by server. - :vartype result_type: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str :ivar database_name: The name of the database. :vartype database_name: str :ivar state: State of the schema migration for this database. Possible values include: "None", @@ -5789,7 +6444,7 @@ class MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel(MigrateSchemaSqlServerS _validation = { 'id': {'readonly': True}, - 'result_type': {'readonly': True}, + 'result_type': {'required': True}, 'database_name': {'readonly': True}, 'state': {'readonly': True}, 'stage': {'readonly': True}, @@ -5840,10 +6495,12 @@ class MigrateSchemaSqlServerSqlDbTaskOutputError(MigrateSchemaSqlServerSqlDbTask Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Result identifier. :vartype id: str - :ivar result_type: Result type.Constant filled by server. - :vartype result_type: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str :ivar command_text: Schema command which failed. :vartype command_text: str :ivar error_text: Reason of failure. @@ -5852,7 +6509,7 @@ class MigrateSchemaSqlServerSqlDbTaskOutputError(MigrateSchemaSqlServerSqlDbTask _validation = { 'id': {'readonly': True}, - 'result_type': {'readonly': True}, + 'result_type': {'required': True}, 'command_text': {'readonly': True}, 'error_text': {'readonly': True}, } @@ -5879,10 +6536,12 @@ class MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel(MigrateSchemaSqlServer Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Result identifier. :vartype id: str - :ivar result_type: Result type.Constant filled by server. - :vartype result_type: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str :ivar state: Overall state of the schema migration. Possible values include: "None", "InProgress", "Failed", "Warning", "Completed", "Skipped", "Stopped". :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState @@ -5902,7 +6561,7 @@ class MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel(MigrateSchemaSqlServer _validation = { 'id': {'readonly': True}, - 'result_type': {'readonly': True}, + 'result_type': {'required': True}, 'state': {'readonly': True}, 'started_on': {'readonly': True}, 'ended_on': {'readonly': True}, @@ -5997,17 +6656,19 @@ class MigrateSchemaSqlTaskOutputError(MigrateSchemaSqlServerSqlDbTaskOutput): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Result identifier. :vartype id: str - :ivar result_type: Result type.Constant filled by server. - :vartype result_type: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str :ivar error: Migration error. :vartype error: ~azure.mgmt.datamigration.models.ReportableException """ _validation = { 'id': {'readonly': True}, - 'result_type': {'readonly': True}, + 'result_type': {'required': True}, 'error': {'readonly': True}, } @@ -6665,7 +7326,7 @@ class MigrateSqlServerSqlDbTaskOutput(msrest.serialization.Model): """Output for the task that migrates on-prem SQL Server databases to Azure SQL Database. You probably want to use the sub-classes and not this class directly. Known - sub-classes are: MigrateSqlServerSqlDbTaskOutputDatabaseLevel, MigrateSqlServerSqlDbTaskOutputError, MigrateSqlServerSqlDbTaskOutputMigrationLevel, MigrateSqlServerSqlDbTaskOutputTableLevel. + sub-classes are: MigrateSqlServerSqlDbTaskOutputDatabaseLevel, MigrateSqlServerSqlDbTaskOutputError, MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult, MigrateSqlServerSqlDbTaskOutputMigrationLevel, MigrateSqlServerSqlDbTaskOutputValidationResult, MigrateSqlServerSqlDbTaskOutputTableLevel. Variables are only populated by the server, and will be ignored when sending a request. @@ -6688,7 +7349,7 @@ class MigrateSqlServerSqlDbTaskOutput(msrest.serialization.Model): } _subtype_map = { - 'result_type': {'DatabaseLevelOutput': 'MigrateSqlServerSqlDbTaskOutputDatabaseLevel', 'ErrorOutput': 'MigrateSqlServerSqlDbTaskOutputError', 'MigrationLevelOutput': 'MigrateSqlServerSqlDbTaskOutputMigrationLevel', 'TableLevelOutput': 'MigrateSqlServerSqlDbTaskOutputTableLevel'} + 'result_type': {'DatabaseLevelOutput': 'MigrateSqlServerSqlDbTaskOutputDatabaseLevel', 'ErrorOutput': 'MigrateSqlServerSqlDbTaskOutputError', 'MigrationDatabaseLevelValidationOutput': 'MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult', 'MigrationLevelOutput': 'MigrateSqlServerSqlDbTaskOutputMigrationLevel', 'MigrationValidationOutput': 'MigrateSqlServerSqlDbTaskOutputValidationResult', 'TableLevelOutput': 'MigrateSqlServerSqlDbTaskOutputTableLevel'} } def __init__( @@ -6786,22 +7447,186 @@ def __init__( self, **kwargs ): - super(MigrateSqlServerSqlDbTaskOutputDatabaseLevel, self).__init__(**kwargs) - self.result_type = 'DatabaseLevelOutput' # type: str - self.database_name = None + super(MigrateSqlServerSqlDbTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.result_type = 'DatabaseLevelOutput' # type: str + self.database_name = None + self.started_on = None + self.ended_on = None + self.state = None + self.stage = None + self.status_message = None + self.message = None + self.number_of_objects = None + self.number_of_objects_completed = None + self.error_count = None + self.error_prefix = None + self.result_prefix = None + self.exceptions_and_warnings = None + self.object_summary = None + + +class MigrationValidationDatabaseLevelResult(msrest.serialization.Model): + """Database level validation results. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Result identifier. + :vartype id: str + :ivar migration_id: Migration Identifier. + :vartype migration_id: str + :ivar source_database_name: Name of the source database. + :vartype source_database_name: str + :ivar target_database_name: Name of the target database. + :vartype target_database_name: str + :ivar started_on: Validation start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Validation end time. + :vartype ended_on: ~datetime.datetime + :ivar data_integrity_validation_result: Provides data integrity validation result between the + source and target tables that are migrated. + :vartype data_integrity_validation_result: + ~azure.mgmt.datamigration.models.DataIntegrityValidationResult + :ivar schema_validation_result: Provides schema comparison result between source and target + database. + :vartype schema_validation_result: + ~azure.mgmt.datamigration.models.SchemaComparisonValidationResult + :ivar query_analysis_validation_result: Results of some of the query execution result between + source and target database. + :vartype query_analysis_validation_result: + ~azure.mgmt.datamigration.models.QueryAnalysisValidationResult + :ivar status: Current status of validation at the database level. Possible values include: + "Default", "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", + "Stopped", "Failed". + :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus + """ + + _validation = { + 'id': {'readonly': True}, + 'migration_id': {'readonly': True}, + 'source_database_name': {'readonly': True}, + 'target_database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'data_integrity_validation_result': {'readonly': True}, + 'schema_validation_result': {'readonly': True}, + 'query_analysis_validation_result': {'readonly': True}, + 'status': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'migration_id': {'key': 'migrationId', 'type': 'str'}, + 'source_database_name': {'key': 'sourceDatabaseName', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'data_integrity_validation_result': {'key': 'dataIntegrityValidationResult', 'type': 'DataIntegrityValidationResult'}, + 'schema_validation_result': {'key': 'schemaValidationResult', 'type': 'SchemaComparisonValidationResult'}, + 'query_analysis_validation_result': {'key': 'queryAnalysisValidationResult', 'type': 'QueryAnalysisValidationResult'}, + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrationValidationDatabaseLevelResult, self).__init__(**kwargs) + self.id = None + self.migration_id = None + self.source_database_name = None + self.target_database_name = None + self.started_on = None + self.ended_on = None + self.data_integrity_validation_result = None + self.schema_validation_result = None + self.query_analysis_validation_result = None + self.status = None + + +class MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult(MigrateSqlServerSqlDbTaskOutput, MigrationValidationDatabaseLevelResult): + """MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar migration_id: Migration Identifier. + :vartype migration_id: str + :ivar source_database_name: Name of the source database. + :vartype source_database_name: str + :ivar target_database_name: Name of the target database. + :vartype target_database_name: str + :ivar started_on: Validation start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Validation end time. + :vartype ended_on: ~datetime.datetime + :ivar data_integrity_validation_result: Provides data integrity validation result between the + source and target tables that are migrated. + :vartype data_integrity_validation_result: + ~azure.mgmt.datamigration.models.DataIntegrityValidationResult + :ivar schema_validation_result: Provides schema comparison result between source and target + database. + :vartype schema_validation_result: + ~azure.mgmt.datamigration.models.SchemaComparisonValidationResult + :ivar query_analysis_validation_result: Results of some of the query execution result between + source and target database. + :vartype query_analysis_validation_result: + ~azure.mgmt.datamigration.models.QueryAnalysisValidationResult + :ivar status: Current status of validation at the database level. Possible values include: + "Default", "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", + "Stopped", "Failed". + :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + """ + + _validation = { + 'migration_id': {'readonly': True}, + 'source_database_name': {'readonly': True}, + 'target_database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'data_integrity_validation_result': {'readonly': True}, + 'schema_validation_result': {'readonly': True}, + 'query_analysis_validation_result': {'readonly': True}, + 'status': {'readonly': True}, + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'migration_id': {'key': 'migrationId', 'type': 'str'}, + 'source_database_name': {'key': 'sourceDatabaseName', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'data_integrity_validation_result': {'key': 'dataIntegrityValidationResult', 'type': 'DataIntegrityValidationResult'}, + 'schema_validation_result': {'key': 'schemaValidationResult', 'type': 'SchemaComparisonValidationResult'}, + 'query_analysis_validation_result': {'key': 'queryAnalysisValidationResult', 'type': 'QueryAnalysisValidationResult'}, + 'status': {'key': 'status', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult, self).__init__(**kwargs) + self.migration_id = None + self.source_database_name = None + self.target_database_name = None self.started_on = None self.ended_on = None - self.state = None - self.stage = None - self.status_message = None - self.message = None - self.number_of_objects = None - self.number_of_objects_completed = None - self.error_count = None - self.error_prefix = None - self.result_prefix = None - self.exceptions_and_warnings = None - self.object_summary = None + self.data_integrity_validation_result = None + self.schema_validation_result = None + self.query_analysis_validation_result = None + self.status = None + self.result_type = 'MigrationDatabaseLevelValidationOutput' # type: str + self.id = None + self.result_type = 'MigrationDatabaseLevelValidationOutput' # type: str class MigrateSqlServerSqlDbTaskOutputError(MigrateSqlServerSqlDbTaskOutput): @@ -7025,6 +7850,100 @@ def __init__( self.result_prefix = None +class MigrationValidationResult(msrest.serialization.Model): + """Migration Validation Result. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Migration validation result identifier. + :vartype id: str + :ivar migration_id: Migration Identifier. + :vartype migration_id: str + :param summary_results: Validation summary results for each database. + :type summary_results: dict[str, + ~azure.mgmt.datamigration.models.MigrationValidationDatabaseSummaryResult] + :ivar status: Current status of validation at the migration level. Status from the database + validation result status will be aggregated here. Possible values include: "Default", + "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", "Stopped", + "Failed". + :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus + """ + + _validation = { + 'id': {'readonly': True}, + 'migration_id': {'readonly': True}, + 'status': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'migration_id': {'key': 'migrationId', 'type': 'str'}, + 'summary_results': {'key': 'summaryResults', 'type': '{MigrationValidationDatabaseSummaryResult}'}, + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrationValidationResult, self).__init__(**kwargs) + self.id = None + self.migration_id = None + self.summary_results = kwargs.get('summary_results', None) + self.status = None + + +class MigrateSqlServerSqlDbTaskOutputValidationResult(MigrateSqlServerSqlDbTaskOutput, MigrationValidationResult): + """MigrateSqlServerSqlDbTaskOutputValidationResult. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar migration_id: Migration Identifier. + :vartype migration_id: str + :param summary_results: Validation summary results for each database. + :type summary_results: dict[str, + ~azure.mgmt.datamigration.models.MigrationValidationDatabaseSummaryResult] + :ivar status: Current status of validation at the migration level. Status from the database + validation result status will be aggregated here. Possible values include: "Default", + "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", "Stopped", + "Failed". + :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + """ + + _validation = { + 'migration_id': {'readonly': True}, + 'status': {'readonly': True}, + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'migration_id': {'key': 'migrationId', 'type': 'str'}, + 'summary_results': {'key': 'summaryResults', 'type': '{MigrationValidationDatabaseSummaryResult}'}, + 'status': {'key': 'status', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateSqlServerSqlDbTaskOutputValidationResult, self).__init__(**kwargs) + self.migration_id = None + self.summary_results = kwargs.get('summary_results', None) + self.status = None + self.result_type = 'MigrationValidationOutput' # type: str + self.id = None + self.result_type = 'MigrationValidationOutput' # type: str + + class MigrateSqlServerSqlDbTaskProperties(ProjectTaskProperties): """Properties for the task that migrates on-prem SQL Server databases to Azure SQL Database. @@ -8501,84 +9420,6 @@ def __init__( self.target_table_name = None -class MigrationValidationDatabaseLevelResult(msrest.serialization.Model): - """Database level validation results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Result identifier. - :vartype id: str - :ivar migration_id: Migration Identifier. - :vartype migration_id: str - :ivar source_database_name: Name of the source database. - :vartype source_database_name: str - :ivar target_database_name: Name of the target database. - :vartype target_database_name: str - :ivar started_on: Validation start time. - :vartype started_on: ~datetime.datetime - :ivar ended_on: Validation end time. - :vartype ended_on: ~datetime.datetime - :ivar data_integrity_validation_result: Provides data integrity validation result between the - source and target tables that are migrated. - :vartype data_integrity_validation_result: - ~azure.mgmt.datamigration.models.DataIntegrityValidationResult - :ivar schema_validation_result: Provides schema comparison result between source and target - database. - :vartype schema_validation_result: - ~azure.mgmt.datamigration.models.SchemaComparisonValidationResult - :ivar query_analysis_validation_result: Results of some of the query execution result between - source and target database. - :vartype query_analysis_validation_result: - ~azure.mgmt.datamigration.models.QueryAnalysisValidationResult - :ivar status: Current status of validation at the database level. Possible values include: - "Default", "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", - "Stopped", "Failed". - :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus - """ - - _validation = { - 'id': {'readonly': True}, - 'migration_id': {'readonly': True}, - 'source_database_name': {'readonly': True}, - 'target_database_name': {'readonly': True}, - 'started_on': {'readonly': True}, - 'ended_on': {'readonly': True}, - 'data_integrity_validation_result': {'readonly': True}, - 'schema_validation_result': {'readonly': True}, - 'query_analysis_validation_result': {'readonly': True}, - 'status': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'migration_id': {'key': 'migrationId', 'type': 'str'}, - 'source_database_name': {'key': 'sourceDatabaseName', 'type': 'str'}, - 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, - 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, - 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, - 'data_integrity_validation_result': {'key': 'dataIntegrityValidationResult', 'type': 'DataIntegrityValidationResult'}, - 'schema_validation_result': {'key': 'schemaValidationResult', 'type': 'SchemaComparisonValidationResult'}, - 'query_analysis_validation_result': {'key': 'queryAnalysisValidationResult', 'type': 'QueryAnalysisValidationResult'}, - 'status': {'key': 'status', 'type': 'str'}, - } - - def __init__( - self, - **kwargs - ): - super(MigrationValidationDatabaseLevelResult, self).__init__(**kwargs) - self.id = None - self.migration_id = None - self.source_database_name = None - self.target_database_name = None - self.started_on = None - self.ended_on = None - self.data_integrity_validation_result = None - self.schema_validation_result = None - self.query_analysis_validation_result = None - self.status = None - - class MigrationValidationDatabaseSummaryResult(msrest.serialization.Model): """Migration Validation Database level summary result. @@ -8668,49 +9509,6 @@ def __init__( self.enable_query_analysis_validation = kwargs.get('enable_query_analysis_validation', None) -class MigrationValidationResult(msrest.serialization.Model): - """Migration Validation Result. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Migration validation result identifier. - :vartype id: str - :ivar migration_id: Migration Identifier. - :vartype migration_id: str - :param summary_results: Validation summary results for each database. - :type summary_results: dict[str, - ~azure.mgmt.datamigration.models.MigrationValidationDatabaseSummaryResult] - :ivar status: Current status of validation at the migration level. Status from the database - validation result status will be aggregated here. Possible values include: "Default", - "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", "Stopped", - "Failed". - :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus - """ - - _validation = { - 'id': {'readonly': True}, - 'migration_id': {'readonly': True}, - 'status': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'migration_id': {'key': 'migrationId', 'type': 'str'}, - 'summary_results': {'key': 'summaryResults', 'type': '{MigrationValidationDatabaseSummaryResult}'}, - 'status': {'key': 'status', 'type': 'str'}, - } - - def __init__( - self, - **kwargs - ): - super(MigrationValidationResult, self).__init__(**kwargs) - self.id = None - self.migration_id = None - self.summary_results = kwargs.get('summary_results', None) - self.status = None - - class MiSqlConnectionInfo(ConnectionInfo): """Properties required to create a connection to Azure SQL database Managed instance. @@ -9836,6 +10634,8 @@ class MySqlConnectionInfo(ConnectionInfo): :type server_name: str :param port: Required. Port for Server. :type port: int + :param encrypt_connection: Whether to encrypt the connection. + :type encrypt_connection: bool """ _validation = { @@ -9850,6 +10650,7 @@ class MySqlConnectionInfo(ConnectionInfo): 'password': {'key': 'password', 'type': 'str'}, 'server_name': {'key': 'serverName', 'type': 'str'}, 'port': {'key': 'port', 'type': 'int'}, + 'encrypt_connection': {'key': 'encryptConnection', 'type': 'bool'}, } def __init__( @@ -9860,6 +10661,7 @@ def __init__( self.type = 'MySqlConnectionInfo' # type: str self.server_name = kwargs['server_name'] self.port = kwargs['port'] + self.encrypt_connection = kwargs.get('encrypt_connection', True) class NameAvailabilityRequest(msrest.serialization.Model): @@ -10307,6 +11109,8 @@ class Project(TrackedResource): :type tags: dict[str, str] :param location: Required. Resource location. :type location: str + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData :param source_platform: Source platform for the project. Possible values include: "SQL", "MySQL", "PostgreSql", "MongoDb", "Unknown". :type source_platform: str or ~azure.mgmt.datamigration.models.ProjectSourcePlatform @@ -10331,6 +11135,7 @@ class Project(TrackedResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'system_data': {'readonly': True}, 'creation_time': {'readonly': True}, 'provisioning_state': {'readonly': True}, } @@ -10341,6 +11146,7 @@ class Project(TrackedResource): 'type': {'key': 'type', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, 'source_platform': {'key': 'properties.sourcePlatform', 'type': 'str'}, 'target_platform': {'key': 'properties.targetPlatform', 'type': 'str'}, 'creation_time': {'key': 'properties.creationTime', 'type': 'iso-8601'}, @@ -10379,12 +11185,15 @@ class ProjectFile(Resource): :type etag: str :param properties: Custom file properties. :type properties: ~azure.mgmt.datamigration.models.ProjectFileProperties + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, + 'system_data': {'readonly': True}, } _attribute_map = { @@ -10393,6 +11202,7 @@ class ProjectFile(Resource): 'type': {'key': 'type', 'type': 'str'}, 'etag': {'key': 'etag', 'type': 'str'}, 'properties': {'key': 'properties', 'type': 'ProjectFileProperties'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, } def __init__( @@ -10402,6 +11212,7 @@ def __init__( super(ProjectFile, self).__init__(**kwargs) self.etag = kwargs.get('etag', None) self.properties = kwargs.get('properties', None) + self.system_data = None class ProjectFileProperties(msrest.serialization.Model): @@ -10487,12 +11298,15 @@ class ProjectTask(Resource): :type etag: str :param properties: Custom task properties. :type properties: ~azure.mgmt.datamigration.models.ProjectTaskProperties + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, + 'system_data': {'readonly': True}, } _attribute_map = { @@ -10501,6 +11315,7 @@ class ProjectTask(Resource): 'type': {'key': 'type', 'type': 'str'}, 'etag': {'key': 'etag', 'type': 'str'}, 'properties': {'key': 'properties', 'type': 'ProjectTaskProperties'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, } def __init__( @@ -10510,6 +11325,7 @@ def __init__( super(ProjectTask, self).__init__(**kwargs) self.etag = kwargs.get('etag', None) self.properties = kwargs.get('properties', None) + self.system_data = None class QueryAnalysisValidationResult(msrest.serialization.Model): @@ -11408,6 +12224,47 @@ def __init__( self.event_text = None +class SystemData(msrest.serialization.Model): + """Metadata pertaining to creation and last modification of the resource. + + :param created_by: The identity that created the resource. + :type created_by: str + :param created_by_type: The type of identity that created the resource. Possible values + include: "User", "Application", "ManagedIdentity", "Key". + :type created_by_type: str or ~azure.mgmt.datamigration.models.CreatedByType + :param created_at: The timestamp of resource creation (UTC). + :type created_at: ~datetime.datetime + :param last_modified_by: The identity that last modified the resource. + :type last_modified_by: str + :param last_modified_by_type: The type of identity that last modified the resource. Possible + values include: "User", "Application", "ManagedIdentity", "Key". + :type last_modified_by_type: str or ~azure.mgmt.datamigration.models.CreatedByType + :param last_modified_at: The timestamp of resource last modification (UTC). + :type last_modified_at: ~datetime.datetime + """ + + _attribute_map = { + 'created_by': {'key': 'createdBy', 'type': 'str'}, + 'created_by_type': {'key': 'createdByType', 'type': 'str'}, + 'created_at': {'key': 'createdAt', 'type': 'iso-8601'}, + 'last_modified_by': {'key': 'lastModifiedBy', 'type': 'str'}, + 'last_modified_by_type': {'key': 'lastModifiedByType', 'type': 'str'}, + 'last_modified_at': {'key': 'lastModifiedAt', 'type': 'iso-8601'}, + } + + def __init__( + self, + **kwargs + ): + super(SystemData, self).__init__(**kwargs) + self.created_by = kwargs.get('created_by', None) + self.created_by_type = kwargs.get('created_by_type', None) + self.created_at = kwargs.get('created_at', None) + self.last_modified_by = kwargs.get('last_modified_by', None) + self.last_modified_by_type = kwargs.get('last_modified_by_type', None) + self.last_modified_at = kwargs.get('last_modified_at', None) + + class TaskList(msrest.serialization.Model): """OData page of tasks. diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_models_py3.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_models_py3.py index 224285a03b12..2b210bbce4ea 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_models_py3.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/models/_models_py3.py @@ -18,12 +18,21 @@ class ApiError(msrest.serialization.Model): """Error information. + Variables are only populated by the server, and will be ignored when sending a request. + :param error: Error information in OData format. :type error: ~azure.mgmt.datamigration.models.ODataError + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData """ + _validation = { + 'system_data': {'readonly': True}, + } + _attribute_map = { 'error': {'key': 'error', 'type': 'ODataError'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, } def __init__( @@ -34,6 +43,7 @@ def __init__( ): super(ApiError, self).__init__(**kwargs) self.error = error + self.system_data = None class AvailableServiceSku(msrest.serialization.Model): @@ -362,7 +372,7 @@ class ProjectTaskProperties(msrest.serialization.Model): """Base class for all types of DMS task properties. If task is not supported by current client, this object is returned. You probably want to use the sub-classes and not this class directly. Known - sub-classes are: ConnectToMongoDbTaskProperties, ConnectToSourceMySqlTaskProperties, ConnectToSourceOracleSyncTaskProperties, ConnectToSourcePostgreSqlSyncTaskProperties, ConnectToSourceSqlServerTaskProperties, ConnectToSourceSqlServerSyncTaskProperties, ConnectToTargetAzureDbForMySqlTaskProperties, ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, ConnectToTargetSqlMITaskProperties, ConnectToTargetSqlMISyncTaskProperties, ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, ConnectToTargetSqlDbTaskProperties, ConnectToTargetSqlDbSyncTaskProperties, GetTdeCertificatesSqlTaskProperties, GetUserTablesSqlSyncTaskProperties, GetUserTablesSqlTaskProperties, GetUserTablesOracleTaskProperties, GetUserTablesPostgreSqlTaskProperties, MigrateMongoDbTaskProperties, MigrateMySqlAzureDbForMySqlSyncTaskProperties, MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, MigrateSqlServerSqlDbSyncTaskProperties, MigrateSqlServerSqlMITaskProperties, MigrateSqlServerSqlMISyncTaskProperties, MigrateSqlServerSqlDbTaskProperties, MigrateSsisTaskProperties, MigrateSchemaSqlServerSqlDbTaskProperties, CheckOCIDriverTaskProperties, InstallOCIDriverTaskProperties, UploadOCIDriverTaskProperties, ValidateMongoDbTaskProperties, ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, ValidateMigrationInputSqlServerSqlMITaskProperties, ValidateMigrationInputSqlServerSqlMISyncTaskProperties, ValidateMigrationInputSqlServerSqlDbSyncTaskProperties. + sub-classes are: ConnectToMongoDbTaskProperties, ConnectToSourceMySqlTaskProperties, ConnectToSourceOracleSyncTaskProperties, ConnectToSourcePostgreSqlSyncTaskProperties, ConnectToSourceSqlServerTaskProperties, ConnectToSourceSqlServerSyncTaskProperties, ConnectToTargetAzureDbForMySqlTaskProperties, ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, ConnectToTargetSqlMITaskProperties, ConnectToTargetSqlMISyncTaskProperties, ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, ConnectToTargetSqlDbTaskProperties, ConnectToTargetSqlDbSyncTaskProperties, GetTdeCertificatesSqlTaskProperties, GetUserTablesSqlSyncTaskProperties, GetUserTablesSqlTaskProperties, GetUserTablesMySqlTaskProperties, GetUserTablesOracleTaskProperties, GetUserTablesPostgreSqlTaskProperties, MigrateMongoDbTaskProperties, MigrateMySqlAzureDbForMySqlOfflineTaskProperties, MigrateMySqlAzureDbForMySqlSyncTaskProperties, MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, MigrateSqlServerSqlDbSyncTaskProperties, MigrateSqlServerSqlMITaskProperties, MigrateSqlServerSqlMISyncTaskProperties, MigrateSqlServerSqlDbTaskProperties, MigrateSsisTaskProperties, MigrateSchemaSqlServerSqlDbTaskProperties, CheckOCIDriverTaskProperties, InstallOCIDriverTaskProperties, UploadOCIDriverTaskProperties, ValidateMongoDbTaskProperties, ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, ValidateMigrationInputSqlServerSqlMITaskProperties, ValidateMigrationInputSqlServerSqlMISyncTaskProperties, ValidateMigrationInputSqlServerSqlDbSyncTaskProperties. Variables are only populated by the server, and will be ignored when sending a request. @@ -398,7 +408,7 @@ class ProjectTaskProperties(msrest.serialization.Model): } _subtype_map = { - 'task_type': {'Connect.MongoDb': 'ConnectToMongoDbTaskProperties', 'ConnectToSource.MySql': 'ConnectToSourceMySqlTaskProperties', 'ConnectToSource.Oracle.Sync': 'ConnectToSourceOracleSyncTaskProperties', 'ConnectToSource.PostgreSql.Sync': 'ConnectToSourcePostgreSqlSyncTaskProperties', 'ConnectToSource.SqlServer': 'ConnectToSourceSqlServerTaskProperties', 'ConnectToSource.SqlServer.Sync': 'ConnectToSourceSqlServerSyncTaskProperties', 'ConnectToTarget.AzureDbForMySql': 'ConnectToTargetAzureDbForMySqlTaskProperties', 'ConnectToTarget.AzureDbForPostgreSql.Sync': 'ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties', 'ConnectToTarget.AzureSqlDbMI': 'ConnectToTargetSqlMITaskProperties', 'ConnectToTarget.AzureSqlDbMI.Sync.LRS': 'ConnectToTargetSqlMISyncTaskProperties', 'ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync': 'ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties', 'ConnectToTarget.SqlDb': 'ConnectToTargetSqlDbTaskProperties', 'ConnectToTarget.SqlDb.Sync': 'ConnectToTargetSqlDbSyncTaskProperties', 'GetTDECertificates.Sql': 'GetTdeCertificatesSqlTaskProperties', 'GetUserTables.AzureSqlDb.Sync': 'GetUserTablesSqlSyncTaskProperties', 'GetUserTables.Sql': 'GetUserTablesSqlTaskProperties', 'GetUserTablesOracle': 'GetUserTablesOracleTaskProperties', 'GetUserTablesPostgreSql': 'GetUserTablesPostgreSqlTaskProperties', 'Migrate.MongoDb': 'MigrateMongoDbTaskProperties', 'Migrate.MySql.AzureDbForMySql.Sync': 'MigrateMySqlAzureDbForMySqlSyncTaskProperties', 'Migrate.Oracle.AzureDbForPostgreSql.Sync': 'MigrateOracleAzureDbForPostgreSqlSyncTaskProperties', 'Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties', 'Migrate.SqlServer.AzureSqlDb.Sync': 'MigrateSqlServerSqlDbSyncTaskProperties', 'Migrate.SqlServer.AzureSqlDbMI': 'MigrateSqlServerSqlMITaskProperties', 'Migrate.SqlServer.AzureSqlDbMI.Sync.LRS': 'MigrateSqlServerSqlMISyncTaskProperties', 'Migrate.SqlServer.SqlDb': 'MigrateSqlServerSqlDbTaskProperties', 'Migrate.Ssis': 'MigrateSsisTaskProperties', 'MigrateSchemaSqlServerSqlDb': 'MigrateSchemaSqlServerSqlDbTaskProperties', 'Service.Check.OCI': 'CheckOCIDriverTaskProperties', 'Service.Install.OCI': 'InstallOCIDriverTaskProperties', 'Service.Upload.OCI': 'UploadOCIDriverTaskProperties', 'Validate.MongoDb': 'ValidateMongoDbTaskProperties', 'Validate.Oracle.AzureDbPostgreSql.Sync': 'ValidateOracleAzureDbForPostgreSqlSyncTaskProperties', 'ValidateMigrationInput.SqlServer.AzureSqlDbMI': 'ValidateMigrationInputSqlServerSqlMITaskProperties', 'ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS': 'ValidateMigrationInputSqlServerSqlMISyncTaskProperties', 'ValidateMigrationInput.SqlServer.SqlDb.Sync': 'ValidateMigrationInputSqlServerSqlDbSyncTaskProperties'} + 'task_type': {'Connect.MongoDb': 'ConnectToMongoDbTaskProperties', 'ConnectToSource.MySql': 'ConnectToSourceMySqlTaskProperties', 'ConnectToSource.Oracle.Sync': 'ConnectToSourceOracleSyncTaskProperties', 'ConnectToSource.PostgreSql.Sync': 'ConnectToSourcePostgreSqlSyncTaskProperties', 'ConnectToSource.SqlServer': 'ConnectToSourceSqlServerTaskProperties', 'ConnectToSource.SqlServer.Sync': 'ConnectToSourceSqlServerSyncTaskProperties', 'ConnectToTarget.AzureDbForMySql': 'ConnectToTargetAzureDbForMySqlTaskProperties', 'ConnectToTarget.AzureDbForPostgreSql.Sync': 'ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties', 'ConnectToTarget.AzureSqlDbMI': 'ConnectToTargetSqlMITaskProperties', 'ConnectToTarget.AzureSqlDbMI.Sync.LRS': 'ConnectToTargetSqlMISyncTaskProperties', 'ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync': 'ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties', 'ConnectToTarget.SqlDb': 'ConnectToTargetSqlDbTaskProperties', 'ConnectToTarget.SqlDb.Sync': 'ConnectToTargetSqlDbSyncTaskProperties', 'GetTDECertificates.Sql': 'GetTdeCertificatesSqlTaskProperties', 'GetUserTables.AzureSqlDb.Sync': 'GetUserTablesSqlSyncTaskProperties', 'GetUserTables.Sql': 'GetUserTablesSqlTaskProperties', 'GetUserTablesMySql': 'GetUserTablesMySqlTaskProperties', 'GetUserTablesOracle': 'GetUserTablesOracleTaskProperties', 'GetUserTablesPostgreSql': 'GetUserTablesPostgreSqlTaskProperties', 'Migrate.MongoDb': 'MigrateMongoDbTaskProperties', 'Migrate.MySql.AzureDbForMySql': 'MigrateMySqlAzureDbForMySqlOfflineTaskProperties', 'Migrate.MySql.AzureDbForMySql.Sync': 'MigrateMySqlAzureDbForMySqlSyncTaskProperties', 'Migrate.Oracle.AzureDbForPostgreSql.Sync': 'MigrateOracleAzureDbForPostgreSqlSyncTaskProperties', 'Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties', 'Migrate.SqlServer.AzureSqlDb.Sync': 'MigrateSqlServerSqlDbSyncTaskProperties', 'Migrate.SqlServer.AzureSqlDbMI': 'MigrateSqlServerSqlMITaskProperties', 'Migrate.SqlServer.AzureSqlDbMI.Sync.LRS': 'MigrateSqlServerSqlMISyncTaskProperties', 'Migrate.SqlServer.SqlDb': 'MigrateSqlServerSqlDbTaskProperties', 'Migrate.Ssis': 'MigrateSsisTaskProperties', 'MigrateSchemaSqlServerSqlDb': 'MigrateSchemaSqlServerSqlDbTaskProperties', 'Service.Check.OCI': 'CheckOCIDriverTaskProperties', 'Service.Install.OCI': 'InstallOCIDriverTaskProperties', 'Service.Upload.OCI': 'UploadOCIDriverTaskProperties', 'Validate.MongoDb': 'ValidateMongoDbTaskProperties', 'Validate.Oracle.AzureDbPostgreSql.Sync': 'ValidateOracleAzureDbForPostgreSqlSyncTaskProperties', 'ValidateMigrationInput.SqlServer.AzureSqlDbMI': 'ValidateMigrationInputSqlServerSqlMITaskProperties', 'ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS': 'ValidateMigrationInputSqlServerSqlMISyncTaskProperties', 'ValidateMigrationInput.SqlServer.SqlDb.Sync': 'ValidateMigrationInputSqlServerSqlDbSyncTaskProperties'} } def __init__( @@ -630,6 +640,8 @@ class ConnectToSourceMySqlTaskInput(msrest.serialization.Model): "MigrationFromMySQLToAzureDBForMySQL". :type check_permissions_group: str or ~azure.mgmt.datamigration.models.ServerLevelPermissionsGroup + :param is_offline_migration: Flag for whether or not the migration is offline. + :type is_offline_migration: bool """ _validation = { @@ -640,6 +652,7 @@ class ConnectToSourceMySqlTaskInput(msrest.serialization.Model): 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, 'target_platform': {'key': 'targetPlatform', 'type': 'str'}, 'check_permissions_group': {'key': 'checkPermissionsGroup', 'type': 'str'}, + 'is_offline_migration': {'key': 'isOfflineMigration', 'type': 'bool'}, } def __init__( @@ -648,12 +661,14 @@ def __init__( source_connection_info: "MySqlConnectionInfo", target_platform: Optional[Union[str, "MySqlTargetPlatformType"]] = None, check_permissions_group: Optional[Union[str, "ServerLevelPermissionsGroup"]] = None, + is_offline_migration: Optional[bool] = False, **kwargs ): super(ConnectToSourceMySqlTaskInput, self).__init__(**kwargs) self.source_connection_info = source_connection_info self.target_platform = target_platform self.check_permissions_group = check_permissions_group + self.is_offline_migration = is_offline_migration class ConnectToSourceMySqlTaskProperties(ProjectTaskProperties): @@ -1486,6 +1501,8 @@ class ConnectToTargetAzureDbForMySqlTaskInput(msrest.serialization.Model): :param target_connection_info: Required. Connection information for target Azure Database for MySQL server. :type target_connection_info: ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param is_offline_migration: Flag for whether or not the migration is offline. + :type is_offline_migration: bool """ _validation = { @@ -1496,6 +1513,7 @@ class ConnectToTargetAzureDbForMySqlTaskInput(msrest.serialization.Model): _attribute_map = { 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'is_offline_migration': {'key': 'isOfflineMigration', 'type': 'bool'}, } def __init__( @@ -1503,11 +1521,13 @@ def __init__( *, source_connection_info: "MySqlConnectionInfo", target_connection_info: "MySqlConnectionInfo", + is_offline_migration: Optional[bool] = False, **kwargs ): super(ConnectToTargetAzureDbForMySqlTaskInput, self).__init__(**kwargs) self.source_connection_info = source_connection_info self.target_connection_info = target_connection_info + self.is_offline_migration = is_offline_migration class ConnectToTargetAzureDbForMySqlTaskOutput(msrest.serialization.Model): @@ -3057,6 +3077,8 @@ class TrackedResource(Resource): :type tags: dict[str, str] :param location: Required. Resource location. :type location: str + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData """ _validation = { @@ -3064,6 +3086,7 @@ class TrackedResource(Resource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'system_data': {'readonly': True}, } _attribute_map = { @@ -3072,6 +3095,7 @@ class TrackedResource(Resource): 'type': {'key': 'type', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, } def __init__( @@ -3084,6 +3108,7 @@ def __init__( super(TrackedResource, self).__init__(**kwargs) self.tags = tags self.location = location + self.system_data = None class DataMigrationService(TrackedResource): @@ -3103,6 +3128,8 @@ class DataMigrationService(TrackedResource): :type tags: dict[str, str] :param location: Required. Resource location. :type location: str + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData :param etag: HTTP strong entity tag value. Ignored if submitted. :type etag: str :param kind: The resource kind. Only 'vm' (the default) is supported. @@ -3128,6 +3155,7 @@ class DataMigrationService(TrackedResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'system_data': {'readonly': True}, 'provisioning_state': {'readonly': True}, } @@ -3137,6 +3165,7 @@ class DataMigrationService(TrackedResource): 'type': {'key': 'type', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, 'etag': {'key': 'etag', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'sku': {'key': 'sku', 'type': 'ServiceSku'}, @@ -3529,6 +3558,130 @@ def __init__( self.output = None +class GetUserTablesMySqlTaskInput(msrest.serialization.Model): + """Input for the task that collects user tables for the given list of databases. + + All required parameters must be populated in order to send to Azure. + + :param connection_info: Required. Connection information for SQL Server. + :type connection_info: ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param selected_databases: Required. List of database names to collect tables for. + :type selected_databases: list[str] + """ + + _validation = { + 'connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'connection_info': {'key': 'connectionInfo', 'type': 'MySqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[str]'}, + } + + def __init__( + self, + *, + connection_info: "MySqlConnectionInfo", + selected_databases: List[str], + **kwargs + ): + super(GetUserTablesMySqlTaskInput, self).__init__(**kwargs) + self.connection_info = connection_info + self.selected_databases = selected_databases + + +class GetUserTablesMySqlTaskOutput(msrest.serialization.Model): + """Output of the task that collects user tables for the given list of databases. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Result identifier. + :vartype id: str + :ivar databases_to_tables: Mapping from database name to list of tables. + :vartype databases_to_tables: str + :ivar validation_errors: Validation errors. + :vartype validation_errors: list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'databases_to_tables': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'databases_to_tables': {'key': 'databasesToTables', 'type': 'str'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__( + self, + **kwargs + ): + super(GetUserTablesMySqlTaskOutput, self).__init__(**kwargs) + self.id = None + self.databases_to_tables = None + self.validation_errors = None + + +class GetUserTablesMySqlTaskProperties(ProjectTaskProperties): + """Properties for the task that collects user tables for the given list of databases. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :param task_type: Required. Task type.Constant filled by server. + :type task_type: str + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible values include: + "Unknown", "Queued", "Running", "Canceled", "Succeeded", "Failed", "FailedInputValidation", + "Faulted". + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: list[~azure.mgmt.datamigration.models.CommandProperties] + :param client_data: Key value pairs of client data to attach meta data information to task. + :type client_data: dict[str, str] + :param input: Task input. + :type input: ~azure.mgmt.datamigration.models.GetUserTablesMySqlTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: list[~azure.mgmt.datamigration.models.GetUserTablesMySqlTaskOutput] + """ + + _validation = { + 'task_type': {'required': True}, + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'client_data': {'key': 'clientData', 'type': '{str}'}, + 'input': {'key': 'input', 'type': 'GetUserTablesMySqlTaskInput'}, + 'output': {'key': 'output', 'type': '[GetUserTablesMySqlTaskOutput]'}, + } + + def __init__( + self, + *, + client_data: Optional[Dict[str, str]] = None, + input: Optional["GetUserTablesMySqlTaskInput"] = None, + **kwargs + ): + super(GetUserTablesMySqlTaskProperties, self).__init__(client_data=client_data, **kwargs) + self.task_type = 'GetUserTablesMySql' # type: str + self.input = input + self.output = None + + class GetUserTablesOracleTaskInput(msrest.serialization.Model): """Input for the task that gets the list of tables contained within a provided list of Oracle schemas. @@ -4297,20 +4450,14 @@ def __init__( self.output = None -class MigrateMySqlAzureDbForMySqlSyncDatabaseInput(msrest.serialization.Model): - """Database specific information for MySQL to Azure Database for MySQL migration task inputs. +class MigrateMySqlAzureDbForMySqlOfflineDatabaseInput(msrest.serialization.Model): + """Database specific information for offline MySQL to Azure Database for MySQL migration task inputs. :param name: Name of the database. :type name: str :param target_database_name: Name of target database. Note: Target database will be truncated before starting migration. :type target_database_name: str - :param migration_setting: Migration settings which tune the migration behavior. - :type migration_setting: dict[str, str] - :param source_setting: Source settings to tune source endpoint migration behavior. - :type source_setting: dict[str, str] - :param target_setting: Target settings to tune target endpoint migration behavior. - :type target_setting: dict[str, str] :param table_map: Mapping of source to target tables. :type table_map: dict[str, str] """ @@ -4318,9 +4465,6 @@ class MigrateMySqlAzureDbForMySqlSyncDatabaseInput(msrest.serialization.Model): _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, - 'migration_setting': {'key': 'migrationSetting', 'type': '{str}'}, - 'source_setting': {'key': 'sourceSetting', 'type': '{str}'}, - 'target_setting': {'key': 'targetSetting', 'type': '{str}'}, 'table_map': {'key': 'tableMap', 'type': '{str}'}, } @@ -4329,23 +4473,17 @@ def __init__( *, name: Optional[str] = None, target_database_name: Optional[str] = None, - migration_setting: Optional[Dict[str, str]] = None, - source_setting: Optional[Dict[str, str]] = None, - target_setting: Optional[Dict[str, str]] = None, table_map: Optional[Dict[str, str]] = None, **kwargs ): - super(MigrateMySqlAzureDbForMySqlSyncDatabaseInput, self).__init__(**kwargs) + super(MigrateMySqlAzureDbForMySqlOfflineDatabaseInput, self).__init__(**kwargs) self.name = name self.target_database_name = target_database_name - self.migration_setting = migration_setting - self.source_setting = source_setting - self.target_setting = target_setting self.table_map = table_map -class MigrateMySqlAzureDbForMySqlSyncTaskInput(msrest.serialization.Model): - """Input for the task that migrates MySQL databases to Azure Database for MySQL for online migrations. +class MigrateMySqlAzureDbForMySqlOfflineTaskInput(msrest.serialization.Model): + """Input for the task that migrates MySQL databases to Azure Database for MySQL for offline migrations. All required parameters must be populated in order to send to Azure. @@ -4356,7 +4494,14 @@ class MigrateMySqlAzureDbForMySqlSyncTaskInput(msrest.serialization.Model): :type target_connection_info: ~azure.mgmt.datamigration.models.MySqlConnectionInfo :param selected_databases: Required. Databases to migrate. :type selected_databases: - list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlSyncDatabaseInput] + list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlOfflineDatabaseInput] + :param make_source_server_read_only: Setting to set the source server read only. + :type make_source_server_read_only: bool + :param started_on: Parameter to specify when the migration started. + :type started_on: ~datetime.datetime + :param optional_agent_settings: Optional parameters for fine tuning the data transfer rate + during migration. + :type optional_agent_settings: dict[str, str] """ _validation = { @@ -4368,7 +4513,10 @@ class MigrateMySqlAzureDbForMySqlSyncTaskInput(msrest.serialization.Model): _attribute_map = { 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'MySqlConnectionInfo'}, - 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateMySqlAzureDbForMySqlSyncDatabaseInput]'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateMySqlAzureDbForMySqlOfflineDatabaseInput]'}, + 'make_source_server_read_only': {'key': 'makeSourceServerReadOnly', 'type': 'bool'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'optional_agent_settings': {'key': 'optionalAgentSettings', 'type': '{str}'}, } def __init__( @@ -4376,20 +4524,26 @@ def __init__( *, source_connection_info: "MySqlConnectionInfo", target_connection_info: "MySqlConnectionInfo", - selected_databases: List["MigrateMySqlAzureDbForMySqlSyncDatabaseInput"], + selected_databases: List["MigrateMySqlAzureDbForMySqlOfflineDatabaseInput"], + make_source_server_read_only: Optional[bool] = False, + started_on: Optional[datetime.datetime] = None, + optional_agent_settings: Optional[Dict[str, str]] = None, **kwargs ): - super(MigrateMySqlAzureDbForMySqlSyncTaskInput, self).__init__(**kwargs) + super(MigrateMySqlAzureDbForMySqlOfflineTaskInput, self).__init__(**kwargs) self.source_connection_info = source_connection_info self.target_connection_info = target_connection_info self.selected_databases = selected_databases + self.make_source_server_read_only = make_source_server_read_only + self.started_on = started_on + self.optional_agent_settings = optional_agent_settings -class MigrateMySqlAzureDbForMySqlSyncTaskOutput(msrest.serialization.Model): - """Output for the task that migrates MySQL databases to Azure Database for MySQL for online migrations. +class MigrateMySqlAzureDbForMySqlOfflineTaskOutput(msrest.serialization.Model): + """Output for the task that migrates MySQL databases to Azure Database for MySQL for offline migrations. You probably want to use the sub-classes and not this class directly. Known - sub-classes are: MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, MigrateMySqlAzureDbForMySqlSyncTaskOutputError, MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel. + sub-classes are: MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel, MigrateMySqlAzureDbForMySqlOfflineTaskOutputError, MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel, MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel. Variables are only populated by the server, and will be ignored when sending a request. @@ -4412,20 +4566,20 @@ class MigrateMySqlAzureDbForMySqlSyncTaskOutput(msrest.serialization.Model): } _subtype_map = { - 'result_type': {'DatabaseLevelErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError', 'DatabaseLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel', 'ErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputError', 'MigrationLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel', 'TableLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel'} + 'result_type': {'DatabaseLevelOutput': 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel', 'ErrorOutput': 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputError', 'MigrationLevelOutput': 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel', 'TableLevelOutput': 'MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel'} } def __init__( self, **kwargs ): - super(MigrateMySqlAzureDbForMySqlSyncTaskOutput, self).__init__(**kwargs) + super(MigrateMySqlAzureDbForMySqlOfflineTaskOutput, self).__init__(**kwargs) self.id = None self.result_type = None # type: Optional[str] -class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError(MigrateMySqlAzureDbForMySqlSyncTaskOutput): - """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError. +class MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel(MigrateMySqlAzureDbForMySqlOfflineTaskOutput): + """MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel. Variables are only populated by the server, and will be ignored when sending a request. @@ -4435,39 +4589,106 @@ class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError(MigrateMySqlAzureDb :vartype id: str :param result_type: Required. Result type.Constant filled by server. :type result_type: str - :param error_message: Error message. - :type error_message: str - :param events: List of error events. - :type events: list[~azure.mgmt.datamigration.models.SyncMigrationDatabaseErrorEvent] + :ivar database_name: Name of the database. + :vartype database_name: str + :ivar started_on: Migration start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Migration end time. + :vartype ended_on: ~datetime.datetime + :ivar state: Current state of migration. Possible values include: "None", "InProgress", + "Failed", "Warning", "Completed", "Skipped", "Stopped". + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar stage: Migration stage that this database is in. Possible values include: "None", + "Initialize", "Backup", "FileCopy", "Restore", "Completed". + :vartype stage: str or ~azure.mgmt.datamigration.models.DatabaseMigrationStage + :ivar status_message: Status message. + :vartype status_message: str + :ivar message: Migration progress message. + :vartype message: str + :ivar number_of_objects: Number of objects. + :vartype number_of_objects: long + :ivar number_of_objects_completed: Number of successfully completed objects. + :vartype number_of_objects_completed: long + :ivar error_count: Number of database/object errors. + :vartype error_count: long + :ivar error_prefix: Wildcard string prefix to use for querying all errors of the item. + :vartype error_prefix: str + :ivar result_prefix: Wildcard string prefix to use for querying all sub-tem results of the + item. + :vartype result_prefix: str + :ivar exceptions_and_warnings: Migration exceptions and warnings. + :vartype exceptions_and_warnings: list[~azure.mgmt.datamigration.models.ReportableException] + :ivar last_storage_update: Last time the storage was updated. + :vartype last_storage_update: ~datetime.datetime + :ivar object_summary: Summary of object results in the migration. + :vartype object_summary: str """ _validation = { 'id': {'readonly': True}, 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'state': {'readonly': True}, + 'stage': {'readonly': True}, + 'status_message': {'readonly': True}, + 'message': {'readonly': True}, + 'number_of_objects': {'readonly': True}, + 'number_of_objects_completed': {'readonly': True}, + 'error_count': {'readonly': True}, + 'error_prefix': {'readonly': True}, + 'result_prefix': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + 'last_storage_update': {'readonly': True}, + 'object_summary': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'result_type': {'key': 'resultType', 'type': 'str'}, - 'error_message': {'key': 'errorMessage', 'type': 'str'}, - 'events': {'key': 'events', 'type': '[SyncMigrationDatabaseErrorEvent]'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'str'}, + 'stage': {'key': 'stage', 'type': 'str'}, + 'status_message': {'key': 'statusMessage', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'number_of_objects': {'key': 'numberOfObjects', 'type': 'long'}, + 'number_of_objects_completed': {'key': 'numberOfObjectsCompleted', 'type': 'long'}, + 'error_count': {'key': 'errorCount', 'type': 'long'}, + 'error_prefix': {'key': 'errorPrefix', 'type': 'str'}, + 'result_prefix': {'key': 'resultPrefix', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + 'last_storage_update': {'key': 'lastStorageUpdate', 'type': 'iso-8601'}, + 'object_summary': {'key': 'objectSummary', 'type': 'str'}, } def __init__( self, - *, - error_message: Optional[str] = None, - events: Optional[List["SyncMigrationDatabaseErrorEvent"]] = None, **kwargs ): - super(MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, self).__init__(**kwargs) - self.result_type = 'DatabaseLevelErrorOutput' # type: str - self.error_message = error_message - self.events = events + super(MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.result_type = 'DatabaseLevelOutput' # type: str + self.database_name = None + self.started_on = None + self.ended_on = None + self.state = None + self.stage = None + self.status_message = None + self.message = None + self.number_of_objects = None + self.number_of_objects_completed = None + self.error_count = None + self.error_prefix = None + self.result_prefix = None + self.exceptions_and_warnings = None + self.last_storage_update = None + self.object_summary = None -class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel(MigrateMySqlAzureDbForMySqlSyncTaskOutput): - """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel. +class MigrateMySqlAzureDbForMySqlOfflineTaskOutputError(MigrateMySqlAzureDbForMySqlOfflineTaskOutput): + """MigrateMySqlAzureDbForMySqlOfflineTaskOutputError. Variables are only populated by the server, and will be ignored when sending a request. @@ -4477,27 +4698,482 @@ class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel(MigrateMySqlAzureDb :vartype id: str :param result_type: Required. Result type.Constant filled by server. :type result_type: str - :ivar database_name: Name of the database. - :vartype database_name: str - :ivar started_on: Migration start time. - :vartype started_on: ~datetime.datetime - :ivar ended_on: Migration end time. - :vartype ended_on: ~datetime.datetime - :ivar migration_state: Migration state that this database is in. Possible values include: - "UNDEFINED", "CONFIGURING", "INITIALIAZING", "STARTING", "RUNNING", "READY_TO_COMPLETE", - "COMPLETING", "COMPLETE", "CANCELLING", "CANCELLED", "FAILED", "VALIDATING", - "VALIDATION_COMPLETE", "VALIDATION_FAILED", "RESTORE_IN_PROGRESS", "RESTORE_COMPLETED", - "BACKUP_IN_PROGRESS", "BACKUP_COMPLETED". - :vartype migration_state: str or - ~azure.mgmt.datamigration.models.SyncDatabaseMigrationReportingState - :ivar incoming_changes: Number of incoming changes. - :vartype incoming_changes: long - :ivar applied_changes: Number of applied changes. - :vartype applied_changes: long - :ivar cdc_insert_counter: Number of cdc inserts. - :vartype cdc_insert_counter: long - :ivar cdc_delete_counter: Number of cdc deletes. - :vartype cdc_delete_counter: long + :ivar error: Migration error. + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlOfflineTaskOutputError, self).__init__(**kwargs) + self.result_type = 'ErrorOutput' # type: str + self.error = None + + +class MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel(MigrateMySqlAzureDbForMySqlOfflineTaskOutput): + """MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + :ivar started_on: Migration start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Migration end time. + :vartype ended_on: ~datetime.datetime + :ivar duration_in_seconds: Duration of task execution in seconds. + :vartype duration_in_seconds: long + :ivar status: Current status of migration. Possible values include: "Default", "Connecting", + "SourceAndTargetSelected", "SelectLogins", "Configured", "Running", "Error", "Stopped", + "Completed", "CompletedWithWarnings". + :vartype status: str or ~azure.mgmt.datamigration.models.MigrationStatus + :ivar status_message: Migration status message. + :vartype status_message: str + :ivar message: Migration progress message. + :vartype message: str + :param databases: Selected databases as a map from database name to database id. + :type databases: str + :ivar database_summary: Summary of database results in the migration. + :vartype database_summary: str + :param migration_report_result: Migration Report Result, provides unique url for downloading + your migration report. + :type migration_report_result: ~azure.mgmt.datamigration.models.MigrationReportResult + :ivar source_server_version: Source server version. + :vartype source_server_version: str + :ivar source_server_brand_version: Source server brand version. + :vartype source_server_brand_version: str + :ivar target_server_version: Target server version. + :vartype target_server_version: str + :ivar target_server_brand_version: Target server brand version. + :vartype target_server_brand_version: str + :ivar exceptions_and_warnings: Migration exceptions and warnings. + :vartype exceptions_and_warnings: list[~azure.mgmt.datamigration.models.ReportableException] + :ivar last_storage_update: Last time the storage was updated. + :vartype last_storage_update: ~datetime.datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'duration_in_seconds': {'readonly': True}, + 'status': {'readonly': True}, + 'status_message': {'readonly': True}, + 'message': {'readonly': True}, + 'database_summary': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server_brand_version': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server_brand_version': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + 'last_storage_update': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'duration_in_seconds': {'key': 'durationInSeconds', 'type': 'long'}, + 'status': {'key': 'status', 'type': 'str'}, + 'status_message': {'key': 'statusMessage', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'databases': {'key': 'databases', 'type': 'str'}, + 'database_summary': {'key': 'databaseSummary', 'type': 'str'}, + 'migration_report_result': {'key': 'migrationReportResult', 'type': 'MigrationReportResult'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server_brand_version': {'key': 'targetServerBrandVersion', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + 'last_storage_update': {'key': 'lastStorageUpdate', 'type': 'iso-8601'}, + } + + def __init__( + self, + *, + databases: Optional[str] = None, + migration_report_result: Optional["MigrationReportResult"] = None, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel, self).__init__(**kwargs) + self.result_type = 'MigrationLevelOutput' # type: str + self.started_on = None + self.ended_on = None + self.duration_in_seconds = None + self.status = None + self.status_message = None + self.message = None + self.databases = databases + self.database_summary = None + self.migration_report_result = migration_report_result + self.source_server_version = None + self.source_server_brand_version = None + self.target_server_version = None + self.target_server_brand_version = None + self.exceptions_and_warnings = None + self.last_storage_update = None + + +class MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel(MigrateMySqlAzureDbForMySqlOfflineTaskOutput): + """MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + :ivar object_name: Name of the item. + :vartype object_name: str + :ivar started_on: Migration start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Migration end time. + :vartype ended_on: ~datetime.datetime + :ivar state: Current state of migration. Possible values include: "None", "InProgress", + "Failed", "Warning", "Completed", "Skipped", "Stopped". + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar status_message: Status message. + :vartype status_message: str + :ivar items_count: Number of items. + :vartype items_count: long + :ivar items_completed_count: Number of successfully completed items. + :vartype items_completed_count: long + :ivar error_prefix: Wildcard string prefix to use for querying all errors of the item. + :vartype error_prefix: str + :ivar result_prefix: Wildcard string prefix to use for querying all sub-tem results of the + item. + :vartype result_prefix: str + :ivar last_storage_update: Last time the storage was updated. + :vartype last_storage_update: ~datetime.datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'object_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'state': {'readonly': True}, + 'status_message': {'readonly': True}, + 'items_count': {'readonly': True}, + 'items_completed_count': {'readonly': True}, + 'error_prefix': {'readonly': True}, + 'result_prefix': {'readonly': True}, + 'last_storage_update': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'object_name': {'key': 'objectName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'str'}, + 'status_message': {'key': 'statusMessage', 'type': 'str'}, + 'items_count': {'key': 'itemsCount', 'type': 'long'}, + 'items_completed_count': {'key': 'itemsCompletedCount', 'type': 'long'}, + 'error_prefix': {'key': 'errorPrefix', 'type': 'str'}, + 'result_prefix': {'key': 'resultPrefix', 'type': 'str'}, + 'last_storage_update': {'key': 'lastStorageUpdate', 'type': 'iso-8601'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel, self).__init__(**kwargs) + self.result_type = 'TableLevelOutput' # type: str + self.object_name = None + self.started_on = None + self.ended_on = None + self.state = None + self.status_message = None + self.items_count = None + self.items_completed_count = None + self.error_prefix = None + self.result_prefix = None + self.last_storage_update = None + + +class MigrateMySqlAzureDbForMySqlOfflineTaskProperties(ProjectTaskProperties): + """Properties for the task that migrates MySQL databases to Azure Database for MySQL for offline migrations. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :param task_type: Required. Task type.Constant filled by server. + :type task_type: str + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible values include: + "Unknown", "Queued", "Running", "Canceled", "Succeeded", "Failed", "FailedInputValidation", + "Faulted". + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: list[~azure.mgmt.datamigration.models.CommandProperties] + :param client_data: Key value pairs of client data to attach meta data information to task. + :type client_data: dict[str, str] + :param input: Task input. + :type input: ~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlOfflineTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlOfflineTaskOutput] + """ + + _validation = { + 'task_type': {'required': True}, + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'client_data': {'key': 'clientData', 'type': '{str}'}, + 'input': {'key': 'input', 'type': 'MigrateMySqlAzureDbForMySqlOfflineTaskInput'}, + 'output': {'key': 'output', 'type': '[MigrateMySqlAzureDbForMySqlOfflineTaskOutput]'}, + } + + def __init__( + self, + *, + client_data: Optional[Dict[str, str]] = None, + input: Optional["MigrateMySqlAzureDbForMySqlOfflineTaskInput"] = None, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlOfflineTaskProperties, self).__init__(client_data=client_data, **kwargs) + self.task_type = 'Migrate.MySql.AzureDbForMySql' # type: str + self.input = input + self.output = None + + +class MigrateMySqlAzureDbForMySqlSyncDatabaseInput(msrest.serialization.Model): + """Database specific information for MySQL to Azure Database for MySQL migration task inputs. + + :param name: Name of the database. + :type name: str + :param target_database_name: Name of target database. Note: Target database will be truncated + before starting migration. + :type target_database_name: str + :param migration_setting: Migration settings which tune the migration behavior. + :type migration_setting: dict[str, str] + :param source_setting: Source settings to tune source endpoint migration behavior. + :type source_setting: dict[str, str] + :param target_setting: Target settings to tune target endpoint migration behavior. + :type target_setting: dict[str, str] + :param table_map: Mapping of source to target tables. + :type table_map: dict[str, str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'migration_setting': {'key': 'migrationSetting', 'type': '{str}'}, + 'source_setting': {'key': 'sourceSetting', 'type': '{str}'}, + 'target_setting': {'key': 'targetSetting', 'type': '{str}'}, + 'table_map': {'key': 'tableMap', 'type': '{str}'}, + } + + def __init__( + self, + *, + name: Optional[str] = None, + target_database_name: Optional[str] = None, + migration_setting: Optional[Dict[str, str]] = None, + source_setting: Optional[Dict[str, str]] = None, + target_setting: Optional[Dict[str, str]] = None, + table_map: Optional[Dict[str, str]] = None, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlSyncDatabaseInput, self).__init__(**kwargs) + self.name = name + self.target_database_name = target_database_name + self.migration_setting = migration_setting + self.source_setting = source_setting + self.target_setting = target_setting + self.table_map = table_map + + +class MigrateMySqlAzureDbForMySqlSyncTaskInput(msrest.serialization.Model): + """Input for the task that migrates MySQL databases to Azure Database for MySQL for online migrations. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Connection information for source MySQL. + :type source_connection_info: ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param target_connection_info: Required. Connection information for target Azure Database for + MySQL. + :type target_connection_info: ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param selected_databases: Required. Databases to migrate. + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlSyncDatabaseInput] + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateMySqlAzureDbForMySqlSyncDatabaseInput]'}, + } + + def __init__( + self, + *, + source_connection_info: "MySqlConnectionInfo", + target_connection_info: "MySqlConnectionInfo", + selected_databases: List["MigrateMySqlAzureDbForMySqlSyncDatabaseInput"], + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlSyncTaskInput, self).__init__(**kwargs) + self.source_connection_info = source_connection_info + self.target_connection_info = target_connection_info + self.selected_databases = selected_databases + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutput(msrest.serialization.Model): + """Output for the task that migrates MySQL databases to Azure Database for MySQL for online migrations. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, MigrateMySqlAzureDbForMySqlSyncTaskOutputError, MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'DatabaseLevelErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError', 'DatabaseLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel', 'ErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputError', 'MigrationLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel', 'TableLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel'} + } + + def __init__( + self, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlSyncTaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None # type: Optional[str] + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + :param error_message: Error message. + :type error_message: str + :param events: List of error events. + :type events: list[~azure.mgmt.datamigration.models.SyncMigrationDatabaseErrorEvent] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error_message': {'key': 'errorMessage', 'type': 'str'}, + 'events': {'key': 'events', 'type': '[SyncMigrationDatabaseErrorEvent]'}, + } + + def __init__( + self, + *, + error_message: Optional[str] = None, + events: Optional[List["SyncMigrationDatabaseErrorEvent"]] = None, + **kwargs + ): + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, self).__init__(**kwargs) + self.result_type = 'DatabaseLevelErrorOutput' # type: str + self.error_message = error_message + self.events = events + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + :ivar database_name: Name of the database. + :vartype database_name: str + :ivar started_on: Migration start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Migration end time. + :vartype ended_on: ~datetime.datetime + :ivar migration_state: Migration state that this database is in. Possible values include: + "UNDEFINED", "CONFIGURING", "INITIALIAZING", "STARTING", "RUNNING", "READY_TO_COMPLETE", + "COMPLETING", "COMPLETE", "CANCELLING", "CANCELLED", "FAILED", "VALIDATING", + "VALIDATION_COMPLETE", "VALIDATION_FAILED", "RESTORE_IN_PROGRESS", "RESTORE_COMPLETED", + "BACKUP_IN_PROGRESS", "BACKUP_COMPLETED". + :vartype migration_state: str or + ~azure.mgmt.datamigration.models.SyncDatabaseMigrationReportingState + :ivar incoming_changes: Number of incoming changes. + :vartype incoming_changes: long + :ivar applied_changes: Number of applied changes. + :vartype applied_changes: long + :ivar cdc_insert_counter: Number of cdc inserts. + :vartype cdc_insert_counter: long + :ivar cdc_delete_counter: Number of cdc deletes. + :vartype cdc_delete_counter: long :ivar cdc_update_counter: Number of cdc updates. :vartype cdc_update_counter: long :ivar full_load_completed_tables: Number of tables completed in full load. @@ -6052,15 +6728,17 @@ class MigrateSchemaSqlServerSqlDbTaskOutput(msrest.serialization.Model): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Result identifier. :vartype id: str - :ivar result_type: Result type.Constant filled by server. - :vartype result_type: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str """ _validation = { 'id': {'readonly': True}, - 'result_type': {'readonly': True}, + 'result_type': {'required': True}, } _attribute_map = { @@ -6086,10 +6764,12 @@ class MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel(MigrateSchemaSqlServerS Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Result identifier. :vartype id: str - :ivar result_type: Result type.Constant filled by server. - :vartype result_type: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str :ivar database_name: The name of the database. :vartype database_name: str :ivar state: State of the schema migration for this database. Possible values include: "None", @@ -6118,7 +6798,7 @@ class MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel(MigrateSchemaSqlServerS _validation = { 'id': {'readonly': True}, - 'result_type': {'readonly': True}, + 'result_type': {'required': True}, 'database_name': {'readonly': True}, 'state': {'readonly': True}, 'stage': {'readonly': True}, @@ -6169,10 +6849,12 @@ class MigrateSchemaSqlServerSqlDbTaskOutputError(MigrateSchemaSqlServerSqlDbTask Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Result identifier. :vartype id: str - :ivar result_type: Result type.Constant filled by server. - :vartype result_type: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str :ivar command_text: Schema command which failed. :vartype command_text: str :ivar error_text: Reason of failure. @@ -6181,7 +6863,7 @@ class MigrateSchemaSqlServerSqlDbTaskOutputError(MigrateSchemaSqlServerSqlDbTask _validation = { 'id': {'readonly': True}, - 'result_type': {'readonly': True}, + 'result_type': {'required': True}, 'command_text': {'readonly': True}, 'error_text': {'readonly': True}, } @@ -6208,10 +6890,12 @@ class MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel(MigrateSchemaSqlServer Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Result identifier. :vartype id: str - :ivar result_type: Result type.Constant filled by server. - :vartype result_type: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str :ivar state: Overall state of the schema migration. Possible values include: "None", "InProgress", "Failed", "Warning", "Completed", "Skipped", "Stopped". :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState @@ -6231,7 +6915,7 @@ class MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel(MigrateSchemaSqlServer _validation = { 'id': {'readonly': True}, - 'result_type': {'readonly': True}, + 'result_type': {'required': True}, 'state': {'readonly': True}, 'started_on': {'readonly': True}, 'ended_on': {'readonly': True}, @@ -6329,17 +7013,19 @@ class MigrateSchemaSqlTaskOutputError(MigrateSchemaSqlServerSqlDbTaskOutput): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Result identifier. :vartype id: str - :ivar result_type: Result type.Constant filled by server. - :vartype result_type: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str :ivar error: Migration error. :vartype error: ~azure.mgmt.datamigration.models.ReportableException """ _validation = { 'id': {'readonly': True}, - 'result_type': {'readonly': True}, + 'result_type': {'required': True}, 'error': {'readonly': True}, } @@ -7032,7 +7718,7 @@ class MigrateSqlServerSqlDbTaskOutput(msrest.serialization.Model): """Output for the task that migrates on-prem SQL Server databases to Azure SQL Database. You probably want to use the sub-classes and not this class directly. Known - sub-classes are: MigrateSqlServerSqlDbTaskOutputDatabaseLevel, MigrateSqlServerSqlDbTaskOutputError, MigrateSqlServerSqlDbTaskOutputMigrationLevel, MigrateSqlServerSqlDbTaskOutputTableLevel. + sub-classes are: MigrateSqlServerSqlDbTaskOutputDatabaseLevel, MigrateSqlServerSqlDbTaskOutputError, MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult, MigrateSqlServerSqlDbTaskOutputMigrationLevel, MigrateSqlServerSqlDbTaskOutputValidationResult, MigrateSqlServerSqlDbTaskOutputTableLevel. Variables are only populated by the server, and will be ignored when sending a request. @@ -7055,7 +7741,7 @@ class MigrateSqlServerSqlDbTaskOutput(msrest.serialization.Model): } _subtype_map = { - 'result_type': {'DatabaseLevelOutput': 'MigrateSqlServerSqlDbTaskOutputDatabaseLevel', 'ErrorOutput': 'MigrateSqlServerSqlDbTaskOutputError', 'MigrationLevelOutput': 'MigrateSqlServerSqlDbTaskOutputMigrationLevel', 'TableLevelOutput': 'MigrateSqlServerSqlDbTaskOutputTableLevel'} + 'result_type': {'DatabaseLevelOutput': 'MigrateSqlServerSqlDbTaskOutputDatabaseLevel', 'ErrorOutput': 'MigrateSqlServerSqlDbTaskOutputError', 'MigrationDatabaseLevelValidationOutput': 'MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult', 'MigrationLevelOutput': 'MigrateSqlServerSqlDbTaskOutputMigrationLevel', 'MigrationValidationOutput': 'MigrateSqlServerSqlDbTaskOutputValidationResult', 'TableLevelOutput': 'MigrateSqlServerSqlDbTaskOutputTableLevel'} } def __init__( @@ -7153,22 +7839,186 @@ def __init__( self, **kwargs ): - super(MigrateSqlServerSqlDbTaskOutputDatabaseLevel, self).__init__(**kwargs) - self.result_type = 'DatabaseLevelOutput' # type: str - self.database_name = None + super(MigrateSqlServerSqlDbTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.result_type = 'DatabaseLevelOutput' # type: str + self.database_name = None + self.started_on = None + self.ended_on = None + self.state = None + self.stage = None + self.status_message = None + self.message = None + self.number_of_objects = None + self.number_of_objects_completed = None + self.error_count = None + self.error_prefix = None + self.result_prefix = None + self.exceptions_and_warnings = None + self.object_summary = None + + +class MigrationValidationDatabaseLevelResult(msrest.serialization.Model): + """Database level validation results. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Result identifier. + :vartype id: str + :ivar migration_id: Migration Identifier. + :vartype migration_id: str + :ivar source_database_name: Name of the source database. + :vartype source_database_name: str + :ivar target_database_name: Name of the target database. + :vartype target_database_name: str + :ivar started_on: Validation start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Validation end time. + :vartype ended_on: ~datetime.datetime + :ivar data_integrity_validation_result: Provides data integrity validation result between the + source and target tables that are migrated. + :vartype data_integrity_validation_result: + ~azure.mgmt.datamigration.models.DataIntegrityValidationResult + :ivar schema_validation_result: Provides schema comparison result between source and target + database. + :vartype schema_validation_result: + ~azure.mgmt.datamigration.models.SchemaComparisonValidationResult + :ivar query_analysis_validation_result: Results of some of the query execution result between + source and target database. + :vartype query_analysis_validation_result: + ~azure.mgmt.datamigration.models.QueryAnalysisValidationResult + :ivar status: Current status of validation at the database level. Possible values include: + "Default", "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", + "Stopped", "Failed". + :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus + """ + + _validation = { + 'id': {'readonly': True}, + 'migration_id': {'readonly': True}, + 'source_database_name': {'readonly': True}, + 'target_database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'data_integrity_validation_result': {'readonly': True}, + 'schema_validation_result': {'readonly': True}, + 'query_analysis_validation_result': {'readonly': True}, + 'status': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'migration_id': {'key': 'migrationId', 'type': 'str'}, + 'source_database_name': {'key': 'sourceDatabaseName', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'data_integrity_validation_result': {'key': 'dataIntegrityValidationResult', 'type': 'DataIntegrityValidationResult'}, + 'schema_validation_result': {'key': 'schemaValidationResult', 'type': 'SchemaComparisonValidationResult'}, + 'query_analysis_validation_result': {'key': 'queryAnalysisValidationResult', 'type': 'QueryAnalysisValidationResult'}, + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrationValidationDatabaseLevelResult, self).__init__(**kwargs) + self.id = None + self.migration_id = None + self.source_database_name = None + self.target_database_name = None + self.started_on = None + self.ended_on = None + self.data_integrity_validation_result = None + self.schema_validation_result = None + self.query_analysis_validation_result = None + self.status = None + + +class MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult(MigrateSqlServerSqlDbTaskOutput, MigrationValidationDatabaseLevelResult): + """MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar migration_id: Migration Identifier. + :vartype migration_id: str + :ivar source_database_name: Name of the source database. + :vartype source_database_name: str + :ivar target_database_name: Name of the target database. + :vartype target_database_name: str + :ivar started_on: Validation start time. + :vartype started_on: ~datetime.datetime + :ivar ended_on: Validation end time. + :vartype ended_on: ~datetime.datetime + :ivar data_integrity_validation_result: Provides data integrity validation result between the + source and target tables that are migrated. + :vartype data_integrity_validation_result: + ~azure.mgmt.datamigration.models.DataIntegrityValidationResult + :ivar schema_validation_result: Provides schema comparison result between source and target + database. + :vartype schema_validation_result: + ~azure.mgmt.datamigration.models.SchemaComparisonValidationResult + :ivar query_analysis_validation_result: Results of some of the query execution result between + source and target database. + :vartype query_analysis_validation_result: + ~azure.mgmt.datamigration.models.QueryAnalysisValidationResult + :ivar status: Current status of validation at the database level. Possible values include: + "Default", "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", + "Stopped", "Failed". + :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + """ + + _validation = { + 'migration_id': {'readonly': True}, + 'source_database_name': {'readonly': True}, + 'target_database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'data_integrity_validation_result': {'readonly': True}, + 'schema_validation_result': {'readonly': True}, + 'query_analysis_validation_result': {'readonly': True}, + 'status': {'readonly': True}, + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'migration_id': {'key': 'migrationId', 'type': 'str'}, + 'source_database_name': {'key': 'sourceDatabaseName', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'data_integrity_validation_result': {'key': 'dataIntegrityValidationResult', 'type': 'DataIntegrityValidationResult'}, + 'schema_validation_result': {'key': 'schemaValidationResult', 'type': 'SchemaComparisonValidationResult'}, + 'query_analysis_validation_result': {'key': 'queryAnalysisValidationResult', 'type': 'QueryAnalysisValidationResult'}, + 'status': {'key': 'status', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + def __init__( + self, + **kwargs + ): + super(MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult, self).__init__(**kwargs) + self.migration_id = None + self.source_database_name = None + self.target_database_name = None self.started_on = None self.ended_on = None - self.state = None - self.stage = None - self.status_message = None - self.message = None - self.number_of_objects = None - self.number_of_objects_completed = None - self.error_count = None - self.error_prefix = None - self.result_prefix = None - self.exceptions_and_warnings = None - self.object_summary = None + self.data_integrity_validation_result = None + self.schema_validation_result = None + self.query_analysis_validation_result = None + self.status = None + self.result_type = 'MigrationDatabaseLevelValidationOutput' # type: str + self.id = None + self.result_type = 'MigrationDatabaseLevelValidationOutput' # type: str class MigrateSqlServerSqlDbTaskOutputError(MigrateSqlServerSqlDbTaskOutput): @@ -7395,6 +8245,104 @@ def __init__( self.result_prefix = None +class MigrationValidationResult(msrest.serialization.Model): + """Migration Validation Result. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Migration validation result identifier. + :vartype id: str + :ivar migration_id: Migration Identifier. + :vartype migration_id: str + :param summary_results: Validation summary results for each database. + :type summary_results: dict[str, + ~azure.mgmt.datamigration.models.MigrationValidationDatabaseSummaryResult] + :ivar status: Current status of validation at the migration level. Status from the database + validation result status will be aggregated here. Possible values include: "Default", + "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", "Stopped", + "Failed". + :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus + """ + + _validation = { + 'id': {'readonly': True}, + 'migration_id': {'readonly': True}, + 'status': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'migration_id': {'key': 'migrationId', 'type': 'str'}, + 'summary_results': {'key': 'summaryResults', 'type': '{MigrationValidationDatabaseSummaryResult}'}, + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__( + self, + *, + summary_results: Optional[Dict[str, "MigrationValidationDatabaseSummaryResult"]] = None, + **kwargs + ): + super(MigrationValidationResult, self).__init__(**kwargs) + self.id = None + self.migration_id = None + self.summary_results = summary_results + self.status = None + + +class MigrateSqlServerSqlDbTaskOutputValidationResult(MigrateSqlServerSqlDbTaskOutput, MigrationValidationResult): + """MigrateSqlServerSqlDbTaskOutputValidationResult. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar migration_id: Migration Identifier. + :vartype migration_id: str + :param summary_results: Validation summary results for each database. + :type summary_results: dict[str, + ~azure.mgmt.datamigration.models.MigrationValidationDatabaseSummaryResult] + :ivar status: Current status of validation at the migration level. Status from the database + validation result status will be aggregated here. Possible values include: "Default", + "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", "Stopped", + "Failed". + :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus + :ivar id: Result identifier. + :vartype id: str + :param result_type: Required. Result type.Constant filled by server. + :type result_type: str + """ + + _validation = { + 'migration_id': {'readonly': True}, + 'status': {'readonly': True}, + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'migration_id': {'key': 'migrationId', 'type': 'str'}, + 'summary_results': {'key': 'summaryResults', 'type': '{MigrationValidationDatabaseSummaryResult}'}, + 'status': {'key': 'status', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + def __init__( + self, + *, + summary_results: Optional[Dict[str, "MigrationValidationDatabaseSummaryResult"]] = None, + **kwargs + ): + super(MigrateSqlServerSqlDbTaskOutputValidationResult, self).__init__(summary_results=summary_results, **kwargs) + self.migration_id = None + self.summary_results = summary_results + self.status = None + self.result_type = 'MigrationValidationOutput' # type: str + self.id = None + self.result_type = 'MigrationValidationOutput' # type: str + + class MigrateSqlServerSqlDbTaskProperties(ProjectTaskProperties): """Properties for the task that migrates on-prem SQL Server databases to Azure SQL Database. @@ -8924,84 +9872,6 @@ def __init__( self.target_table_name = None -class MigrationValidationDatabaseLevelResult(msrest.serialization.Model): - """Database level validation results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Result identifier. - :vartype id: str - :ivar migration_id: Migration Identifier. - :vartype migration_id: str - :ivar source_database_name: Name of the source database. - :vartype source_database_name: str - :ivar target_database_name: Name of the target database. - :vartype target_database_name: str - :ivar started_on: Validation start time. - :vartype started_on: ~datetime.datetime - :ivar ended_on: Validation end time. - :vartype ended_on: ~datetime.datetime - :ivar data_integrity_validation_result: Provides data integrity validation result between the - source and target tables that are migrated. - :vartype data_integrity_validation_result: - ~azure.mgmt.datamigration.models.DataIntegrityValidationResult - :ivar schema_validation_result: Provides schema comparison result between source and target - database. - :vartype schema_validation_result: - ~azure.mgmt.datamigration.models.SchemaComparisonValidationResult - :ivar query_analysis_validation_result: Results of some of the query execution result between - source and target database. - :vartype query_analysis_validation_result: - ~azure.mgmt.datamigration.models.QueryAnalysisValidationResult - :ivar status: Current status of validation at the database level. Possible values include: - "Default", "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", - "Stopped", "Failed". - :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus - """ - - _validation = { - 'id': {'readonly': True}, - 'migration_id': {'readonly': True}, - 'source_database_name': {'readonly': True}, - 'target_database_name': {'readonly': True}, - 'started_on': {'readonly': True}, - 'ended_on': {'readonly': True}, - 'data_integrity_validation_result': {'readonly': True}, - 'schema_validation_result': {'readonly': True}, - 'query_analysis_validation_result': {'readonly': True}, - 'status': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'migration_id': {'key': 'migrationId', 'type': 'str'}, - 'source_database_name': {'key': 'sourceDatabaseName', 'type': 'str'}, - 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, - 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, - 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, - 'data_integrity_validation_result': {'key': 'dataIntegrityValidationResult', 'type': 'DataIntegrityValidationResult'}, - 'schema_validation_result': {'key': 'schemaValidationResult', 'type': 'SchemaComparisonValidationResult'}, - 'query_analysis_validation_result': {'key': 'queryAnalysisValidationResult', 'type': 'QueryAnalysisValidationResult'}, - 'status': {'key': 'status', 'type': 'str'}, - } - - def __init__( - self, - **kwargs - ): - super(MigrationValidationDatabaseLevelResult, self).__init__(**kwargs) - self.id = None - self.migration_id = None - self.source_database_name = None - self.target_database_name = None - self.started_on = None - self.ended_on = None - self.data_integrity_validation_result = None - self.schema_validation_result = None - self.query_analysis_validation_result = None - self.status = None - - class MigrationValidationDatabaseSummaryResult(msrest.serialization.Model): """Migration Validation Database level summary result. @@ -9095,51 +9965,6 @@ def __init__( self.enable_query_analysis_validation = enable_query_analysis_validation -class MigrationValidationResult(msrest.serialization.Model): - """Migration Validation Result. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Migration validation result identifier. - :vartype id: str - :ivar migration_id: Migration Identifier. - :vartype migration_id: str - :param summary_results: Validation summary results for each database. - :type summary_results: dict[str, - ~azure.mgmt.datamigration.models.MigrationValidationDatabaseSummaryResult] - :ivar status: Current status of validation at the migration level. Status from the database - validation result status will be aggregated here. Possible values include: "Default", - "NotStarted", "Initialized", "InProgress", "Completed", "CompletedWithIssues", "Stopped", - "Failed". - :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus - """ - - _validation = { - 'id': {'readonly': True}, - 'migration_id': {'readonly': True}, - 'status': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'migration_id': {'key': 'migrationId', 'type': 'str'}, - 'summary_results': {'key': 'summaryResults', 'type': '{MigrationValidationDatabaseSummaryResult}'}, - 'status': {'key': 'status', 'type': 'str'}, - } - - def __init__( - self, - *, - summary_results: Optional[Dict[str, "MigrationValidationDatabaseSummaryResult"]] = None, - **kwargs - ): - super(MigrationValidationResult, self).__init__(**kwargs) - self.id = None - self.migration_id = None - self.summary_results = summary_results - self.status = None - - class MiSqlConnectionInfo(ConnectionInfo): """Properties required to create a connection to Azure SQL database Managed instance. @@ -10406,6 +11231,8 @@ class MySqlConnectionInfo(ConnectionInfo): :type server_name: str :param port: Required. Port for Server. :type port: int + :param encrypt_connection: Whether to encrypt the connection. + :type encrypt_connection: bool """ _validation = { @@ -10420,6 +11247,7 @@ class MySqlConnectionInfo(ConnectionInfo): 'password': {'key': 'password', 'type': 'str'}, 'server_name': {'key': 'serverName', 'type': 'str'}, 'port': {'key': 'port', 'type': 'int'}, + 'encrypt_connection': {'key': 'encryptConnection', 'type': 'bool'}, } def __init__( @@ -10429,12 +11257,14 @@ def __init__( port: int, user_name: Optional[str] = None, password: Optional[str] = None, + encrypt_connection: Optional[bool] = True, **kwargs ): super(MySqlConnectionInfo, self).__init__(user_name=user_name, password=password, **kwargs) self.type = 'MySqlConnectionInfo' # type: str self.server_name = server_name self.port = port + self.encrypt_connection = encrypt_connection class NameAvailabilityRequest(msrest.serialization.Model): @@ -10916,6 +11746,8 @@ class Project(TrackedResource): :type tags: dict[str, str] :param location: Required. Resource location. :type location: str + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData :param source_platform: Source platform for the project. Possible values include: "SQL", "MySQL", "PostgreSql", "MongoDb", "Unknown". :type source_platform: str or ~azure.mgmt.datamigration.models.ProjectSourcePlatform @@ -10940,6 +11772,7 @@ class Project(TrackedResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'system_data': {'readonly': True}, 'creation_time': {'readonly': True}, 'provisioning_state': {'readonly': True}, } @@ -10950,6 +11783,7 @@ class Project(TrackedResource): 'type': {'key': 'type', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, 'source_platform': {'key': 'properties.sourcePlatform', 'type': 'str'}, 'target_platform': {'key': 'properties.targetPlatform', 'type': 'str'}, 'creation_time': {'key': 'properties.creationTime', 'type': 'iso-8601'}, @@ -10996,12 +11830,15 @@ class ProjectFile(Resource): :type etag: str :param properties: Custom file properties. :type properties: ~azure.mgmt.datamigration.models.ProjectFileProperties + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, + 'system_data': {'readonly': True}, } _attribute_map = { @@ -11010,6 +11847,7 @@ class ProjectFile(Resource): 'type': {'key': 'type', 'type': 'str'}, 'etag': {'key': 'etag', 'type': 'str'}, 'properties': {'key': 'properties', 'type': 'ProjectFileProperties'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, } def __init__( @@ -11022,6 +11860,7 @@ def __init__( super(ProjectFile, self).__init__(**kwargs) self.etag = etag self.properties = properties + self.system_data = None class ProjectFileProperties(msrest.serialization.Model): @@ -11114,12 +11953,15 @@ class ProjectTask(Resource): :type etag: str :param properties: Custom task properties. :type properties: ~azure.mgmt.datamigration.models.ProjectTaskProperties + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.datamigration.models.SystemData """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, + 'system_data': {'readonly': True}, } _attribute_map = { @@ -11128,6 +11970,7 @@ class ProjectTask(Resource): 'type': {'key': 'type', 'type': 'str'}, 'etag': {'key': 'etag', 'type': 'str'}, 'properties': {'key': 'properties', 'type': 'ProjectTaskProperties'}, + 'system_data': {'key': 'systemData', 'type': 'SystemData'}, } def __init__( @@ -11140,6 +11983,7 @@ def __init__( super(ProjectTask, self).__init__(**kwargs) self.etag = etag self.properties = properties + self.system_data = None class QueryAnalysisValidationResult(msrest.serialization.Model): @@ -12116,6 +12960,54 @@ def __init__( self.event_text = None +class SystemData(msrest.serialization.Model): + """Metadata pertaining to creation and last modification of the resource. + + :param created_by: The identity that created the resource. + :type created_by: str + :param created_by_type: The type of identity that created the resource. Possible values + include: "User", "Application", "ManagedIdentity", "Key". + :type created_by_type: str or ~azure.mgmt.datamigration.models.CreatedByType + :param created_at: The timestamp of resource creation (UTC). + :type created_at: ~datetime.datetime + :param last_modified_by: The identity that last modified the resource. + :type last_modified_by: str + :param last_modified_by_type: The type of identity that last modified the resource. Possible + values include: "User", "Application", "ManagedIdentity", "Key". + :type last_modified_by_type: str or ~azure.mgmt.datamigration.models.CreatedByType + :param last_modified_at: The timestamp of resource last modification (UTC). + :type last_modified_at: ~datetime.datetime + """ + + _attribute_map = { + 'created_by': {'key': 'createdBy', 'type': 'str'}, + 'created_by_type': {'key': 'createdByType', 'type': 'str'}, + 'created_at': {'key': 'createdAt', 'type': 'iso-8601'}, + 'last_modified_by': {'key': 'lastModifiedBy', 'type': 'str'}, + 'last_modified_by_type': {'key': 'lastModifiedByType', 'type': 'str'}, + 'last_modified_at': {'key': 'lastModifiedAt', 'type': 'iso-8601'}, + } + + def __init__( + self, + *, + created_by: Optional[str] = None, + created_by_type: Optional[Union[str, "CreatedByType"]] = None, + created_at: Optional[datetime.datetime] = None, + last_modified_by: Optional[str] = None, + last_modified_by_type: Optional[Union[str, "CreatedByType"]] = None, + last_modified_at: Optional[datetime.datetime] = None, + **kwargs + ): + super(SystemData, self).__init__(**kwargs) + self.created_by = created_by + self.created_by_type = created_by_type + self.created_at = created_at + self.last_modified_by = last_modified_by + self.last_modified_by_type = last_modified_by_type + self.last_modified_at = last_modified_at + + class TaskList(msrest.serialization.Model): """OData page of tasks. diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_files_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_files_operations.py index 9d7a7913701f..86365f8bc6c9 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_files_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_files_operations.py @@ -74,7 +74,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -160,7 +160,7 @@ def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -233,7 +233,7 @@ def create_or_update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -312,7 +312,7 @@ def delete( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -382,7 +382,7 @@ def update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -458,7 +458,7 @@ def read( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -528,7 +528,7 @@ def read_write( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_operations.py index 43150ee4ea92..a12bcbf22bb9 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_operations.py @@ -64,7 +64,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_projects_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_projects_operations.py index 93839c1aea30..465021b30d63 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_projects_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_projects_operations.py @@ -71,7 +71,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -156,7 +156,7 @@ def create_or_update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -232,7 +232,7 @@ def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -302,7 +302,7 @@ def delete( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -371,7 +371,7 @@ def update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_resource_skus_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_resource_skus_operations.py index e1ec7e1e5b8d..96d5b8c7af29 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_resource_skus_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_resource_skus_operations.py @@ -64,7 +64,7 @@ def list_skus( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_service_tasks_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_service_tasks_operations.py index 1c6dd9958d86..7ae439bb88d2 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_service_tasks_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_service_tasks_operations.py @@ -76,7 +76,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -165,7 +165,7 @@ def create_or_update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -244,7 +244,7 @@ def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -316,7 +316,7 @@ def delete( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -386,7 +386,7 @@ def update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -458,7 +458,7 @@ def cancel( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_services_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_services_operations.py index 7924909938b1..d443ec5072f3 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_services_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_services_operations.py @@ -60,7 +60,7 @@ def _create_or_update_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -134,8 +134,8 @@ def begin_create_or_update( :type parameters: ~azure.mgmt.datamigration.models.DataMigrationService :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: Pass in True if you'd like the ARMPolling polling method, - False for no polling, or your own initialized polling object for a personal polling strategy. + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either DataMigrationService or the result of cls(response) @@ -214,7 +214,7 @@ def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -264,7 +264,7 @@ def _delete_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -321,8 +321,8 @@ def begin_delete( :type delete_running_tasks: bool :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: Pass in True if you'd like the ARMPolling polling method, - False for no polling, or your own initialized polling object for a personal polling strategy. + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either None or the result of cls(response) @@ -385,7 +385,7 @@ def _update_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -452,8 +452,8 @@ def begin_update( :type parameters: ~azure.mgmt.datamigration.models.DataMigrationService :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: Pass in True if you'd like the ARMPolling polling method, - False for no polling, or your own initialized polling object for a personal polling strategy. + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either DataMigrationService or the result of cls(response) @@ -533,7 +533,7 @@ def check_status( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -582,7 +582,7 @@ def _start_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -634,8 +634,8 @@ def begin_start( :type service_name: str :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: Pass in True if you'd like the ARMPolling polling method, - False for no polling, or your own initialized polling object for a personal polling strategy. + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either None or the result of cls(response) @@ -696,7 +696,7 @@ def _stop_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -749,8 +749,8 @@ def begin_stop( :type service_name: str :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. - :keyword polling: Pass in True if you'd like the ARMPolling polling method, - False for no polling, or your own initialized polling object for a personal polling strategy. + :keyword polling: By default, your polling method will be ARMPolling. + Pass in False for this operation to not poll, or pass in your own initialized polling object for a personal polling strategy. :paramtype polling: bool or ~azure.core.polling.PollingMethod :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. :return: An instance of LROPoller that returns either None or the result of cls(response) @@ -825,7 +825,7 @@ def list_skus( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -906,7 +906,7 @@ def check_children_name_availability( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -971,7 +971,7 @@ def list_by_resource_group( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -1043,7 +1043,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -1119,7 +1119,7 @@ def check_name_availability( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_tasks_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_tasks_operations.py index ea9a4476a344..87e484181c4f 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_tasks_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_tasks_operations.py @@ -78,7 +78,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None): @@ -170,7 +170,7 @@ def create_or_update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -253,7 +253,7 @@ def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -329,7 +329,7 @@ def delete( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -403,7 +403,7 @@ def update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -479,7 +479,7 @@ def cancel( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" # Construct URL @@ -553,7 +553,7 @@ def command( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" diff --git a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_usages_operations.py b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_usages_operations.py index d7b73afe05b0..9139c217c67c 100644 --- a/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_usages_operations.py +++ b/sdk/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/_usages_operations.py @@ -68,7 +68,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2018-07-15-preview" + api_version = "2021-06-30" accept = "application/json" def prepare_request(next_link=None):