From 703740ca73219f6fdfa3775344fc2cd5432d4451 Mon Sep 17 00:00:00 2001 From: vchske Date: Wed, 10 Jul 2019 17:15:03 -0700 Subject: [PATCH] Adding objects necessary for mapping Oracle schemas and tables to PostgreSQL databases and tables (#6456) * Update MongoDbTasks.json * Update readme.md * Adding objects necessary for mapping Oracle schemas and tables to PostgreSQL databases and tables 2 --- .../OracleAzureDbPostgreSqlSyncTask.json | 114 ++++++++++++++++++ .../2018-07-15-preview/definitions/Tasks.json | 48 ++++++++ 2 files changed, 162 insertions(+) diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/OracleAzureDbPostgreSqlSyncTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/OracleAzureDbPostgreSqlSyncTask.json index 2e189177cf3c..3684d0b51ca5 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/OracleAzureDbPostgreSqlSyncTask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/OracleAzureDbPostgreSqlSyncTask.json @@ -97,6 +97,120 @@ "description": "Target server brand version", "readOnly": true }, + "validationErrors": { + "description": "Validation errors associated with the task", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + }, + "databaseSchemaMap": { + "type": "array", + "description": "Mapping of schemas per database", + "items": { + "type": "object", + "properties": { + "database": { + "type": "string" + }, + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "GetUserTablesOracleTaskInput": { + "type": "object", + "description": "Input for the task that gets the list of tables contained within a provided list of Oracle schemas.", + "properties": { + "connectionInfo": { + "$ref": "./Common.json#/definitions/OracleConnectionInfo", + "description": "Information for connecting to Oracle source" + }, + "selectedSchemas": { + "type": "array", + "description": "List of Oracle schemas for which to collect tables", + "items": { + "type": "string" + } + } + }, + "required": [ + "connectionInfo", + "selectedSchemas" + ] + }, + "GetUserTablesOracleTaskOutput": { + "type": "object", + "description": "Output for the task that gets the list of tables contained within a provided list of Oracle schemas.", + "properties": { + "schemaName": { + "type": "string", + "description": "The schema this result is for", + "readOnly": true + }, + "tables": { + "type": "array", + "description": "List of valid tables found for this schema", + "items": { + "$ref": "./TasksCommon.json#/definitions/DatabaseTable" + }, + "readOnly": true + }, + "validationErrors": { + "description": "Validation errors associated with the task", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + } + } + }, + "GetUserTablesPostgreSqlTaskInput": { + "type": "object", + "description": "Input for the task that gets the list of tables for a provided list of PostgreSQL databases.", + "properties": { + "connectionInfo": { + "$ref": "./Common.json#/definitions/PostgreSqlConnectionInfo", + "description": "Information for connecting to PostgreSQL source" + }, + "selectedDatabases": { + "type": "array", + "description": "List of PostgreSQL databases for which to collect tables", + "items": { + "type": "string" + } + } + }, + "required": [ + "connectionInfo", + "selectedDatabases" + ] + }, + "GetUserTablesPostgreSqlTaskOutput": { + "type": "object", + "description": "Output for the task that gets the list of tables for a provided list of PostgreSQL databases.", + "properties": { + "databaseName": { + "type": "string", + "description": "The database this result is for", + "readOnly": true + }, + "tables": { + "type": "array", + "description": "List of valid tables found for this database", + "items": { + "$ref": "./TasksCommon.json#/definitions/DatabaseTable" + }, + "readOnly": true + }, "validationErrors": { "description": "Validation errors associated with the task", "type": "array", diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json index a8478951b492..e3888fafd076 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json @@ -373,6 +373,54 @@ } ] }, + "GetUserTablesOracleTaskProperties": { + "x-ms-discriminator-value": "GetUserTablesOracle", + "type": "object", + "description": "Properties for the task that collects user tables for the given list of Oracle schemas", + "properties": { + "input": { + "description": "Task input", + "$ref": "./OracleAzureDbPostgreSqlSyncTask.json#/definitions/GetUserTablesOracleTaskInput" + }, + "output": { + "description": "Task output. This is ignored if submitted.", + "type": "array", + "items": { + "$ref": "./OracleAzureDbPostgreSqlSyncTask.json#/definitions/GetUserTablesOracleTaskOutput" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProjectTaskProperties" + } + ] + }, + "GetUserTablesPostgreSqlTaskProperties": { + "x-ms-discriminator-value": "GetUserTablesPostgreSql", + "type": "object", + "description": "Properties for the task that collects user tables for the given list of databases", + "properties": { + "input": { + "description": "Task input", + "$ref": "./OracleAzureDbPostgreSqlSyncTask.json#/definitions/GetUserTablesPostgreSqlTaskInput" + }, + "output": { + "description": "Task output. This is ignored if submitted.", + "type": "array", + "items": { + "$ref": "./OracleAzureDbPostgreSqlSyncTask.json#/definitions/GetUserTablesPostgreSqlTaskOutput" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProjectTaskProperties" + } + ] + }, "ConnectToTargetSqlMITaskProperties": { "x-ms-discriminator-value": "ConnectToTarget.AzureSqlDbMI", "type": "object",