From cea7f3d1a1efea3b324311a07097f81792c49877 Mon Sep 17 00:00:00 2001 From: lshai06 Date: Thu, 8 Nov 2018 16:42:29 +0530 Subject: [PATCH 1/2] Migration APIs --- .../examples/MigrationRecoveryPoints_Get.json | 25 + ...oints_ListByReplicationMigrationItems.json | 37 + .../ReplicationMigrationItems_Complete.json | 49 + .../ReplicationMigrationItems_Create.json | 57 + .../ReplicationMigrationItems_Delete.json | 17 + .../ReplicationMigrationItems_Get.json | 47 + .../ReplicationMigrationItems_List.json | 48 + ...ListByReplicationProtectionContainers.json | 50 + .../ReplicationMigrationItems_Migrate.json | 56 + .../ReplicationMigrationItems_Remove.json | 17 + ...ReplicationMigrationItems_TestMigrate.json | 56 + ...tionMigrationItems_TestMigrateCleanup.json | 54 + .../ReplicationMigrationItems_Update.json | 56 + ...ationRecoveryServicesProviders_Create.json | 54 + .../stable/2018-01-10/service.json | 3063 +++++++++++++---- 15 files changed, 3107 insertions(+), 579 deletions(-) create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/MigrationRecoveryPoints_Get.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Complete.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Delete.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Get.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_List.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Migrate.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Remove.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrate.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Update.json create mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationRecoveryServicesProviders_Create.json diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/MigrationRecoveryPoints_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/MigrationRecoveryPoints_Get.json new file mode 100644 index 000000000000..554075080088 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/MigrationRecoveryPoints_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationRecoveryPointName": "b22134ea-620c-474b-9fa5-3c1cb47708e3", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "name": "b22134ea-620c-474b-9fa5-3c1cb47708e3", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems/migrationRecoveryPoints", + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "properties": { + "recoveryPointTime": "2017-04-26T06:37:50.8082715Z", + "recoveryPointType": "CrashConsistent" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json new file mode 100644 index 000000000000..225aef277fe0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "648336ef-2d70-4d98-b100-8c299f97cd41", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems/migrationRecoveryPoints", + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/648336ef-2d70-4d98-b100-8c299f97cd41", + "properties": { + "recoveryPointTime": "2017-04-26T06:37:50.8082715Z", + "recoveryPointType": "CrashConsistent" + } + }, + { + "name": "34cb2d05-e730-4d3f-b96b-a60a5e92acb2", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems/migrationRecoveryPoints", + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/34cb2d05-e730-4d3f-b96b-a60a5e92acb2", + "properties": { + "recoveryPointTime": "2017-04-26T07:37:30.9722019Z", + "recoveryPointType": "CrashConsistent" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Complete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Complete.json new file mode 100644 index 000000000000..54403ca0054e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Complete.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "friendlyName": "vm-0520-2", + "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", + "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "CompleteMigration", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": { + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json new file mode 100644 index 000000000000..2d50afb69333 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "input": { + "properties": { + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "friendlyName": "vm-0520-2", + "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", + "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "CompleteMigration", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": { + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Delete.json new file mode 100644 index 000000000000..570f5b20e3a6 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "202": { + }, + "204": { + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Get.json new file mode 100644 index 000000000000..b5dbd7297ed2 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "friendlyName": "vm-0520-2", + "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", + "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "CompleteMigration", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_List.json new file mode 100644 index 000000000000..9bccdf05f19c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_List.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "friendlyName": "vm-0520-2", + "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", + "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "CompleteMigration", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json new file mode 100644 index 000000000000..91327e98a92b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "friendlyName": "vm-0520-2", + "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", + "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "CompleteMigration", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Migrate.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Migrate.json new file mode 100644 index 000000000000..e7c7e8bf5717 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Migrate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "migrateInput": { + "properties": { + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "friendlyName": "vm-0520-2", + "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", + "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "CompleteMigration", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": { + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Remove.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Remove.json new file mode 100644 index 000000000000..570f5b20e3a6 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Remove.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "202": { + }, + "204": { + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrate.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrate.json new file mode 100644 index 000000000000..3ee46311a789 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "testMigrateInput": { + "properties": { + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "friendlyName": "vm-0520-2", + "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", + "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "CompleteMigration", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": { + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json new file mode 100644 index 000000000000..65b76dd4199a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "testMigrateCleanupInput": { + "properties": { + "comments": "Test Failover Cleanup" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "friendlyName": "vm-0520-2", + "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", + "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "CompleteMigration", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": { + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Update.json new file mode 100644 index 000000000000..0579eba0c26b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Update.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "input": { + "properties": { + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "friendlyName": "vm-0520-2", + "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", + "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "CompleteMigration", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": { + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationRecoveryServicesProviders_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationRecoveryServicesProviders_Create.json new file mode 100644 index 000000000000..9500aafc02e5 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationRecoveryServicesProviders_Create.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2018-01-10", + "providerName": "vmwareprovider1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "addProviderInput": { + "properties": { + "machineName": "vmwareprovider1", + "authenticationIdentityInput": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "f66fce08-c0c6-47a1-beeb-0ede5ea94f90", + "objectId": "141360b8-5686-4240-a027-5e24e6affeba", + "audience": "https://microsoft.onmicrosoft.com/cf19e349-644c-4c6a-bcae-9c8f35357874", + "aadAuthority": "https://login.microsoftonline.com" + }, + "resourceAccessIdentityInput": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "f66fce08-c0c6-47a1-beeb-0ede5ea94f90", + "objectId": "141360b8-5686-4240-a027-5e24e6affeba", + "audience": "https://microsoft.onmicrosoft.com/cf19e349-644c-4c6a-bcae-9c8f35357874", + "aadAuthority": "https://login.microsoftonline.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/vmwareprovider1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "vmwareprovider1", + "properties": { + "fabricType": "VMwareV2", + "friendlyName": "vmwareprovider1", + "providerVersion": "5.1.3688.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "vmwarefabric1", + "lastHeartBeat": "2017-04-27T09:16:04.9405768Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + }, + "202": { + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json index 4380a76e3b10..7a7e02c9344c 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json @@ -1606,14 +1606,14 @@ } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems": { "get": { "tags": [ - "ReplicationProtectableItems" + "ReplicationMigrationItems" ], - "summary": "Gets the list of protectable items.", - "description": "Lists the protectable items in a protection container.", - "operationId": "ReplicationProtectableItems_ListByReplicationProtectionContainers", + "summary": "Gets the list of migration items in the protection container.", + "description": "Gets the list of ASR migration items in the protection container.", + "operationId": "ReplicationMigrationItems_ListByReplicationProtectionContainers", "produces": [ "application/json" ], @@ -1643,42 +1643,33 @@ "description": "Protection container name.", "required": true, "type": "string" - }, - { - "name": "$filter", - "in": "query", - "description": "OData filter options.", - "required": false, - "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ProtectableItemCollection" + "$ref": "#/definitions/MigrationItemCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/ProtectableItemQueryParameter", "x-ms-examples": { - "Gets the list of protectable items.": { - "$ref": "./examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json" + "Gets the list of migration items in the protection container.": { + "$ref": "./examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems/{protectableItemName}": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}": { "get": { "tags": [ - "ReplicationProtectableItems" + "ReplicationMigrationItems" ], - "summary": "Gets the details of a protectable item.", - "description": "The operation to get the details of a protectable item.", - "operationId": "ReplicationProtectableItems_Get", + "summary": "Gets the details of a migration item.", + "operationId": "ReplicationMigrationItems_Get", "produces": [ "application/json" ], @@ -1698,7 +1689,7 @@ { "name": "fabricName", "in": "path", - "description": "Fabric name.", + "description": "Fabric unique name.", "required": true, "type": "string" }, @@ -1710,9 +1701,9 @@ "type": "string" }, { - "name": "protectableItemName", + "name": "migrationItemName", "in": "path", - "description": "Protectable item name.", + "description": "Migration item name.", "required": true, "type": "string" } @@ -1721,25 +1712,26 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ProtectableItem" + "$ref": "#/definitions/MigrationItem" } } }, "x-ms-examples": { - "Gets the details of a protectable item.": { - "$ref": "./examples/ReplicationProtectableItems_Get.json" + "Gets the details of a migration item.": { + "$ref": "./examples/ReplicationMigrationItems_Get.json" } } - } - }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems": { - "get": { + }, + "put": { "tags": [ - "ReplicationProtectedItems" + "ReplicationMigrationItems" + ], + "summary": "Enables migration.", + "description": "The operation to create an ASR migration item (enable migration).", + "operationId": "ReplicationMigrationItems_Create", + "consumes": [ + "application/json" ], - "summary": "Gets the list of Replication protected items.", - "description": "Gets the list of ASR replication protected items in the protection container.", - "operationId": "ReplicationProtectedItems_ListByReplicationProtectionContainers", "produces": [ "application/json" ], @@ -1769,34 +1761,49 @@ "description": "Protection container name.", "required": true, "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Enable migration input.", + "required": true, + "schema": { + "$ref": "#/definitions/EnableMigrationInput" + } } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ReplicationProtectedItemCollection" + "$ref": "#/definitions/MigrationItem" } + }, + "202": { + "description": "Accepted" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Gets the list of Replication protected items.": { - "$ref": "./examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json" + "Enables migration.": { + "$ref": "./examples/ReplicationMigrationItems_Create.json" } } - } - }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}": { - "get": { + }, + "delete": { "tags": [ - "ReplicationProtectedItems" + "ReplicationMigrationItems" ], - "summary": "Gets the details of a Replication protected item.", - "description": "Gets the details of an ASR replication protected item.", - "operationId": "ReplicationProtectedItems_Get", + "summary": "Purges migration.", + "description": "The operation to purge an ASR migration item. This operation will force delete the migration item. Use the remove operation on migration item to perform a clean disable migration for the item.", + "operationId": "ReplicationMigrationItems_Delete", "produces": [ "application/json" ], @@ -1816,7 +1823,7 @@ { "name": "fabricName", "in": "path", - "description": "Fabric unique name.", + "description": "Fabric name.", "required": true, "type": "string" }, @@ -1828,34 +1835,35 @@ "type": "string" }, { - "name": "replicatedProtectedItemName", + "name": "migrationItemName", "in": "path", - "description": "Replication protected item name.", + "description": "Migration item name.", "required": true, "type": "string" } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ReplicationProtectedItem" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Gets the details of a Replication protected item.": { - "$ref": "./examples/ReplicationProtectedItems_Get.json" + "Purges migration.": { + "$ref": "./examples/ReplicationMigrationItems_Delete.json" } } }, - "put": { + "patch": { "tags": [ - "ReplicationProtectedItems" + "ReplicationMigrationItems" ], - "summary": "Enables protection.", - "description": "The operation to create an ASR replication protected item (Enable replication).", - "operationId": "ReplicationProtectedItems_Create", + "summary": "Updates migration item.", + "description": "The operation to update the recovery settings of an ASR migration item.", + "operationId": "ReplicationMigrationItems_Update", "consumes": [ "application/json" ], @@ -1878,7 +1886,7 @@ { "name": "fabricName", "in": "path", - "description": "Name of the fabric.", + "description": "Fabric name.", "required": true, "type": "string" }, @@ -1890,19 +1898,19 @@ "type": "string" }, { - "name": "replicatedProtectedItemName", + "name": "migrationItemName", "in": "path", - "description": "A name for the replication protected item.", + "description": "Migration item name.", "required": true, "type": "string" }, { "name": "input", "in": "body", - "description": "Enable Protection Input.", + "description": "Update migration item input.", "required": true, "schema": { - "$ref": "#/definitions/EnableProtectionInput" + "$ref": "#/definitions/UpdateMigrationItemInput" } } ], @@ -1910,7 +1918,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ReplicationProtectedItem" + "$ref": "#/definitions/MigrationItem" } }, "202": { @@ -1919,18 +1927,20 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Enables protection.": { - "$ref": "./examples/ReplicationProtectedItems_Create.json" + "Updates migration item.": { + "$ref": "./examples/ReplicationMigrationItems_Update.json" } } - }, - "delete": { + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/complete": { + "post": { "tags": [ - "ReplicationProtectedItems" + "ReplicationMigrationItems" ], - "summary": "Purges protection.", - "description": "The operation to delete or purge a replication protected item. This operation will force delete the replication protected item. Use the remove operation on replication protected item to perform a clean disable replication for the item.", - "operationId": "ReplicationProtectedItems_Purge", + "summary": "Complete migration.", + "description": "The operation to initiate complete migration of the item.", + "operationId": "ReplicationMigrationItems_Complete", "produces": [ "application/json" ], @@ -1962,35 +1972,40 @@ "type": "string" }, { - "name": "replicatedProtectedItemName", + "name": "migrationItemName", "in": "path", - "description": "Replication protected item name.", + "description": "Migration item name.", "required": true, "type": "string" } ], "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, "202": { "description": "Accepted" - }, - "204": { - "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Purges protection.": { - "$ref": "./examples/ReplicationProtectedItems_Purge.json" + "Complete migration.": { + "$ref": "./examples/ReplicationMigrationItems_Complete.json" } } - }, - "patch": { + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate": { + "post": { "tags": [ - "ReplicationProtectedItems" + "ReplicationMigrationItems" ], - "summary": "Updates protection.", - "description": "The operation to update the recovery settings of an ASR replication protected item.", - "operationId": "ReplicationProtectedItems_Update", + "summary": "Migrate item.", + "description": "The operation to initiate migration of the item.", + "operationId": "ReplicationMigrationItems_Migrate", "consumes": [ "application/json" ], @@ -2025,19 +2040,19 @@ "type": "string" }, { - "name": "replicatedProtectedItemName", + "name": "migrationItemName", "in": "path", - "description": "Replication protected item name.", + "description": "Migration item name.", "required": true, "type": "string" }, { - "name": "updateProtectionInput", + "name": "migrateInput", "in": "body", - "description": "Update protection input.", + "description": "Migrate input.", "required": true, "schema": { - "$ref": "#/definitions/UpdateReplicationProtectedItemInput" + "$ref": "#/definitions/MigrateInput" } } ], @@ -2045,7 +2060,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ReplicationProtectedItem" + "$ref": "#/definitions/MigrationItem" } }, "202": { @@ -2054,23 +2069,19 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Updates protection.": { - "$ref": "./examples/ReplicationProtectedItems_Update.json" + "Migrate item.": { + "$ref": "./examples/ReplicationMigrationItems_Migrate.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/applyRecoveryPoint": { - "post": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints": { + "get": { "tags": [ - "ReplicationProtectedItems" - ], - "summary": "Change or apply recovery point.", - "description": "The operation to change the recovery point of a failed over replication protected item.", - "operationId": "ReplicationProtectedItems_ApplyRecoveryPoint", - "consumes": [ - "application/json" + "MigrationRecoveryPoints" ], + "summary": "Gets the recovery points for a migration item.", + "operationId": "MigrationRecoveryPoints_ListByReplicationMigrationItems", "produces": [ "application/json" ], @@ -2090,61 +2101,50 @@ { "name": "fabricName", "in": "path", - "description": "The ARM fabric name.", + "description": "Fabric unique name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", - "description": "The protection container name.", + "description": "Protection container name.", "required": true, "type": "string" }, { - "name": "replicatedProtectedItemName", + "name": "migrationItemName", "in": "path", - "description": "The replicated protected item's name.", + "description": "Migration item name.", "required": true, "type": "string" - }, - { - "name": "applyRecoveryPointInput", - "in": "body", - "description": "The ApplyRecoveryPointInput.", - "required": true, - "schema": { - "$ref": "#/definitions/ApplyRecoveryPointInput" - } } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ReplicationProtectedItem" + "$ref": "#/definitions/MigrationRecoveryPointCollection" } - }, - "202": { - "description": "Accepted" } }, - "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "Change or apply recovery point.": { - "$ref": "./examples/ReplicationProtectedItems_ApplyRecoveryPoint.json" + "Gets the recovery points for a migration item.": { + "$ref": "./examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCommit": { - "post": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints/{migrationRecoveryPointName}": { + "get": { "tags": [ - "ReplicationProtectedItems" + "MigrationRecoveryPoints" ], - "summary": "Execute commit failover", - "description": "Operation to commit the failover of the replication protected item.", - "operationId": "ReplicationProtectedItems_FailoverCommit", + "summary": "Gets a recovery point for a migration item.", + "operationId": "MigrationRecoveryPoints_Get", "produces": [ "application/json" ], @@ -2164,7 +2164,7 @@ { "name": "fabricName", "in": "path", - "description": "Unique fabric name.", + "description": "Fabric unique name.", "required": true, "type": "string" }, @@ -2176,9 +2176,16 @@ "type": "string" }, { - "name": "replicatedProtectedItemName", + "name": "migrationItemName", "in": "path", - "description": "Replication protected item name.", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "migrationRecoveryPointName", + "in": "path", + "description": "The migration recovery point name.", "required": true, "type": "string" } @@ -2187,32 +2194,25 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ReplicationProtectedItem" + "$ref": "#/definitions/MigrationRecoveryPoint" } - }, - "202": { - "description": "Accepted" } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Execute commit failover": { - "$ref": "./examples/ReplicationProtectedItems_FailoverCommit.json" + "Gets a recovery point for a migration item.": { + "$ref": "./examples/MigrationRecoveryPoints_Get.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/plannedFailover": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/remove": { "post": { "tags": [ - "ReplicationProtectedItems" - ], - "summary": "Execute planned failover", - "description": "Operation to initiate a planned failover of the replication protected item.", - "operationId": "ReplicationProtectedItems_PlannedFailover", - "consumes": [ - "application/json" + "ReplicationMigrationItems" ], + "summary": "Disables migration.", + "description": "The operation to disable an ASR migration item.", + "operationId": "ReplicationMigrationItems_Remove", "produces": [ "application/json" ], @@ -2232,7 +2232,7 @@ { "name": "fabricName", "in": "path", - "description": "Unique fabric name.", + "description": "Fabric name.", "required": true, "type": "string" }, @@ -2244,49 +2244,40 @@ "type": "string" }, { - "name": "replicatedProtectedItemName", + "name": "migrationItemName", "in": "path", - "description": "Replication protected item name.", + "description": "Migration item name.", "required": true, "type": "string" - }, - { - "name": "failoverInput", - "in": "body", - "description": "Disable protection input.", - "required": true, - "schema": { - "$ref": "#/definitions/PlannedFailoverInput" - } } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ReplicationProtectedItem" - } - }, "202": { "description": "Accepted" + }, + "204": { + "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Execute planned failover": { - "$ref": "./examples/ReplicationProtectedItems_PlannedFailover.json" + "Disables migration.": { + "$ref": "./examples/ReplicationMigrationItems_Remove.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints": { - "get": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate": { + "post": { "tags": [ - "RecoveryPoints" + "ReplicationMigrationItems" + ], + "summary": "Test migrate item.", + "description": "The operation to initiate test migration of the item.", + "operationId": "ReplicationMigrationItems_TestMigrate", + "consumes": [ + "application/json" ], - "summary": "Get recovery points for a replication protected item.", - "description": "Lists the available recovery points for a replication protected item.", - "operationId": "RecoveryPoints_ListByReplicationProtectedItems", "produces": [ "application/json" ], @@ -2306,51 +2297,64 @@ { "name": "fabricName", "in": "path", - "description": "The fabric name.", + "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", - "description": "The protection container name.", + "description": "Protection container name.", "required": true, "type": "string" }, { - "name": "replicatedProtectedItemName", + "name": "migrationItemName", "in": "path", - "description": "The replication protected item's name.", + "description": "Migration item name.", "required": true, "type": "string" + }, + { + "name": "testMigrateInput", + "in": "body", + "description": "Test migrate input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestMigrateInput" + } } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/RecoveryPointCollection" + "$ref": "#/definitions/MigrationItem" } + }, + "202": { + "description": "Accepted" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Get recovery points for a replication protected item.": { - "$ref": "./examples/RecoveryPoints_ListByReplicationProtectedItems.json" + "Test migrate item.": { + "$ref": "./examples/ReplicationMigrationItems_TestMigrate.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints/{recoveryPointName}": { - "get": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrateCleanup": { + "post": { "tags": [ - "RecoveryPoints" + "ReplicationMigrationItems" + ], + "summary": "Test migrate cleanup.", + "description": "The operation to initiate test migrate cleanup.", + "operationId": "ReplicationMigrationItems_TestMigrateCleanup", + "consumes": [ + "application/json" ], - "summary": "Get a recovery point.", - "description": "Get the details of specified recovery point.", - "operationId": "RecoveryPoints_Get", "produces": [ "application/json" ], @@ -2370,58 +2374,61 @@ { "name": "fabricName", "in": "path", - "description": "The fabric name.", + "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", - "description": "The protection container name.", + "description": "Protection container name.", "required": true, "type": "string" }, { - "name": "replicatedProtectedItemName", + "name": "migrationItemName", "in": "path", - "description": "The replication protected item's name.", + "description": "Migration item name.", "required": true, "type": "string" }, { - "name": "recoveryPointName", - "in": "path", - "description": "The recovery point name.", + "name": "testMigrateCleanupInput", + "in": "body", + "description": "Test migrate cleanup input.", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/TestMigrateCleanupInput" + } } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/RecoveryPoint" + "$ref": "#/definitions/MigrationItem" } + }, + "202": { + "description": "Accepted" } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Get a recovery point.": { - "$ref": "./examples/RecoveryPoints_Get.json" + "Test migrate cleanup.": { + "$ref": "./examples/ReplicationMigrationItems_TestMigrateCleanup.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/remove": { - "post": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems": { + "get": { "tags": [ - "ReplicationProtectedItems" - ], - "summary": "Disables protection.", - "description": "The operation to disable replication on a replication protected item. This will also remove the item.", - "operationId": "ReplicationProtectedItems_Delete", - "consumes": [ - "application/json" + "ReplicationProtectableItems" ], + "summary": "Gets the list of protectable items.", + "description": "Lists the protectable items in a protection container.", + "operationId": "ReplicationProtectableItems_ListByReplicationProtectionContainers", "produces": [ "application/json" ], @@ -2453,46 +2460,40 @@ "type": "string" }, { - "name": "replicatedProtectedItemName", - "in": "path", - "description": "Replication protected item name.", - "required": true, + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, "type": "string" - }, - { - "name": "disableProtectionInput", - "in": "body", - "description": "Disable protection input.", - "required": true, - "schema": { - "$ref": "#/definitions/DisableProtectionInput" - } } ], "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "NoContent" + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectableItemCollection" + } } }, - "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/ProtectableItemQueryParameter", "x-ms-examples": { - "Disables protection.": { - "$ref": "./examples/ReplicationProtectedItems_Delete.json" + "Gets the list of protectable items.": { + "$ref": "./examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/repairReplication": { - "post": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems/{protectableItemName}": { + "get": { "tags": [ - "ReplicationProtectedItems" + "ReplicationProtectableItems" ], - "summary": "Resynchronize or repair replication.", - "description": "The operation to start resynchronize/repair replication for a replication protected item requiring resynchronization.", - "operationId": "ReplicationProtectedItems_RepairReplication", + "summary": "Gets the details of a protectable item.", + "description": "The operation to get the details of a protectable item.", + "operationId": "ReplicationProtectableItems_Get", "produces": [ "application/json" ], @@ -2512,21 +2513,21 @@ { "name": "fabricName", "in": "path", - "description": "The name of the fabric.", + "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", - "description": "The name of the container.", + "description": "Protection container name.", "required": true, "type": "string" }, { - "name": "replicatedProtectedItemName", + "name": "protectableItemName", "in": "path", - "description": "The name of the replication protected item.", + "description": "Protectable item name.", "required": true, "type": "string" } @@ -2535,32 +2536,25 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ReplicationProtectedItem" + "$ref": "#/definitions/ProtectableItem" } - }, - "202": { - "description": "Accepted" } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Resynchronize or repair replication.": { - "$ref": "./examples/ReplicationProtectedItems_RepairReplication.json" + "Gets the details of a protectable item.": { + "$ref": "./examples/ReplicationProtectableItems_Get.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reProtect": { - "post": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems": { + "get": { "tags": [ "ReplicationProtectedItems" ], - "summary": "Execute Reverse Replication\\Reprotect", - "description": "Operation to reprotect or reverse replicate a failed over replication protected item.", - "operationId": "ReplicationProtectedItems_Reprotect", - "consumes": [ - "application/json" - ], + "summary": "Gets the list of Replication protected items.", + "description": "Gets the list of ASR replication protected items in the protection container.", + "operationId": "ReplicationProtectedItems_ListByReplicationProtectionContainers", "produces": [ "application/json" ], @@ -2580,7 +2574,7 @@ { "name": "fabricName", "in": "path", - "description": "Unique fabric name.", + "description": "Fabric name.", "required": true, "type": "string" }, @@ -2590,51 +2584,34 @@ "description": "Protection container name.", "required": true, "type": "string" - }, - { - "name": "replicatedProtectedItemName", - "in": "path", - "description": "Replication protected item name.", - "required": true, - "type": "string" - }, - { - "name": "rrInput", - "in": "body", - "description": "Disable protection input.", - "required": true, - "schema": { - "$ref": "#/definitions/ReverseReplicationInput" - } } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ReplicationProtectedItem" + "$ref": "#/definitions/ReplicationProtectedItemCollection" } - }, - "202": { - "description": "Accepted" } }, - "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "Execute Reverse Replication\\Reprotect": { - "$ref": "./examples/ReplicationProtectedItems_Reprotect.json" + "Gets the list of Replication protected items.": { + "$ref": "./examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/targetComputeSizes": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}": { "get": { "tags": [ - "TargetComputeSizes" + "ReplicationProtectedItems" ], - "summary": "Gets the list of target compute sizes for the replication protected item.", - "description": "Lists the available target compute sizes for a replication protected item.", - "operationId": "TargetComputeSizes_ListByReplicationProtectedItems", + "summary": "Gets the details of a Replication protected item.", + "description": "Gets the details of an ASR replication protected item.", + "operationId": "ReplicationProtectedItems_Get", "produces": [ "application/json" ], @@ -2654,14 +2631,14 @@ { "name": "fabricName", "in": "path", - "description": "Fabric name.", + "description": "Fabric unique name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", - "description": "protection container name.", + "description": "Protection container name.", "required": true, "type": "string" }, @@ -2677,28 +2654,23 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/TargetComputeSizeCollection" + "$ref": "#/definitions/ReplicationProtectedItem" } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "x-ms-examples": { - "Gets the list of target compute sizes for the replication protected item.": { - "$ref": "./examples/TargetComputeSizes_ListByReplicationProtectedItems.json" + "Gets the details of a Replication protected item.": { + "$ref": "./examples/ReplicationProtectedItems_Get.json" } } - } - }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailover": { - "post": { + }, + "put": { "tags": [ "ReplicationProtectedItems" ], - "summary": "Execute test failover", - "description": "Operation to perform a test failover of the replication protected item.", - "operationId": "ReplicationProtectedItems_TestFailover", + "summary": "Enables protection.", + "description": "The operation to create an ASR replication protected item (Enable replication).", + "operationId": "ReplicationProtectedItems_Create", "consumes": [ "application/json" ], @@ -2721,7 +2693,7 @@ { "name": "fabricName", "in": "path", - "description": "Unique fabric name.", + "description": "Name of the fabric.", "required": true, "type": "string" }, @@ -2735,17 +2707,17 @@ { "name": "replicatedProtectedItemName", "in": "path", - "description": "Replication protected item name.", + "description": "A name for the replication protected item.", "required": true, "type": "string" }, { - "name": "failoverInput", + "name": "input", "in": "body", - "description": "Test failover input.", + "description": "Enable Protection Input.", "required": true, "schema": { - "$ref": "#/definitions/TestFailoverInput" + "$ref": "#/definitions/EnableProtectionInput" } } ], @@ -2762,23 +2734,18 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Execute test failover": { - "$ref": "./examples/ReplicationProtectedItems_TestFailover.json" + "Enables protection.": { + "$ref": "./examples/ReplicationProtectedItems_Create.json" } } - } - }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailoverCleanup": { - "post": { + }, + "delete": { "tags": [ "ReplicationProtectedItems" ], - "summary": "Execute test failover cleanup.", - "description": "Operation to clean up the test failover of a replication protected item.", - "operationId": "ReplicationProtectedItems_TestFailoverCleanup", - "consumes": [ - "application/json" - ], + "summary": "Purges protection.", + "description": "The operation to delete or purge a replication protected item. This operation will force delete the replication protected item. Use the remove operation on replication protected item to perform a clean disable replication for the item.", + "operationId": "ReplicationProtectedItems_Purge", "produces": [ "application/json" ], @@ -2798,7 +2765,7 @@ { "name": "fabricName", "in": "path", - "description": "Unique fabric name.", + "description": "Fabric name.", "required": true, "type": "string" }, @@ -2815,44 +2782,30 @@ "description": "Replication protected item name.", "required": true, "type": "string" - }, - { - "name": "cleanupInput", - "in": "body", - "description": "Test failover cleanup input.", - "required": true, - "schema": { - "$ref": "#/definitions/TestFailoverCleanupInput" - } } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ReplicationProtectedItem" - } - }, "202": { "description": "Accepted" + }, + "204": { + "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Execute test failover cleanup.": { - "$ref": "./examples/ReplicationProtectedItems_TestFailoverCleanup.json" + "Purges protection.": { + "$ref": "./examples/ReplicationProtectedItems_Purge.json" } } - } - }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/unplannedFailover": { - "post": { + }, + "patch": { "tags": [ "ReplicationProtectedItems" ], - "summary": "Execute unplanned failover", - "description": "Operation to initiate a failover of the replication protected item.", - "operationId": "ReplicationProtectedItems_UnplannedFailover", + "summary": "Updates protection.", + "description": "The operation to update the recovery settings of an ASR replication protected item.", + "operationId": "ReplicationProtectedItems_Update", "consumes": [ "application/json" ], @@ -2875,7 +2828,7 @@ { "name": "fabricName", "in": "path", - "description": "Unique fabric name.", + "description": "Fabric name.", "required": true, "type": "string" }, @@ -2894,12 +2847,12 @@ "type": "string" }, { - "name": "failoverInput", + "name": "updateProtectionInput", "in": "body", - "description": "Disable protection input.", + "description": "Update protection input.", "required": true, "schema": { - "$ref": "#/definitions/UnplannedFailoverInput" + "$ref": "#/definitions/UpdateReplicationProtectedItemInput" } } ], @@ -2916,20 +2869,20 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Execute unplanned failover": { - "$ref": "./examples/ReplicationProtectedItems_UnplannedFailover.json" + "Updates protection.": { + "$ref": "./examples/ReplicationProtectedItems_Update.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicationProtectedItemName}/updateMobilityService": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/applyRecoveryPoint": { "post": { "tags": [ "ReplicationProtectedItems" ], - "summary": "Update the mobility service on a protected item.", - "description": "The operation to update(push update) the installed mobility service software on a replication protected item to the latest available version.", - "operationId": "ReplicationProtectedItems_UpdateMobilityService", + "summary": "Change or apply recovery point.", + "description": "The operation to change the recovery point of a failed over replication protected item.", + "operationId": "ReplicationProtectedItems_ApplyRecoveryPoint", "consumes": [ "application/json" ], @@ -2952,31 +2905,31 @@ { "name": "fabricName", "in": "path", - "description": "The name of the fabric containing the protected item.", + "description": "The ARM fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", - "description": "The name of the container containing the protected item.", + "description": "The protection container name.", "required": true, "type": "string" }, { - "name": "replicationProtectedItemName", + "name": "replicatedProtectedItemName", "in": "path", - "description": "The name of the protected item on which the agent is to be updated.", + "description": "The replicated protected item's name.", "required": true, "type": "string" }, { - "name": "updateMobilityServiceRequest", + "name": "applyRecoveryPointInput", "in": "body", - "description": "Request to update the mobility service on the protected item.", + "description": "The ApplyRecoveryPointInput.", "required": true, "schema": { - "$ref": "#/definitions/UpdateMobilityServiceRequest" + "$ref": "#/definitions/ApplyRecoveryPointInput" } } ], @@ -2993,20 +2946,20 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Update the mobility service on a protected item.": { - "$ref": "./examples/ReplicationProtectedItems_UpdateMobilityService.json" + "Change or apply recovery point.": { + "$ref": "./examples/ReplicationProtectedItems_ApplyRecoveryPoint.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings": { - "get": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCommit": { + "post": { "tags": [ - "ReplicationProtectionContainerMappings" + "ReplicationProtectedItems" ], - "summary": "Gets the list of protection container mappings for a protection container.", - "description": "Lists the protection container mappings for a protection container.", - "operationId": "ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers", + "summary": "Execute commit failover", + "description": "Operation to commit the failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_FailoverCommit", "produces": [ "application/json" ], @@ -3026,7 +2979,7 @@ { "name": "fabricName", "in": "path", - "description": "Fabric name.", + "description": "Unique fabric name.", "required": true, "type": "string" }, @@ -3036,34 +2989,45 @@ "description": "Protection container name.", "required": true, "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ProtectionContainerMappingCollection" + "$ref": "#/definitions/ReplicationProtectedItem" } + }, + "202": { + "description": "Accepted" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Gets the list of protection container mappings for a protection container.": { - "$ref": "./examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json" + "Execute commit failover": { + "$ref": "./examples/ReplicationProtectedItems_FailoverCommit.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}": { - "get": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/plannedFailover": { + "post": { "tags": [ - "ReplicationProtectionContainerMappings" + "ReplicationProtectedItems" + ], + "summary": "Execute planned failover", + "description": "Operation to initiate a planned failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_PlannedFailover", + "consumes": [ + "application/json" ], - "summary": "Gets a protection container mapping/", - "description": "Gets the details of a protection container mapping.", - "operationId": "ReplicationProtectionContainerMappings_Get", "produces": [ "application/json" ], @@ -3083,7 +3047,7 @@ { "name": "fabricName", "in": "path", - "description": "Fabric name.", + "description": "Unique fabric name.", "required": true, "type": "string" }, @@ -3095,37 +3059,49 @@ "type": "string" }, { - "name": "mappingName", + "name": "replicatedProtectedItemName", "in": "path", - "description": "Protection Container mapping name.", + "description": "Replication protected item name.", "required": true, "type": "string" + }, + { + "name": "failoverInput", + "in": "body", + "description": "Disable protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/PlannedFailoverInput" + } } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ProtectionContainerMapping" + "$ref": "#/definitions/ReplicationProtectedItem" } + }, + "202": { + "description": "Accepted" } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Gets a protection container mapping/": { - "$ref": "./examples/ReplicationProtectionContainerMappings_Get.json" + "Execute planned failover": { + "$ref": "./examples/ReplicationProtectedItems_PlannedFailover.json" } } - }, - "put": { + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints": { + "get": { "tags": [ - "ReplicationProtectionContainerMappings" - ], - "summary": "Create protection container mapping.", - "description": "The operation to create a protection container mapping.", - "operationId": "ReplicationProtectionContainerMappings_Create", - "consumes": [ - "application/json" + "RecoveryPoints" ], + "summary": "Get recovery points for a replication protected item.", + "description": "Lists the available recovery points for a replication protected item.", + "operationId": "RecoveryPoints_ListByReplicationProtectedItems", "produces": [ "application/json" ], @@ -3145,59 +3121,51 @@ { "name": "fabricName", "in": "path", - "description": "Fabric name.", + "description": "The fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", - "description": "Protection container name.", + "description": "The protection container name.", "required": true, "type": "string" }, { - "name": "mappingName", + "name": "replicatedProtectedItemName", "in": "path", - "description": "Protection container mapping name.", + "description": "The replication protected item's name.", "required": true, "type": "string" - }, - { - "name": "creationInput", - "in": "body", - "description": "Mapping creation input.", - "required": true, - "schema": { - "$ref": "#/definitions/CreateProtectionContainerMappingInput" - } } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ProtectionContainerMapping" + "$ref": "#/definitions/RecoveryPointCollection" } - }, - "202": { - "description": "Accepted" } }, - "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "Create protection container mapping.": { - "$ref": "./examples/ReplicationProtectionContainerMappings_Create.json" + "Get recovery points for a replication protected item.": { + "$ref": "./examples/RecoveryPoints_ListByReplicationProtectedItems.json" } } - }, - "delete": { + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints/{recoveryPointName}": { + "get": { "tags": [ - "ReplicationProtectionContainerMappings" + "RecoveryPoints" ], - "summary": "Purge protection container mapping.", - "description": "The operation to purge(force delete) a protection container mapping", - "operationId": "ReplicationProtectionContainerMappings_Purge", + "summary": "Get a recovery point.", + "description": "Get the details of specified recovery point.", + "operationId": "RecoveryPoints_Get", "produces": [ "application/json" ], @@ -3217,47 +3185,55 @@ { "name": "fabricName", "in": "path", - "description": "Fabric name.", + "description": "The fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", - "description": "Protection container name.", + "description": "The protection container name.", "required": true, "type": "string" }, { - "name": "mappingName", + "name": "replicatedProtectedItemName", "in": "path", - "description": "Protection container mapping name.", + "description": "The replication protected item's name.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointName", + "in": "path", + "description": "The recovery point name.", "required": true, "type": "string" } ], "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "NoContent" + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPoint" + } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Purge protection container mapping.": { - "$ref": "./examples/ReplicationProtectionContainerMappings_Purge.json" + "Get a recovery point.": { + "$ref": "./examples/RecoveryPoints_Get.json" } } - }, - "patch": { + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/remove": { + "post": { "tags": [ - "ReplicationProtectionContainerMappings" + "ReplicationProtectedItems" ], - "summary": "Update protection container mapping.", - "description": "The operation to update protection container mapping.", - "operationId": "ReplicationProtectionContainerMappings_Update", + "summary": "Disables protection.", + "description": "The operation to disable replication on a replication protected item. This will also remove the item.", + "operationId": "ReplicationProtectedItems_Delete", "consumes": [ "application/json" ], @@ -3292,50 +3268,889 @@ "type": "string" }, { - "name": "mappingName", + "name": "replicatedProtectedItemName", "in": "path", - "description": "Protection container mapping name.", + "description": "Replication protected item name.", "required": true, "type": "string" }, { - "name": "updateInput", + "name": "disableProtectionInput", "in": "body", - "description": "Mapping update input.", + "description": "Disable protection input.", "required": true, "schema": { - "$ref": "#/definitions/UpdateProtectionContainerMappingInput" + "$ref": "#/definitions/DisableProtectionInput" } } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ProtectionContainerMapping" - } - }, "202": { "description": "Accepted" + }, + "204": { + "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Update protection container mapping.": { - "$ref": "./examples/ReplicationProtectionContainerMappings_Update.json" + "Disables protection.": { + "$ref": "./examples/ReplicationProtectedItems_Delete.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}/remove": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/repairReplication": { "post": { "tags": [ - "ReplicationProtectionContainerMappings" + "ReplicationProtectedItems" ], - "summary": "Remove protection container mapping.", - "description": "The operation to delete or remove a protection container mapping.", - "operationId": "ReplicationProtectionContainerMappings_Delete", - "consumes": [ + "summary": "Resynchronize or repair replication.", + "description": "The operation to start resynchronize/repair replication for a replication protected item requiring resynchronization.", + "operationId": "ReplicationProtectedItems_RepairReplication", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The name of the fabric.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "The name of the replication protected item.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resynchronize or repair replication.": { + "$ref": "./examples/ReplicationProtectedItems_RepairReplication.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reProtect": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute Reverse Replication\\Reprotect", + "description": "Operation to reprotect or reverse replicate a failed over replication protected item.", + "operationId": "ReplicationProtectedItems_Reprotect", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "rrInput", + "in": "body", + "description": "Disable protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/ReverseReplicationInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute Reverse Replication\\Reprotect": { + "$ref": "./examples/ReplicationProtectedItems_Reprotect.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/targetComputeSizes": { + "get": { + "tags": [ + "TargetComputeSizes" + ], + "summary": "Gets the list of target compute sizes for the replication protected item.", + "description": "Lists the available target compute sizes for a replication protected item.", + "operationId": "TargetComputeSizes_ListByReplicationProtectedItems", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TargetComputeSizeCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of target compute sizes for the replication protected item.": { + "$ref": "./examples/TargetComputeSizes_ListByReplicationProtectedItems.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailover": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute test failover", + "description": "Operation to perform a test failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_TestFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "in": "body", + "description": "Test failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute test failover": { + "$ref": "./examples/ReplicationProtectedItems_TestFailover.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailoverCleanup": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute test failover cleanup.", + "description": "Operation to clean up the test failover of a replication protected item.", + "operationId": "ReplicationProtectedItems_TestFailoverCleanup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "cleanupInput", + "in": "body", + "description": "Test failover cleanup input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestFailoverCleanupInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute test failover cleanup.": { + "$ref": "./examples/ReplicationProtectedItems_TestFailoverCleanup.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/unplannedFailover": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute unplanned failover", + "description": "Operation to initiate a failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_UnplannedFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "in": "body", + "description": "Disable protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/UnplannedFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute unplanned failover": { + "$ref": "./examples/ReplicationProtectedItems_UnplannedFailover.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicationProtectedItemName}/updateMobilityService": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Update the mobility service on a protected item.", + "description": "The operation to update(push update) the installed mobility service software on a replication protected item to the latest available version.", + "operationId": "ReplicationProtectedItems_UpdateMobilityService", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The name of the fabric containing the protected item.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The name of the container containing the protected item.", + "required": true, + "type": "string" + }, + { + "name": "replicationProtectedItemName", + "in": "path", + "description": "The name of the protected item on which the agent is to be updated.", + "required": true, + "type": "string" + }, + { + "name": "updateMobilityServiceRequest", + "in": "body", + "description": "Request to update the mobility service on the protected item.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateMobilityServiceRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the mobility service on a protected item.": { + "$ref": "./examples/ReplicationProtectedItems_UpdateMobilityService.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings": { + "get": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Gets the list of protection container mappings for a protection container.", + "description": "Lists the protection container mappings for a protection container.", + "operationId": "ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of protection container mappings for a protection container.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}": { + "get": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Gets a protection container mapping/", + "description": "Gets the details of a protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection Container mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + } + }, + "x-ms-examples": { + "Gets a protection container mapping/": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Create protection container mapping.", + "description": "The operation to create a protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + }, + { + "name": "creationInput", + "in": "body", + "description": "Mapping creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateProtectionContainerMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Purge protection container mapping.", + "description": "The operation to purge(force delete) a protection container mapping", + "operationId": "ReplicationProtectionContainerMappings_Purge", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Purge protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Purge.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Update protection container mapping.", + "description": "The operation to update protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + }, + { + "name": "updateInput", + "in": "body", + "description": "Mapping update input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateProtectionContainerMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Update.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}/remove": { + "post": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Remove protection container mapping.", + "description": "The operation to delete or remove a protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Delete", + "consumes": [ "application/json" ], "produces": [ @@ -3574,6 +4389,74 @@ } } }, + "put": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Adds a recovery services provider.", + "description": "The operation to add a recovery services provider.", + "operationId": "ReplicationRecoveryServicesProviders_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name.", + "required": true, + "type": "string" + }, + { + "name": "addProviderInput", + "in": "body", + "description": "Add provider input.", + "required": true, + "schema": { + "$ref": "#/definitions/AddRecoveryServicesProviderInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProvider" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Adds a recovery services provider.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_Create.json" + } + } + }, "delete": { "tags": [ "ReplicationRecoveryServicesProviders" @@ -4710,6 +5593,63 @@ } } }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationMigrationItems": { + "get": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Gets the list of migration items in the vault.", + "operationId": "ReplicationMigrationItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "skipToken", + "in": "query", + "description": "The pagination token.", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/MigrationItemsQueryParameter", + "x-ms-examples": { + "Gets the list of migration items in the vault.": { + "$ref": "./examples/ReplicationMigrationItems_List.json" + } + } + } + }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworkMappings": { "get": { "tags": [ @@ -6924,6 +7864,42 @@ } } }, + "AddRecoveryServicesProviderInput": { + "description": "Input required to add a provider.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/AddRecoveryServicesProviderInputProperties", + "description": "The properties of an add provider request." + } + } + }, + "AddRecoveryServicesProviderInputProperties": { + "description": "The properties of an add provider request.", + "required": [ + "machineName", + "authenticationIdentityInput", + "resourceAccessIdentityInput" + ], + "type": "object", + "properties": { + "machineName": { + "description": "The name of the machine where the provider is getting added.", + "type": "string" + }, + "authenticationIdentityInput": { + "$ref": "#/definitions/IdentityProviderInput", + "description": "The identity provider input for DRA authentication." + }, + "resourceAccessIdentityInput": { + "$ref": "#/definitions/IdentityProviderInput", + "description": "The identity provider input for resource access." + } + } + }, "AddVCenterRequest": { "description": "Input required to add vCenter.", "type": "object", @@ -7706,11 +8682,11 @@ "type": "object", "properties": { "secretIdentifier": { - "description": "The secret url / identifier.", + "description": "The secret url / identifier.", "type": "string" }, "keyVaultResourceArmId": { - "description": "The KeyVault resource ARM id for secret.", + "description": "The KeyVault resource ARM id for secret.", "type": "string" } } @@ -7749,7 +8725,52 @@ "description": "The description. The localized friendly description for the operation, as it should be shown to the user. It should be thorough, yet concise – it will be used in tool tips and detailed views. Prescriptive guidance for namespaces: Read any 'display.provider' resource Create or Update any 'display.provider' resource Delete any 'display.provider' resource Perform any other action on any 'display.provider' resource Prescriptive guidance for namespaces: Read any 'display.resource' Create or Update any 'display.resource' Delete any 'display.resource' 'ActionName' any 'display.resources'", "type": "string" } - } + } + }, + "EnableMigrationInput": { + "description": "Enable migration input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/EnableMigrationInputProperties", + "description": "Enable migration input properties." + } + } + }, + "EnableMigrationInputProperties": { + "description": "Enable migration input properties.", + "required": [ + "policyId", + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "policyId": { + "description": "The policy Id.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/EnableMigrationProviderSpecificInput", + "description": "The provider specific details." + } + } + }, + "EnableMigrationProviderSpecificInput": { + "description": "Enable migration provider specific input.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" }, "EnableProtectionInput": { "description": "Enable protection input.", @@ -9398,21 +10419,10 @@ }, "x-ms-discriminator-value": "HyperVVirtualMachine" }, - "IdentityInformation": { - "description": "Identity details.", + "IdentityProviderDetails": { + "description": "Identity provider details.", "type": "object", "properties": { - "identityProviderType": { - "description": "The identity provider type. Value is the ToString() of a IdentityProviderType value.", - "enum": [ - "RecoveryServicesActiveDirectory" - ], - "type": "string", - "x-ms-enum": { - "name": "IdentityProviderType", - "modelAsString": true - } - }, "tenantId": { "description": "The tenant Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", "type": "string" @@ -9432,9 +10442,38 @@ "aadAuthority": { "description": "The base authority for Azure Active Directory authentication.", "type": "string" + } + } + }, + "IdentityProviderInput": { + "description": "Identity provider input.", + "required": [ + "tenantId", + "applicationId", + "objectId", + "audience", + "aadAuthority" + ], + "type": "object", + "properties": { + "tenantId": { + "description": "The tenant Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "applicationId": { + "description": "The application/client Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "objectId": { + "description": "The object Id of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "audience": { + "description": "The intended Audience of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" }, - "certificateThumbprint": { - "description": "The certificate thumbprint. Applicable only if IdentityProviderType is RecoveryServicesActiveDirectory.", + "aadAuthority": { + "description": "The base authority for Azure Active Directory authentication.", "type": "string" } } @@ -11065,11 +12104,11 @@ }, "affectedObjectTypes": { "description": "The type of objects.", - "type": "string" + "type": "string" }, "jobStatus": { "description": "The states of the job to be filtered can be in.", - "type": "string" + "type": "string" } } }, @@ -11122,11 +12161,11 @@ "type": "object", "properties": { "keyIdentifier": { - "description": "The key url / identifier.", + "description": "The key url / identifier.", "type": "string" }, "keyVaultResourceArmId": { - "description": "The KeyVault resource ARM id for key.", + "description": "The KeyVault resource ARM id for key.", "type": "string" } } @@ -11303,6 +12342,245 @@ } } }, + "MigrateInput": { + "description": "Input for migrate.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/MigrateInputProperties", + "description": "Migrate input properties." + } + } + }, + "MigrateInputProperties": { + "description": "Migrate input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/MigrateProviderSpecificInput", + "description": "The provider specific details." + } + } + }, + "MigrateProviderSpecificInput": { + "description": "Migrate provider specific input.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "MigrationItem": { + "description": "Migration item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MigrationItemProperties", + "description": "The migration item properties." + } + } + }, + "MigrationItemCollection": { + "description": "Migration item collection.", + "type": "object", + "properties": { + "value": { + "description": "The list of migration items.", + "type": "array", + "items": { + "$ref": "#/definitions/MigrationItem" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "MigrationItemProperties": { + "description": "Migration item properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "policyId": { + "description": "The ARM Id of policy governing this item.", + "type": "string" + }, + "policyFriendlyName": { + "description": "The name of policy governing this item.", + "type": "string" + }, + "recoveryServicesProviderId": { + "description": "The recovery services provider ARM Id.", + "type": "string" + }, + "migrationState": { + "description": "The migration status.", + "type": "string" + }, + "migrationStateDescription": { + "description": "The migration state description.", + "type": "string" + }, + "lastSuccessfulMigrateTime": { + "format": "date-time", + "description": "The last successful migrate time.", + "type": "string" + }, + "lastSuccessfulTestMigrateTime": { + "format": "date-time", + "description": "The last successful test migrate time.", + "type": "string" + }, + "testMigrateState": { + "description": "The test migrate state.", + "type": "string" + }, + "testMigrateStateDescription": { + "description": "The test migrate state description.", + "type": "string" + }, + "health": { + "description": "The consolidated health.", + "type": "string" + }, + "healthErrors": { + "description": "The list of health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "allowedOperations": { + "description": "The allowed operations on the migration item.", + "type": "array", + "items": { + "enum": [ + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup", + "Migrate", + "CompleteMigration" + ], + "type": "string", + "x-ms-enum": { + "name": "MigrationItemOperation", + "modelAsString": true + } + } + }, + "currentScenario": { + "$ref": "#/definitions/CurrentScenarioDetails", + "description": "The current scenario." + }, + "providerSpecificDetails": { + "$ref": "#/definitions/MigrationProviderSpecificSettings", + "description": "The migration provider custom settings." + } + } + }, + "MigrationItemsQueryParameter": { + "description": "Query parameter to enumerate migration items.", + "type": "object", + "properties": { + "sourceFabricName": { + "description": "The source fabric name filter.", + "type": "string" + }, + "instanceType": { + "description": "The replication provider type.", + "type": "string" + } + } + }, + "MigrationProviderSpecificSettings": { + "description": "Migration provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "MigrationRecoveryPoint": { + "description": "Recovery point for a migration item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MigrationRecoveryPointProperties", + "description": "Recovery point properties." + } + } + }, + "MigrationRecoveryPointCollection": { + "description": "Collection of migration recovery points.", + "type": "object", + "properties": { + "value": { + "description": "The migration recovery point details.", + "type": "array", + "items": { + "$ref": "#/definitions/MigrationRecoveryPoint" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "MigrationRecoveryPointProperties": { + "description": "Migration item recovery point properties.", + "type": "object", + "properties": { + "recoveryPointTime": { + "format": "date-time", + "description": "The recovery point time.", + "type": "string" + }, + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "NotSpecified", + "ApplicationConsistent", + "CrashConsistent" + ], + "type": "string", + "x-ms-enum": { + "name": "MigrationRecoveryPointType", + "modelAsString": true + } + } + } + }, "MobilityServiceUpdate": { "description": "The Mobility Service update details.", "type": "object", @@ -13068,9 +14346,13 @@ "description": "The DRA Id.", "type": "string" }, - "identityDetails": { - "$ref": "#/definitions/IdentityInformation", - "description": "The identity details." + "authenticationIdentityDetails": { + "$ref": "#/definitions/IdentityProviderDetails", + "description": "The authentication identity details." + }, + "resourceAccessIdentityDetails": { + "$ref": "#/definitions/IdentityProviderDetails", + "description": "The resource access identity details." }, "providerVersionDetails": { "$ref": "#/definitions/VersionDetails", @@ -13925,16 +15207,79 @@ "networkType": { "description": "The test network type (see TestFailoverInput enum for possible values).", "type": "string" - }, - "protectedItemDetails": { - "description": "The test VM details.", - "type": "array", - "items": { - "$ref": "#/definitions/FailoverReplicationProtectedItemDetails" - } + }, + "protectedItemDetails": { + "description": "The test VM details.", + "type": "array", + "items": { + "$ref": "#/definitions/FailoverReplicationProtectedItemDetails" + } + } + }, + "x-ms-discriminator-value": "TestFailoverJobDetails" + }, + "TestMigrateCleanupInput": { + "description": "Input for test migrate cleanup.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/TestMigrateCleanupInputProperties", + "description": "Test migrate cleanup input properties." + } + } + }, + "TestMigrateCleanupInputProperties": { + "description": "Test migrate cleanup input properties.", + "type": "object", + "properties": { + "comments": { + "description": "Test migrate cleanup comments.", + "type": "string" + } + } + }, + "TestMigrateInput": { + "description": "Input for test migrate.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/TestMigrateInputProperties", + "description": "Test migrate input properties." + } + } + }, + "TestMigrateInputProperties": { + "description": "Test migrate input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/TestMigrateProviderSpecificInput", + "description": "The provider specific details." + } + } + }, + "TestMigrateProviderSpecificInput": { + "description": "Test migrate provider specific input.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" } }, - "x-ms-discriminator-value": "TestFailoverJobDetails" + "discriminator": "instanceType" }, "UnplannedFailoverInput": { "description": "Input definition for planned failover.", @@ -13964,6 +15309,40 @@ } } }, + "UpdateMigrationItemInput": { + "description": "Update migration item input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateMigrationItemInputProperties", + "description": "Update migration item input properties." + } + } + }, + "UpdateMigrationItemInputProperties": { + "description": "Update migration item input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/UpdateMigrationItemProviderSpecificInput", + "description": "The provider specific input to update migration item." + } + } + }, + "UpdateMigrationItemProviderSpecificInput": { + "description": "Update migration item provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, "UpdateMobilityServiceRequest": { "description": "Request to update the mobility service on a protected item.", "type": "object", @@ -14511,118 +15890,486 @@ } } }, - "x-ms-discriminator-value": "VmmVirtualMachine" + "x-ms-discriminator-value": "VmmVirtualMachine" + }, + "VMNicDetails": { + "description": "Hyper V VM network details.", + "type": "object", + "properties": { + "nicId": { + "description": "The nic Id.", + "type": "string" + }, + "replicaNicId": { + "description": "The replica nic Id.", + "type": "string" + }, + "sourceNicArmId": { + "description": "The source nic ARM Id.", + "type": "string" + }, + "vMSubnetName": { + "description": "VM subnet name.", + "type": "string" + }, + "vMNetworkName": { + "description": "VM network name.", + "type": "string" + }, + "recoveryVMNetworkId": { + "description": "Recovery VM network Id.", + "type": "string" + }, + "recoveryVMSubnetName": { + "description": "Recovery VM subnet name.", + "type": "string" + }, + "ipAddressType": { + "description": "Ip address type.", + "type": "string" + }, + "primaryNicStaticIPAddress": { + "description": "Primary nic static IP address.", + "type": "string" + }, + "replicaNicStaticIPAddress": { + "description": "Replica nic static IP address.", + "type": "string" + }, + "selectionType": { + "description": "Selection type for failover.", + "type": "string" + }, + "recoveryNicIpAddressType": { + "description": "IP allocation type for recovery VM.", + "type": "string" + }, + "enableAcceleratedNetworkingOnRecovery": { + "description": "A value indicating whether the NIC has accerated networking enabled.", + "type": "boolean" + } + } + }, + "VMNicInputDetails": { + "description": "Hyper V VM network input details.", + "type": "object", + "properties": { + "nicId": { + "description": "The nic Id.", + "type": "string" + }, + "recoveryVMSubnetName": { + "description": "Recovery VM subnet name.", + "type": "string" + }, + "replicaNicStaticIPAddress": { + "description": "Replica nic static IP address.", + "type": "string" + }, + "selectionType": { + "description": "Selection type for failover.", + "type": "string" + }, + "enableAcceleratedNetworkingOnRecovery": { + "description": "Whether the NIC has accerated networking enabled.", + "type": "boolean" + } + } + }, + "VmNicUpdatesTaskDetails": { + "description": "This class represents the vm NicUpdates task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "vmId": { + "description": "Virtual machine Id.", + "type": "string" + }, + "nicId": { + "description": "Nic Id.", + "type": "string" + }, + "name": { + "description": "Name of the Nic.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VmNicUpdatesTaskDetails" + }, + "VMwareCbtContainerCreationInput": { + "description": "VMwareCbt container creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "6c7da455-506f-43ff-a16a-8eb101aebb70" + }, + "VMwareCbtContainerMappingInput": { + "description": "VMwareCbt container mapping input.", + "required": [ + "keyVaultId", + "keyVaultUri", + "storageAccountId", + "storageAccountSasSecretName", + "serviceBusConnectionStringSecretName", + "targetLocation" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerMappingInput" + } + ], + "properties": { + "keyVaultId": { + "description": "The target key vault ARM Id.", + "type": "string" + }, + "keyVaultUri": { + "description": "The target key vault URL.", + "type": "string" + }, + "storageAccountId": { + "description": "The storage account ARM Id.", + "type": "string" + }, + "storageAccountSasSecretName": { + "description": "The secret name of the storage account.", + "type": "string" + }, + "serviceBusConnectionStringSecretName": { + "description": "The secret name of the service bus connection string.", + "type": "string" + }, + "targetLocation": { + "description": "The target location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtDiskInput": { + "description": "VMwareCbt disk input.", + "required": [ + "diskId", + "isOSDisk", + "logStorageAccountId", + "logStorageAccountSasSecretName" + ], + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string" + }, + "logStorageAccountSasSecretName": { + "description": "The key vault secret name of the log storage account.", + "type": "string" + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + } + } + }, + "VMwareCbtEnableMigrationInput": { + "description": "VMwareCbt specific enable migration input.", + "required": [ + "vmwareMachineId", + "disksToInclude", + "dataMoverRunAsAccountId", + "snapshotRunAsAccountId", + "targetResourceGroupId", + "targetNetworkId", + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableMigrationProviderSpecificInput" + } + ], + "properties": { + "vmwareMachineId": { + "description": "The ARM Id of the VM discovered in VMware.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtDiskInput" + } + }, + "licenseType": { + "description": "License type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "dataMoverRunAsAccountId": { + "description": "The data mover runas account Id.", + "type": "string" + }, + "snapshotRunAsAccountId": { + "description": "The snapshot runas account Id.", + "type": "string" + }, + "targetVmName": { + "description": "The target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetResourceGroupId": { + "description": "The target resource group ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The target network ARM Id.", + "type": "string" + }, + "targetSubnetName": { + "description": "The target subnet name.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" }, - "VMNicDetails": { - "description": "Hyper V VM network details.", + "VMwareCbtMigrateInput": { + "description": "VMwareCbt specific migrate input.", + "required": [ + "performShutdown", + "instanceType" + ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MigrateProviderSpecificInput" + } + ], "properties": { - "nicId": { - "description": "The nic Id.", + "performShutdown": { + "description": "A value indicating whether VM is to be shutdown.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtMigrationDetails": { + "description": "VMwareCbt provider specific settings", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MigrationProviderSpecificSettings" + } + ], + "properties": { + "vmwareMachineId": { + "description": "The ARM Id of the VM discovered in VMware.", "type": "string" }, - "replicaNicId": { - "description": "The replica nic Id.", + "osType": { + "description": "The type of the OS on the VM.", "type": "string" }, - "sourceNicArmId": { - "description": "The source nic ARM Id.", + "licenseType": { + "description": "License Type of the VM to be used.", "type": "string" }, - "vMSubnetName": { - "description": "VM subnet name.", + "dataMoverRunAsAccountId": { + "description": "The data mover runas account Id.", "type": "string" }, - "vMNetworkName": { - "description": "VM network name.", + "snapshotRunAsAccountId": { + "description": "The snapshot runas account Id.", "type": "string" }, - "recoveryVMNetworkId": { - "description": "Recovery VM network Id.", + "targetVmName": { + "description": "Target VM name.", "type": "string" }, - "recoveryVMSubnetName": { - "description": "Recovery VM subnet name.", + "targetVmSize": { + "description": "The target VM size.", "type": "string" }, - "ipAddressType": { - "description": "Ip address type.", + "targetLocation": { + "description": "The target location.", "type": "string" }, - "primaryNicStaticIPAddress": { - "description": "Primary nic static IP address.", + "targetResourceGroupId": { + "description": "The target resource group Id.", "type": "string" }, - "replicaNicStaticIPAddress": { - "description": "Replica nic static IP address.", + "targetAvailabilitySetId": { + "description": "The target availability set Id.", "type": "string" }, - "selectionType": { - "description": "Selection type for failover.", + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", "type": "string" }, - "recoveryNicIpAddressType": { - "description": "IP allocation type for recovery VM.", + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtProtectedDiskDetails" + } + }, + "targetNetworkId": { + "description": "The target network Id.", "type": "string" }, - "enableAcceleratedNetworkingOnRecovery": { - "description": "A value indicating whether the NIC has accerated networking enabled.", - "type": "boolean" + "vmNics": { + "description": "The network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtNicDetails" + } + }, + "migrationRecoveryPointId": { + "description": "The recovery point Id to which the VM was migrated.", + "type": "string" + }, + "lastRecoveryPointReceived": { + "format": "date-time", + "description": "The last recovery point received time.", + "type": "string" } - } + }, + "x-ms-discriminator-value": "VMwareCbt" }, - "VMNicInputDetails": { - "description": "Hyper V VM network input details.", + "VMwareCbtNicDetails": { + "description": "VMwareCbt NIC details.", "type": "object", "properties": { "nicId": { - "description": "The nic Id.", + "description": "The NIC Id.", "type": "string" }, - "recoveryVMSubnetName": { - "description": "Recovery VM subnet name.", + "isPrimaryNic": { + "description": "A value indicating whether this is the primary NIC.", "type": "string" }, - "replicaNicStaticIPAddress": { - "description": "Replica nic static IP address.", + "sourceIPAddress": { + "description": "The source IP address.", "type": "string" }, - "selectionType": { - "description": "Selection type for failover.", + "sourceIPAddressType": { + "description": "The source IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + }, + "sourceNetworkId": { + "description": "Source network Id.", "type": "string" }, - "enableAcceleratedNetworkingOnRecovery": { - "description": "Whether the NIC has accerated networking enabled.", - "type": "boolean" + "targetIPAddress": { + "description": "The target IP address.", + "type": "string" + }, + "targetIPAddressType": { + "description": "The target IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + }, + "targetSubnetName": { + "description": "Target subnet name.", + "type": "string" + }, + "isSelectedForMigration": { + "description": "A value indicating whether this NIC is selected for migration.", + "type": "string" } } }, - "VmNicUpdatesTaskDetails": { - "description": "This class represents the vm NicUpdates task details.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/TaskTypeDetails" - } + "VMwareCbtNicInput": { + "description": "VMwareCbt NIC input.", + "required": [ + "nicId", + "isPrimaryNic" ], + "type": "object", "properties": { - "vmId": { - "description": "Virtual machine Id.", + "nicId": { + "description": "The NIC Id.", "type": "string" }, - "nicId": { - "description": "Nic Id.", + "isPrimaryNic": { + "description": "A value indicating whether this is the primary NIC.", "type": "string" }, - "name": { - "description": "Name of the Nic.", + "targetSubnetName": { + "description": "Target subnet name.", + "type": "string" + }, + "targetStaticIPAddress": { + "description": "The static IP address.", + "type": "string" + }, + "isSelectedForMigration": { + "description": "A value indicating whether this NIC is selected for migration.", "type": "string" } - }, - "x-ms-discriminator-value": "VmNicUpdatesTaskDetails" + } }, "VMwareCbtPolicyCreationInput": { - "description": "VMware Cbt Policy creation input.", + "description": "VMware Cbt policy creation input.", "type": "object", "allOf": [ { @@ -14630,7 +16377,7 @@ } ], "properties": { - "recoveryPointHistory": { + "recoveryPointHistoryInMinutes": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" @@ -14657,12 +16404,7 @@ } ], "properties": { - "recoveryPointThresholdInMinutes": { - "format": "int32", - "description": "The recovery point threshold in minutes.", - "type": "integer" - }, - "recoveryPointHistory": { + "recoveryPointHistoryInMinutes": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" @@ -14680,6 +16422,170 @@ }, "x-ms-discriminator-value": "VMwareCbt" }, + "VMwareCbtProtectedDiskDetails": { + "description": "VMwareCbt protected disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk id.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "diskPath": { + "description": "The disk path.", + "type": "string" + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string" + }, + "capacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer" + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string" + }, + "logStorageAccountSasSecretName": { + "description": "The key vault secret name of the log storage account.", + "type": "string" + }, + "seedManagedDiskId": { + "description": "The ARM Id of the seed managed disk.", + "type": "string" + }, + "targetManagedDiskId": { + "description": "The ARM Id of the target managed disk.", + "type": "string" + }, + "diskType": { + "description": "The disk type.", + "type": "string" + } + } + }, + "VMwareCbtProtectionContainerMappingDetails": { + "description": "VMwareCbt provider specific container mapping details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainerMappingProviderSpecificDetails" + } + ], + "properties": { + "keyVaultId": { + "description": "The target key vault ARM Id.", + "type": "string" + }, + "keyVaultUri": { + "description": "The target key vault URI.", + "type": "string" + }, + "storageAccountId": { + "description": "The storage account ARM Id.", + "type": "string" + }, + "storageAccountSasSecretName": { + "description": "The secret name of the storage account.", + "type": "string" + }, + "serviceBusConnectionStringSecretName": { + "description": "The secret name of the service bus connection string.", + "type": "string" + }, + "targetLocation": { + "description": "The target location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtTestMigrateInput": { + "description": "VMwareCbt specific test migrate input.", + "required": [ + "recoveryPointId", + "networkId", + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestMigrateProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point Id.", + "type": "string" + }, + "networkId": { + "description": "The test network Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtUpdateMigrationItemInput": { + "description": "VMwareCbt specific update migration item input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateMigrationItemProviderSpecificInput" + } + ], + "properties": { + "targetVmName": { + "description": "The target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetResourceGroupId": { + "description": "The target resource group ARM Id.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The target network ARM Id.", + "type": "string" + }, + "vmNics": { + "description": "The list of NIC details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtNicInput" + } + }, + "licenseType": { + "description": "The license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, "VMwareDetails": { "description": "Store the fabric details specific to the VMware fabric.", "type": "object", @@ -14838,7 +16744,10 @@ "x-ms-discriminator-value": "VMware" }, "VMwareV2FabricCreationInput": { - "description": "Fabric provider specific settings.", + "description": "VMwareV2 fabric provider specific settings.", + "required": [ + "vmwareSiteId" + ], "type": "object", "allOf": [ { @@ -14846,19 +16755,19 @@ } ], "properties": { - "keyVaultUrl": { - "description": "The Key Vault URL.", + "vmwareSiteId": { + "description": "The ARM Id of the VMware site.", "type": "string" }, - "keyVaultResourceArmId": { - "description": "The Key Vault ARM Id.", + "migrationSolutionId": { + "description": "The ARM Id of the migration solution.", "type": "string" } }, "x-ms-discriminator-value": "VMwareV2" }, "VMwareV2FabricSpecificDetails": { - "description": "VMwareV2 fabric Specific Details.", + "description": "VMwareV2 fabric specific details.", "type": "object", "allOf": [ { @@ -14866,20 +16775,16 @@ } ], "properties": { - "srsServiceEndpoint": { - "description": "The endpoint for making requests to the SRS Service.", - "type": "string" - }, - "rcmServiceEndpoint": { - "description": "The endpoint for making requests to the RCM Service.", + "vmwareSiteId": { + "description": "The ARM Id of the VMware site.", "type": "string" }, - "keyVaultUrl": { - "description": "The Key Vault URL.", + "migrationSolutionId": { + "description": "The Migration solution ARM Id.", "type": "string" }, - "keyVaultResourceArmId": { - "description": "The Key Vault ARM Id.", + "srsServiceEndpoint": { + "description": "The SRS service endpoint.", "type": "string" } }, @@ -14923,7 +16828,7 @@ "type": "string" }, "discoveryType": { - "description": "A value inidicating the discovery type of the machine. Value can be vCenter or physical.", + "description": "A value indicating the discovery type of the machine. Value can be vCenter or physical.", "type": "string" }, "diskDetails": { @@ -14994,4 +16899,4 @@ ] } ] -} +} \ No newline at end of file From b620177115ce4694c2206740d0a7ac6c07b40015 Mon Sep 17 00:00:00 2001 From: lshai06 Date: Wed, 21 Nov 2018 17:15:01 +0530 Subject: [PATCH 2/2] Taken ARM review feedback --- .../ReplicationMigrationItems_Complete.json | 49 --- .../ReplicationMigrationItems_Create.json | 9 +- .../ReplicationMigrationItems_Get.json | 9 +- .../ReplicationMigrationItems_List.json | 9 +- ...ListByReplicationProtectionContainers.json | 9 +- .../ReplicationMigrationItems_Migrate.json | 9 +- .../ReplicationMigrationItems_Remove.json | 17 - ...ReplicationMigrationItems_TestMigrate.json | 9 +- ...tionMigrationItems_TestMigrateCleanup.json | 9 +- .../ReplicationMigrationItems_Update.json | 9 +- .../stable/2018-01-10/service.json | 353 ++++++++---------- 11 files changed, 185 insertions(+), 306 deletions(-) delete mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Complete.json delete mode 100644 specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Remove.json diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Complete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Complete.json deleted file mode 100644 index 54403ca0054e..000000000000 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Complete.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "parameters": { - "api-version": "2018-01-10", - "migrationItemName": "virtualmachine1", - "protectionContainerName": "vmwareContainer1", - "fabricName": "vmwarefabric1", - "resourceName": "migrationvault", - "resourceGroupName": "resourcegroup1", - "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" - }, - "responses": { - "200": { - "body": { - "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", - "name": "virtualmachine1", - "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", - "properties": { - "friendlyName": "vm-0520-2", - "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", - "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", - "migrationState": "Replicating", - "migrationStateDescription": "Ready to migrate", - "testMigrateState": "None", - "testMigrateStateDescription": "None", - "policyFriendlyName": "vmwarepolicy1", - "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", - "allowedOperations": [ - "Migrate", - "CompleteMigration", - "DisableMigration", - "TestMigrate", - "TestMigrateCleanup" - ], - "currentScenario": { - "scenarioName": "None", - "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", - "startTime": "2017-04-26T06:37:50.8082715Z" - }, - "providerSpecificDetails": { - "instanceType": "VMwareCbt" - }, - "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" - } - } - }, - "202": { - } - } -} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json index 2d50afb69333..70c5deab9141 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json @@ -23,9 +23,7 @@ "name": "virtualmachine1", "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", "properties": { - "friendlyName": "vm-0520-2", - "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", - "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "machineName": "vm-0520-2", "migrationState": "Replicating", "migrationStateDescription": "Ready to migrate", "testMigrateState": "None", @@ -34,13 +32,12 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "allowedOperations": [ "Migrate", - "CompleteMigration", "DisableMigration", "TestMigrate", "TestMigrateCleanup" ], - "currentScenario": { - "scenarioName": "None", + "currentJob": { + "jobName": "None", "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", "startTime": "2017-04-26T06:37:50.8082715Z" }, diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Get.json index b5dbd7297ed2..a33393f60f51 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Get.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Get.json @@ -15,9 +15,7 @@ "name": "virtualmachine1", "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", "properties": { - "friendlyName": "vm-0520-2", - "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", - "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "machineName": "vm-0520-2", "migrationState": "Replicating", "migrationStateDescription": "Ready to migrate", "testMigrateState": "None", @@ -26,13 +24,12 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "allowedOperations": [ "Migrate", - "CompleteMigration", "DisableMigration", "TestMigrate", "TestMigrateCleanup" ], - "currentScenario": { - "scenarioName": "None", + "currentJob": { + "jobName": "None", "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", "startTime": "2017-04-26T06:37:50.8082715Z" }, diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_List.json index 9bccdf05f19c..9db384f8dde0 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_List.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_List.json @@ -14,9 +14,7 @@ "name": "virtualmachine1", "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", "properties": { - "friendlyName": "vm-0520-2", - "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", - "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "machineName": "vm-0520-2", "migrationState": "Replicating", "migrationStateDescription": "Ready to migrate", "testMigrateState": "None", @@ -25,13 +23,12 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "allowedOperations": [ "Migrate", - "CompleteMigration", "DisableMigration", "TestMigrate", "TestMigrateCleanup" ], - "currentScenario": { - "scenarioName": "None", + "currentJob": { + "jobName": "None", "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", "startTime": "2017-04-26T06:37:50.8082715Z" }, diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json index 91327e98a92b..5628feeb165b 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json @@ -16,9 +16,7 @@ "name": "virtualmachine1", "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", "properties": { - "friendlyName": "vm-0520-2", - "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", - "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "machineName": "vm-0520-2", "migrationState": "Replicating", "migrationStateDescription": "Ready to migrate", "testMigrateState": "None", @@ -27,13 +25,12 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "allowedOperations": [ "Migrate", - "CompleteMigration", "DisableMigration", "TestMigrate", "TestMigrateCleanup" ], - "currentScenario": { - "scenarioName": "None", + "currentJob": { + "jobName": "None", "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", "startTime": "2017-04-26T06:37:50.8082715Z" }, diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Migrate.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Migrate.json index e7c7e8bf5717..c2822dd85a3a 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Migrate.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Migrate.json @@ -22,9 +22,7 @@ "name": "virtualmachine1", "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", "properties": { - "friendlyName": "vm-0520-2", - "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", - "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "machineName": "vm-0520-2", "migrationState": "Replicating", "migrationStateDescription": "Ready to migrate", "testMigrateState": "None", @@ -33,13 +31,12 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "allowedOperations": [ "Migrate", - "CompleteMigration", "DisableMigration", "TestMigrate", "TestMigrateCleanup" ], - "currentScenario": { - "scenarioName": "None", + "currentJob": { + "jobName": "None", "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", "startTime": "2017-04-26T06:37:50.8082715Z" }, diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Remove.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Remove.json deleted file mode 100644 index 570f5b20e3a6..000000000000 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Remove.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "parameters": { - "api-version": "2018-01-10", - "migrationItemName": "virtualmachine1", - "protectionContainerName": "vmwareContainer1", - "fabricName": "vmwarefabric1", - "resourceName": "migrationvault", - "resourceGroupName": "resourcegroup1", - "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" - }, - "responses": { - "202": { - }, - "204": { - } - } -} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrate.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrate.json index 3ee46311a789..4f8c750843ea 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrate.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrate.json @@ -22,9 +22,7 @@ "name": "virtualmachine1", "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", "properties": { - "friendlyName": "vm-0520-2", - "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", - "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "machineName": "vm-0520-2", "migrationState": "Replicating", "migrationStateDescription": "Ready to migrate", "testMigrateState": "None", @@ -33,13 +31,12 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "allowedOperations": [ "Migrate", - "CompleteMigration", "DisableMigration", "TestMigrate", "TestMigrateCleanup" ], - "currentScenario": { - "scenarioName": "None", + "currentJob": { + "jobName": "None", "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", "startTime": "2017-04-26T06:37:50.8082715Z" }, diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json index 65b76dd4199a..c361c8060fd3 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json @@ -20,9 +20,7 @@ "name": "virtualmachine1", "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", "properties": { - "friendlyName": "vm-0520-2", - "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", - "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "machineName": "vm-0520-2", "migrationState": "Replicating", "migrationStateDescription": "Ready to migrate", "testMigrateState": "None", @@ -31,13 +29,12 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "allowedOperations": [ "Migrate", - "CompleteMigration", "DisableMigration", "TestMigrate", "TestMigrateCleanup" ], - "currentScenario": { - "scenarioName": "None", + "currentJob": { + "jobName": "None", "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", "startTime": "2017-04-26T06:37:50.8082715Z" }, diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Update.json index 0579eba0c26b..404d0e0f77cc 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Update.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Update.json @@ -22,9 +22,7 @@ "name": "virtualmachine1", "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", "properties": { - "friendlyName": "vm-0520-2", - "lastSuccessfulMigrateTime": "2017-04-26T06:37:50.8082715Z", - "lastSuccessfulTestMigrateTime": "2017-04-26T06:37:50.8082715Z", + "machineName": "vm-0520-2", "migrationState": "Replicating", "migrationStateDescription": "Ready to migrate", "testMigrateState": "None", @@ -33,13 +31,12 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "allowedOperations": [ "Migrate", - "CompleteMigration", "DisableMigration", "TestMigrate", "TestMigrateCleanup" ], - "currentScenario": { - "scenarioName": "None", + "currentJob": { + "jobName": "None", "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", "startTime": "2017-04-26T06:37:50.8082715Z" }, diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json index 7a7e02c9344c..3445404c5856 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json @@ -1801,8 +1801,8 @@ "tags": [ "ReplicationMigrationItems" ], - "summary": "Purges migration.", - "description": "The operation to purge an ASR migration item. This operation will force delete the migration item. Use the remove operation on migration item to perform a clean disable migration for the item.", + "summary": "Delete the migration item.", + "description": "The operation to delete an ASR migration item.", "operationId": "ReplicationMigrationItems_Delete", "produces": [ "application/json" @@ -1840,6 +1840,13 @@ "description": "Migration item name.", "required": true, "type": "string" + }, + { + "name": "deleteOption", + "in": "query", + "description": "The delete option.", + "required": false, + "type": "string" } ], "responses": { @@ -1852,7 +1859,7 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Purges migration.": { + "Delete the migration item.": { "$ref": "./examples/ReplicationMigrationItems_Delete.json" } } @@ -1933,71 +1940,6 @@ } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/complete": { - "post": { - "tags": [ - "ReplicationMigrationItems" - ], - "summary": "Complete migration.", - "description": "The operation to initiate complete migration of the item.", - "operationId": "ReplicationMigrationItems_Complete", - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersion" - }, - { - "$ref": "#/parameters/ResourceName" - }, - { - "$ref": "#/parameters/ResourceGroupName" - }, - { - "$ref": "#/parameters/SubscriptionId" - }, - { - "name": "fabricName", - "in": "path", - "description": "Fabric name.", - "required": true, - "type": "string" - }, - { - "name": "protectionContainerName", - "in": "path", - "description": "Protection container name.", - "required": true, - "type": "string" - }, - { - "name": "migrationItemName", - "in": "path", - "description": "Migration item name.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/MigrationItem" - } - }, - "202": { - "description": "Accepted" - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Complete migration.": { - "$ref": "./examples/ReplicationMigrationItems_Complete.json" - } - } - } - }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate": { "post": { "tags": [ @@ -2205,68 +2147,6 @@ } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/remove": { - "post": { - "tags": [ - "ReplicationMigrationItems" - ], - "summary": "Disables migration.", - "description": "The operation to disable an ASR migration item.", - "operationId": "ReplicationMigrationItems_Remove", - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersion" - }, - { - "$ref": "#/parameters/ResourceName" - }, - { - "$ref": "#/parameters/ResourceGroupName" - }, - { - "$ref": "#/parameters/SubscriptionId" - }, - { - "name": "fabricName", - "in": "path", - "description": "Fabric name.", - "required": true, - "type": "string" - }, - { - "name": "protectionContainerName", - "in": "path", - "description": "Protection container name.", - "required": true, - "type": "string" - }, - { - "name": "migrationItemName", - "in": "path", - "description": "Migration item name.", - "required": true, - "type": "string" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "NoContent" - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Disables migration.": { - "$ref": "./examples/ReplicationMigrationItems_Remove.json" - } - } - } - }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate": { "post": { "tags": [ @@ -8524,6 +8404,25 @@ } } }, + "CurrentJobDetails": { + "description": "Current job details of the migraton item.", + "type": "object", + "properties": { + "jobName": { + "description": "The job name.", + "type": "string" + }, + "jobId": { + "description": "The ARM Id of the job being executed.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time of the job.", + "type": "string" + } + } + }, "CurrentScenarioDetails": { "description": "Current scenario details of the protected entity.", "type": "object", @@ -12418,80 +12317,109 @@ "description": "Migration item properties.", "type": "object", "properties": { - "friendlyName": { - "description": "The name.", - "type": "string" + "machineName": { + "description": "The on-premise virtual machine name.", + "type": "string", + "readOnly": true }, "policyId": { "description": "The ARM Id of policy governing this item.", - "type": "string" + "type": "string", + "readOnly": true }, "policyFriendlyName": { "description": "The name of policy governing this item.", - "type": "string" + "type": "string", + "readOnly": true }, "recoveryServicesProviderId": { "description": "The recovery services provider ARM Id.", - "type": "string" + "type": "string", + "readOnly": true }, "migrationState": { "description": "The migration status.", - "type": "string" + "enum": [ + "None", + "EnableMigrationInProgress", + "EnableMigrationFailed", + "DisableMigrationInProgress", + "DisableMigrationFailed", + "InitialSeedingInProgress", + "InitialSeedingFailed", + "Replicating", + "MigrationInProgress", + "MigrationSucceeded", + "MigrationFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MigrationState", + "modelAsString": true + } }, "migrationStateDescription": { "description": "The migration state description.", - "type": "string" - }, - "lastSuccessfulMigrateTime": { - "format": "date-time", - "description": "The last successful migrate time.", - "type": "string" - }, - "lastSuccessfulTestMigrateTime": { - "format": "date-time", - "description": "The last successful test migrate time.", - "type": "string" + "type": "string", + "readOnly": true }, "testMigrateState": { "description": "The test migrate state.", - "type": "string" + "enum": [ + "None", + "TestMigrationInProgress", + "TestMigrationSucceeded", + "TestMigrationFailed", + "TestMigrationCleanupInProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TestMigrationState", + "modelAsString": true + } }, "testMigrateStateDescription": { "description": "The test migrate state description.", - "type": "string" + "type": "string", + "readOnly": true }, "health": { "description": "The consolidated health.", - "type": "string" + "type": "string", + "readOnly": true }, "healthErrors": { "description": "The list of health errors.", "type": "array", "items": { "$ref": "#/definitions/HealthError" - } + }, + "readOnly": true }, "allowedOperations": { - "description": "The allowed operations on the migration item.", + "description": "The allowed operations on the migration item, based on the current migration state of the item.", "type": "array", "items": { "enum": [ "DisableMigration", "TestMigrate", "TestMigrateCleanup", - "Migrate", - "CompleteMigration" + "Migrate" ], "type": "string", "x-ms-enum": { "name": "MigrationItemOperation", "modelAsString": true } - } + }, + "readOnly": true }, - "currentScenario": { - "$ref": "#/definitions/CurrentScenarioDetails", - "description": "The current scenario." + "currentJob": { + "$ref": "#/definitions/CurrentJobDetails", + "description": "The current job details.", + "readOnly": true }, "providerSpecificDetails": { "$ref": "#/definitions/MigrationProviderSpecificSettings", @@ -12564,7 +12492,8 @@ "recoveryPointTime": { "format": "date-time", "description": "The recovery point time.", - "type": "string" + "type": "string", + "readOnly": true }, "recoveryPointType": { "description": "The recovery point type.", @@ -12574,6 +12503,7 @@ "CrashConsistent" ], "type": "string", + "readOnly": true, "x-ms-enum": { "name": "MigrationRecoveryPointType", "modelAsString": true @@ -16208,11 +16138,13 @@ "properties": { "vmwareMachineId": { "description": "The ARM Id of the VM discovered in VMware.", - "type": "string" + "type": "string", + "readOnly": true }, "osType": { "description": "The type of the OS on the VM.", - "type": "string" + "type": "string", + "readOnly": true }, "licenseType": { "description": "License Type of the VM to be used.", @@ -16220,11 +16152,13 @@ }, "dataMoverRunAsAccountId": { "description": "The data mover runas account Id.", - "type": "string" + "type": "string", + "readOnly": true }, "snapshotRunAsAccountId": { "description": "The snapshot runas account Id.", - "type": "string" + "type": "string", + "readOnly": true }, "targetVmName": { "description": "Target VM name.", @@ -16236,7 +16170,8 @@ }, "targetLocation": { "description": "The target location.", - "type": "string" + "type": "string", + "readOnly": true }, "targetResourceGroupId": { "description": "The target resource group Id.", @@ -16270,12 +16205,14 @@ }, "migrationRecoveryPointId": { "description": "The recovery point Id to which the VM was migrated.", - "type": "string" + "type": "string", + "readOnly": true }, "lastRecoveryPointReceived": { "format": "date-time", "description": "The last recovery point received time.", - "type": "string" + "type": "string", + "readOnly": true } }, "x-ms-discriminator-value": "VMwareCbt" @@ -16286,7 +16223,8 @@ "properties": { "nicId": { "description": "The NIC Id.", - "type": "string" + "type": "string", + "readOnly": true }, "isPrimaryNic": { "description": "A value indicating whether this is the primary NIC.", @@ -16294,7 +16232,8 @@ }, "sourceIPAddress": { "description": "The source IP address.", - "type": "string" + "type": "string", + "readOnly": true }, "sourceIPAddressType": { "description": "The source IP address type.", @@ -16303,6 +16242,7 @@ "Static" ], "type": "string", + "readOnly": true, "x-ms-enum": { "name": "EthernetAddressType", "modelAsString": true @@ -16310,7 +16250,8 @@ }, "sourceNetworkId": { "description": "Source network Id.", - "type": "string" + "type": "string", + "readOnly": true }, "targetIPAddress": { "description": "The target IP address.", @@ -16428,44 +16369,62 @@ "properties": { "diskId": { "description": "The disk id.", - "type": "string" + "type": "string", + "readOnly": true }, "diskName": { "description": "The disk name.", - "type": "string" + "type": "string", + "readOnly": true }, "diskPath": { "description": "The disk path.", - "type": "string" + "type": "string", + "readOnly": true }, "isOSDisk": { "description": "A value indicating whether the disk is the OS disk.", - "type": "string" + "type": "string", + "readOnly": true }, "capacityInBytes": { "format": "int64", "description": "The disk capacity in bytes.", - "type": "integer" + "type": "integer", + "readOnly": true }, "logStorageAccountId": { "description": "The log storage account ARM Id.", - "type": "string" + "type": "string", + "readOnly": true }, "logStorageAccountSasSecretName": { "description": "The key vault secret name of the log storage account.", - "type": "string" + "type": "string", + "readOnly": true }, "seedManagedDiskId": { "description": "The ARM Id of the seed managed disk.", - "type": "string" + "type": "string", + "readOnly": true }, "targetManagedDiskId": { "description": "The ARM Id of the target managed disk.", - "type": "string" + "type": "string", + "readOnly": true }, "diskType": { "description": "The disk type.", - "type": "string" + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskType", + "modelAsString": true + } } } }, @@ -16480,27 +16439,33 @@ "properties": { "keyVaultId": { "description": "The target key vault ARM Id.", - "type": "string" + "type": "string", + "readOnly": true }, "keyVaultUri": { "description": "The target key vault URI.", - "type": "string" + "type": "string", + "readOnly": true }, "storageAccountId": { "description": "The storage account ARM Id.", - "type": "string" + "type": "string", + "readOnly": true }, "storageAccountSasSecretName": { "description": "The secret name of the storage account.", - "type": "string" + "type": "string", + "readOnly": true }, "serviceBusConnectionStringSecretName": { "description": "The secret name of the service bus connection string.", - "type": "string" + "type": "string", + "readOnly": true }, "targetLocation": { "description": "The target location.", - "type": "string" + "type": "string", + "readOnly": true } }, "x-ms-discriminator-value": "VMwareCbt" @@ -16746,7 +16711,8 @@ "VMwareV2FabricCreationInput": { "description": "VMwareV2 fabric provider specific settings.", "required": [ - "vmwareSiteId" + "vmwareSiteId", + "migrationSolutionId" ], "type": "object", "allOf": [ @@ -16777,15 +16743,18 @@ "properties": { "vmwareSiteId": { "description": "The ARM Id of the VMware site.", - "type": "string" + "type": "string", + "readOnly": true }, "migrationSolutionId": { "description": "The Migration solution ARM Id.", - "type": "string" + "type": "string", + "readOnly": true }, - "srsServiceEndpoint": { - "description": "The SRS service endpoint.", - "type": "string" + "serviceEndpoint": { + "description": "The service endpoint.", + "type": "string", + "readOnly": true } }, "x-ms-discriminator-value": "VMwareV2"