From 18da2aac645e7afee7d6b99ad6090dd888d0c502 Mon Sep 17 00:00:00 2001 From: Anushtha Bageria Date: Sun, 12 Oct 2025 18:13:05 +0530 Subject: [PATCH 1/2] generated private sdk --- .../IReplicationProtectedItemsOperations.cs | 82 +++++ .../A2AAgentReinstallBlockingErrorDetails.cs | 98 ++++++ .../Models/A2AEnableProtectionInput.cs | 12 +- .../Generated/Models/A2AReplicationDetails.cs | 131 ++++++- .../Models/A2ASwitchProtectionInput.cs | 12 +- .../A2AUpdateReplicationProtectedItemInput.cs | 22 +- .../Models/AgentReinstallBlockedReason.cs | 20 ++ .../Models/AgentUpgradeBlockedReason.cs | 1 + .../HyperVReplicaAzureDiskInputDetails.cs | 32 +- ...HyperVReplicaAzureEnableProtectionInput.cs | 12 +- .../HyperVReplicaAzureManagedDiskDetails.cs | 32 +- ...eplicaAzurePlannedFailoverProviderInput.cs | 12 +- .../HyperVReplicaAzureReplicationDetails.cs | 12 +- ...zureUpdateReplicationProtectedItemInput.cs | 12 +- ...geRcmAgentReinstallBlockingErrorDetails.cs | 98 ++++++ .../Generated/Models/InMageRcmDiskInput.cs | 32 +- .../Models/InMageRcmDisksDefaultInput.cs | 32 +- .../Models/InMageRcmEnableProtectionInput.cs | 13 +- ...InMageRcmLastAgentReinstallErrorDetails.cs | 98 ++++++ .../Models/InMageRcmMobilityAgentDetails.cs | 124 ++++++- .../Models/InMageRcmProtectedDiskDetails.cs | 32 +- .../Models/InMageRcmReplicationDetails.cs | 12 +- .../Models/InMageRcmUnplannedFailoverInput.cs | 13 +- ...eRcmUpdateReplicationProtectedItemInput.cs | 22 +- .../Models/MobilityAgentReinstallType.cs | 19 + .../Models/ProtectedClustersQueryParameter.cs | 2 +- .../Models/ReinstallMobilityServiceRequest.cs | 48 +++ ...installMobilityServiceRequestProperties.cs | 48 +++ ...tedItemsReinstallMobilityServiceHeaders.cs | 45 +++ .../Generated/Models/UpdateDiskInput.cs | 32 +- .../Generated/Models/VMwareCbtDiskInput.cs | 32 +- .../Models/VMwareCbtEnableMigrationInput.cs | 13 +- .../Generated/Models/VMwareCbtMigrateInput.cs | 13 +- .../Models/VMwareCbtMigrationDetails.cs | 12 +- .../Models/VMwareCbtProtectedDiskDetails.cs | 32 +- .../Models/VMwareCbtUpdateDiskInput.cs | 32 +- .../VMwareCbtUpdateMigrationItemInput.cs | 12 +- .../ReplicationProtectedItemsOperations.cs | 328 ++++++++++++++++++ ...ationProtectedItemsOperationsExtensions.cs | 122 +++++++ .../Generated/SiteRecoveryManagementClient.cs | 2 +- 40 files changed, 1730 insertions(+), 28 deletions(-) create mode 100644 src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AAgentReinstallBlockingErrorDetails.cs create mode 100644 src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/AgentReinstallBlockedReason.cs create mode 100644 src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmAgentReinstallBlockingErrorDetails.cs create mode 100644 src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmLastAgentReinstallErrorDetails.cs create mode 100644 src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/MobilityAgentReinstallType.cs create mode 100644 src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReinstallMobilityServiceRequest.cs create mode 100644 src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReinstallMobilityServiceRequestProperties.cs create mode 100644 src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReplicationProtectedItemsReinstallMobilityServiceHeaders.cs diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/IReplicationProtectedItemsOperations.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/IReplicationProtectedItemsOperations.cs index 00ced460166e..b08b83b70766 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/IReplicationProtectedItemsOperations.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/IReplicationProtectedItemsOperations.cs @@ -827,6 +827,47 @@ public partial interface IReplicationProtectedItemsOperations /// System.Threading.Tasks.Task> UpdateMobilityServiceWithHttpMessagesAsync(string resourceGroupName, string resourceName, string fabricName, string protectionContainerName, string replicatedProtectedItemName, UpdateMobilityServiceRequestProperties properties = default(UpdateMobilityServiceRequestProperties), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// The operation to reinstall the installed mobility service software on a + /// replication protected item to the latest available version. + /// + /// + /// The operation to reinstall the installed mobility service software on a + /// replication protected item to the latest available version. + /// + /// + /// The name of the resource group where the recovery services vault is + /// present. + /// + /// + /// The name of the recovery services vault. + /// + /// + /// The name of the fabric containing the protected item. + /// + /// + /// The name of the container containing the protected item. + /// + /// + /// The name of the protected item on which the agent is to be updated. + /// + /// + /// The properties of the reinstall mobility service request + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> ReinstallMobilityServiceWithHttpMessagesAsync(string resourceGroupName, string resourceName, string fabricName, string protectionContainerName, string replicatedProtectedItemName, ReinstallMobilityServiceRequestProperties properties = default(ReinstallMobilityServiceRequestProperties), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// /// Gets the list of ASR replication protected items in the vault. /// @@ -1604,6 +1645,47 @@ public partial interface IReplicationProtectedItemsOperations /// System.Threading.Tasks.Task> BeginUpdateMobilityServiceWithHttpMessagesAsync(string resourceGroupName, string resourceName, string fabricName, string protectionContainerName, string replicatedProtectedItemName, UpdateMobilityServiceRequestProperties properties = default(UpdateMobilityServiceRequestProperties), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// The operation to reinstall the installed mobility service software on a + /// replication protected item to the latest available version. + /// + /// + /// The operation to reinstall the installed mobility service software on a + /// replication protected item to the latest available version. + /// + /// + /// The name of the resource group where the recovery services vault is + /// present. + /// + /// + /// The name of the recovery services vault. + /// + /// + /// The name of the fabric containing the protected item. + /// + /// + /// The name of the container containing the protected item. + /// + /// + /// The name of the protected item on which the agent is to be updated. + /// + /// + /// The properties of the reinstall mobility service request + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> BeginReinstallMobilityServiceWithHttpMessagesAsync(string resourceGroupName, string resourceName, string fabricName, string protectionContainerName, string replicatedProtectedItemName, ReinstallMobilityServiceRequestProperties properties = default(ReinstallMobilityServiceRequestProperties), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// /// Gets the list of ASR replication protected items in the protection /// container. diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AAgentReinstallBlockingErrorDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AAgentReinstallBlockingErrorDetails.cs new file mode 100644 index 000000000000..0d712412ac10 --- /dev/null +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AAgentReinstallBlockingErrorDetails.cs @@ -0,0 +1,98 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models +{ + using System.Linq; + + /// + /// A2A source agent reinstall blocking error details. + /// + public partial class A2AAgentReinstallBlockingErrorDetails + { + /// + /// Initializes a new instance of the A2AAgentReinstallBlockingErrorDetails class. + /// + public A2AAgentReinstallBlockingErrorDetails() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the A2AAgentReinstallBlockingErrorDetails class. + /// + + /// error code. + /// + + /// error message. + /// + + /// possible causes. + /// + + /// recommended action. + /// + + /// error message parameters. + /// + + /// error tags. + /// + public A2AAgentReinstallBlockingErrorDetails(string errorCode = default(string), string errorMessage = default(string), string possibleCauses = default(string), string recommendedAction = default(string), System.Collections.Generic.IDictionary errorMessageParameters = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary errorTags = default(System.Collections.Generic.IDictionary)) + + { + this.ErrorCode = errorCode; + this.ErrorMessage = errorMessage; + this.PossibleCauses = possibleCauses; + this.RecommendedAction = recommendedAction; + this.ErrorMessageParameters = errorMessageParameters; + this.ErrorTags = errorTags; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets error code. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorCode")] + public string ErrorCode {get; set; } + + /// + /// Gets or sets error message. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorMessage")] + public string ErrorMessage {get; set; } + + /// + /// Gets or sets possible causes. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "possibleCauses")] + public string PossibleCauses {get; set; } + + /// + /// Gets or sets recommended action. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "recommendedAction")] + public string RecommendedAction {get; set; } + + /// + /// Gets or sets error message parameters. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorMessageParameters")] + public System.Collections.Generic.IDictionary ErrorMessageParameters {get; set; } + + /// + /// Gets or sets error tags. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorTags")] + public System.Collections.Generic.IDictionary ErrorTags {get; set; } + } +} \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AEnableProtectionInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AEnableProtectionInput.cs index 89538146c3cc..b5490f698229 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AEnableProtectionInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AEnableProtectionInput.cs @@ -82,9 +82,12 @@ public A2AEnableProtectionInput() /// The recovery capacity reservation group Id. /// + /// the platform fault domain. + /// + /// A value indicating whether the auto protection is enabled. /// Possible values include: 'Disabled', 'Enabled' - public A2AEnableProtectionInput(string fabricObjectId, string recoveryContainerId = default(string), string recoveryResourceGroupId = default(string), string recoveryCloudServiceId = default(string), string recoveryAvailabilitySetId = default(string), string recoveryProximityPlacementGroupId = default(string), System.Collections.Generic.IList vmDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList vmManagedDisks = default(System.Collections.Generic.IList), string multiVMGroupName = default(string), string multiVMGroupId = default(string), string protectionClusterId = default(string), string recoveryBootDiagStorageAccountId = default(string), DiskEncryptionInfo diskEncryptionInfo = default(DiskEncryptionInfo), string recoveryAvailabilityZone = default(string), ExtendedLocation recoveryExtendedLocation = default(ExtendedLocation), string recoveryAzureNetworkId = default(string), string recoverySubnetName = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string), string autoProtectionOfDataDisk = default(string)) + public A2AEnableProtectionInput(string fabricObjectId, string recoveryContainerId = default(string), string recoveryResourceGroupId = default(string), string recoveryCloudServiceId = default(string), string recoveryAvailabilitySetId = default(string), string recoveryProximityPlacementGroupId = default(string), System.Collections.Generic.IList vmDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList vmManagedDisks = default(System.Collections.Generic.IList), string multiVMGroupName = default(string), string multiVMGroupId = default(string), string protectionClusterId = default(string), string recoveryBootDiagStorageAccountId = default(string), DiskEncryptionInfo diskEncryptionInfo = default(DiskEncryptionInfo), string recoveryAvailabilityZone = default(string), ExtendedLocation recoveryExtendedLocation = default(ExtendedLocation), string recoveryAzureNetworkId = default(string), string recoverySubnetName = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string), int? platformFaultDomain = default(int?), string autoProtectionOfDataDisk = default(string)) { this.FabricObjectId = fabricObjectId; @@ -106,6 +109,7 @@ public A2AEnableProtectionInput() this.RecoverySubnetName = recoverySubnetName; this.RecoveryVirtualMachineScaleSetId = recoveryVirtualMachineScaleSetId; this.RecoveryCapacityReservationGroupId = recoveryCapacityReservationGroupId; + this.PlatformFaultDomain = platformFaultDomain; this.AutoProtectionOfDataDisk = autoProtectionOfDataDisk; CustomInit(); } @@ -230,6 +234,12 @@ public A2AEnableProtectionInput() [Newtonsoft.Json.JsonProperty(PropertyName = "recoveryCapacityReservationGroupId")] public string RecoveryCapacityReservationGroupId {get; set; } + /// + /// Gets or sets the platform fault domain. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "platformFaultDomain")] + public int? PlatformFaultDomain {get; set; } + /// /// Gets or sets a value indicating whether the auto protection is enabled. Possible values include: 'Disabled', 'Enabled' /// diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AReplicationDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AReplicationDetails.cs index 7665ce798a9e..af07412add70 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AReplicationDetails.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AReplicationDetails.cs @@ -200,7 +200,43 @@ public A2AReplicationDetails() /// A value indicating the churn option selected by user. /// Possible values include: 'Normal', 'High' - public A2AReplicationDetails(string fabricObjectId = default(string), string initialPrimaryZone = default(string), string initialPrimaryFabricLocation = default(string), string initialRecoveryZone = default(string), ExtendedLocation initialPrimaryExtendedLocation = default(ExtendedLocation), ExtendedLocation initialRecoveryExtendedLocation = default(ExtendedLocation), string initialRecoveryFabricLocation = default(string), string multiVMGroupId = default(string), string multiVMGroupName = default(string), string multiVMGroupCreateOption = default(string), string managementId = default(string), string protectionClusterId = default(string), bool? isClusterInfraReady = default(bool?), System.Collections.Generic.IList protectedDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList unprotectedDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList protectedManagedDisks = default(System.Collections.Generic.IList), string recoveryBootDiagStorageAccountId = default(string), string primaryFabricLocation = default(string), string recoveryFabricLocation = default(string), string osType = default(string), string recoveryAzureVMSize = default(string), string recoveryAzureVMName = default(string), string recoveryAzureResourceGroupId = default(string), string recoveryCloudService = default(string), string recoveryAvailabilitySet = default(string), string selectedRecoveryAzureNetworkId = default(string), string selectedTfoAzureNetworkId = default(string), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), AzureToAzureVmSyncedConfigDetails vmSyncedConfigDetails = default(AzureToAzureVmSyncedConfigDetails), int? monitoringPercentageCompletion = default(int?), string monitoringJobType = default(string), System.DateTime? lastHeartbeat = default(System.DateTime?), string agentVersion = default(string), System.DateTime? agentExpiryDate = default(System.DateTime?), bool? isReplicationAgentUpdateRequired = default(bool?), System.DateTime? agentCertificateExpiryDate = default(System.DateTime?), bool? isReplicationAgentCertificateUpdateRequired = default(bool?), string recoveryFabricObjectId = default(string), string vmProtectionState = default(string), string vmProtectionStateDescription = default(string), string lifecycleId = default(string), string testFailoverRecoveryFabricObjectId = default(string), long? rpoInSeconds = default(long?), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), string primaryAvailabilityZone = default(string), string recoveryAvailabilityZone = default(string), ExtendedLocation primaryExtendedLocation = default(ExtendedLocation), ExtendedLocation recoveryExtendedLocation = default(ExtendedLocation), string vmEncryptionType = default(string), string tfoAzureVMName = default(string), string recoveryAzureGeneration = default(string), string recoveryProximityPlacementGroupId = default(string), string autoProtectionOfDataDisk = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string), string churnOptionSelected = default(string)) + + /// The agent version to which last agent reinstall was attempted. + /// + + /// The OS family name. + /// + + /// The distro name. + /// + + /// The agent os name last agent reinstall was attempted. + /// + + /// A value indicating whether replication agent upgradeable. + /// + + /// A value indicating whether replication agent reinstallation is required. + /// + + /// value for reason blocking reinstall. + /// + + /// whether reinstall is possible or not. + /// + + /// A value indicating whether replication agent Upgrade is In-Progress. + /// + + /// auto agent upgrade retry count. + /// + + /// A value indicating whether replication agent Upgrade retry exhausted. + /// + + /// the platform fault domain. + /// + public A2AReplicationDetails(string fabricObjectId = default(string), string initialPrimaryZone = default(string), string initialPrimaryFabricLocation = default(string), string initialRecoveryZone = default(string), ExtendedLocation initialPrimaryExtendedLocation = default(ExtendedLocation), ExtendedLocation initialRecoveryExtendedLocation = default(ExtendedLocation), string initialRecoveryFabricLocation = default(string), string multiVMGroupId = default(string), string multiVMGroupName = default(string), string multiVMGroupCreateOption = default(string), string managementId = default(string), string protectionClusterId = default(string), bool? isClusterInfraReady = default(bool?), System.Collections.Generic.IList protectedDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList unprotectedDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList protectedManagedDisks = default(System.Collections.Generic.IList), string recoveryBootDiagStorageAccountId = default(string), string primaryFabricLocation = default(string), string recoveryFabricLocation = default(string), string osType = default(string), string recoveryAzureVMSize = default(string), string recoveryAzureVMName = default(string), string recoveryAzureResourceGroupId = default(string), string recoveryCloudService = default(string), string recoveryAvailabilitySet = default(string), string selectedRecoveryAzureNetworkId = default(string), string selectedTfoAzureNetworkId = default(string), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), AzureToAzureVmSyncedConfigDetails vmSyncedConfigDetails = default(AzureToAzureVmSyncedConfigDetails), int? monitoringPercentageCompletion = default(int?), string monitoringJobType = default(string), System.DateTime? lastHeartbeat = default(System.DateTime?), string agentVersion = default(string), System.DateTime? agentExpiryDate = default(System.DateTime?), bool? isReplicationAgentUpdateRequired = default(bool?), System.DateTime? agentCertificateExpiryDate = default(System.DateTime?), bool? isReplicationAgentCertificateUpdateRequired = default(bool?), string recoveryFabricObjectId = default(string), string vmProtectionState = default(string), string vmProtectionStateDescription = default(string), string lifecycleId = default(string), string testFailoverRecoveryFabricObjectId = default(string), long? rpoInSeconds = default(long?), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), string primaryAvailabilityZone = default(string), string recoveryAvailabilityZone = default(string), ExtendedLocation primaryExtendedLocation = default(ExtendedLocation), ExtendedLocation recoveryExtendedLocation = default(ExtendedLocation), string vmEncryptionType = default(string), string tfoAzureVMName = default(string), string recoveryAzureGeneration = default(string), string recoveryProximityPlacementGroupId = default(string), string autoProtectionOfDataDisk = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string), string churnOptionSelected = default(string), string agentReinstallAttemptToVersion = default(string), string osFamilyName = default(string), string distroName = default(string), string distroNameForWhichAgentIsInstalled = default(string), bool? isAgentUpgradeable = default(bool?), bool? isAgentReinstallRequired = default(bool?), string reasonsBlockingReInstall = default(string), System.Collections.Generic.IList reasonsBlockingReinstallDetails = default(System.Collections.Generic.IList), bool? isAgentUpgradeInProgress = default(bool?), long? autoAgentUpgradeRetryCount = default(long?), bool? isAgentUpgradeRetryThresholdExhausted = default(bool?), int? platformFaultDomain = default(int?)) { this.FabricObjectId = fabricObjectId; @@ -259,6 +295,18 @@ public A2AReplicationDetails() this.RecoveryVirtualMachineScaleSetId = recoveryVirtualMachineScaleSetId; this.RecoveryCapacityReservationGroupId = recoveryCapacityReservationGroupId; this.ChurnOptionSelected = churnOptionSelected; + this.AgentReinstallAttemptToVersion = agentReinstallAttemptToVersion; + this.OSFamilyName = osFamilyName; + this.DistroName = distroName; + this.DistroNameForWhichAgentIsInstalled = distroNameForWhichAgentIsInstalled; + this.IsAgentUpgradeable = isAgentUpgradeable; + this.IsAgentReinstallRequired = isAgentReinstallRequired; + this.ReasonsBlockingReInstall = reasonsBlockingReInstall; + this.ReasonsBlockingReinstallDetails = reasonsBlockingReinstallDetails; + this.IsAgentUpgradeInProgress = isAgentUpgradeInProgress; + this.AutoAgentUpgradeRetryCount = autoAgentUpgradeRetryCount; + this.IsAgentUpgradeRetryThresholdExhausted = isAgentUpgradeRetryThresholdExhausted; + this.PlatformFaultDomain = platformFaultDomain; CustomInit(); } @@ -612,6 +660,81 @@ public A2AReplicationDetails() /// [Newtonsoft.Json.JsonProperty(PropertyName = "churnOptionSelected")] public string ChurnOptionSelected {get; private set; } + + /// + /// Gets or sets the agent version to which last agent reinstall was attempted. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "agentReinstallAttemptToVersion")] + public string AgentReinstallAttemptToVersion {get; set; } + + /// + /// Gets or sets the OS family name. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "osFamilyName")] + public string OSFamilyName {get; set; } + + /// + /// Gets or sets the distro name. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "distroName")] + public string DistroName {get; set; } + + /// + /// Gets or sets the agent os name last agent reinstall was attempted. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "distroNameForWhichAgentIsInstalled")] + public string DistroNameForWhichAgentIsInstalled {get; set; } + + /// + /// Gets or sets a value indicating whether replication agent upgradeable. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "isAgentUpgradeable")] + public bool? IsAgentUpgradeable {get; set; } + + /// + /// Gets or sets a value indicating whether replication agent reinstallation is + /// required. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "isAgentReinstallRequired")] + public bool? IsAgentReinstallRequired {get; set; } + + /// + /// Gets or sets value for reason blocking reinstall. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "reasonsBlockingReInstall")] + public string ReasonsBlockingReInstall {get; set; } + + /// + /// Gets or sets whether reinstall is possible or not. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "reasonsBlockingReinstallDetails")] + public System.Collections.Generic.IList ReasonsBlockingReinstallDetails {get; set; } + + /// + /// Gets or sets a value indicating whether replication agent Upgrade is + /// In-Progress. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "isAgentUpgradeInProgress")] + public bool? IsAgentUpgradeInProgress {get; set; } + + /// + /// Gets or sets auto agent upgrade retry count. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "autoAgentUpgradeRetryCount")] + public long? AutoAgentUpgradeRetryCount {get; set; } + + /// + /// Gets or sets a value indicating whether replication agent Upgrade retry + /// exhausted. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "isAgentUpgradeRetryThresholdExhausted")] + public bool? IsAgentUpgradeRetryThresholdExhausted {get; set; } + + /// + /// Gets or sets the platform fault domain. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "platformFaultDomain")] + public int? PlatformFaultDomain {get; set; } /// /// Validate the object. /// @@ -679,6 +802,12 @@ public virtual void Validate() + + + + + + } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2ASwitchProtectionInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2ASwitchProtectionInput.cs index 8f4e2d931ecf..373c6ea0e9ed 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2ASwitchProtectionInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2ASwitchProtectionInput.cs @@ -61,9 +61,12 @@ public A2ASwitchProtectionInput() /// The recovery capacity reservation group Id. /// + /// the platform fault domain. + /// + /// The recovery disk encryption information. /// - public A2ASwitchProtectionInput(string recoveryContainerId = default(string), System.Collections.Generic.IList vmDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList vmManagedDisks = default(System.Collections.Generic.IList), string recoveryResourceGroupId = default(string), string recoveryCloudServiceId = default(string), string recoveryAvailabilitySetId = default(string), string policyId = default(string), string recoveryBootDiagStorageAccountId = default(string), string recoveryAvailabilityZone = default(string), string recoveryProximityPlacementGroupId = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string), DiskEncryptionInfo diskEncryptionInfo = default(DiskEncryptionInfo)) + public A2ASwitchProtectionInput(string recoveryContainerId = default(string), System.Collections.Generic.IList vmDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList vmManagedDisks = default(System.Collections.Generic.IList), string recoveryResourceGroupId = default(string), string recoveryCloudServiceId = default(string), string recoveryAvailabilitySetId = default(string), string policyId = default(string), string recoveryBootDiagStorageAccountId = default(string), string recoveryAvailabilityZone = default(string), string recoveryProximityPlacementGroupId = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string), int? platformFaultDomain = default(int?), DiskEncryptionInfo diskEncryptionInfo = default(DiskEncryptionInfo)) { this.RecoveryContainerId = recoveryContainerId; @@ -78,6 +81,7 @@ public A2ASwitchProtectionInput() this.RecoveryProximityPlacementGroupId = recoveryProximityPlacementGroupId; this.RecoveryVirtualMachineScaleSetId = recoveryVirtualMachineScaleSetId; this.RecoveryCapacityReservationGroupId = recoveryCapacityReservationGroupId; + this.PlatformFaultDomain = platformFaultDomain; this.DiskEncryptionInfo = diskEncryptionInfo; CustomInit(); } @@ -160,6 +164,12 @@ public A2ASwitchProtectionInput() [Newtonsoft.Json.JsonProperty(PropertyName = "recoveryCapacityReservationGroupId")] public string RecoveryCapacityReservationGroupId {get; set; } + /// + /// Gets or sets the platform fault domain. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "platformFaultDomain")] + public int? PlatformFaultDomain {get; set; } + /// /// Gets or sets the recovery disk encryption information. /// diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AUpdateReplicationProtectedItemInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AUpdateReplicationProtectedItemInput.cs index 72159c83e76d..d38de170f709 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AUpdateReplicationProtectedItemInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/A2AUpdateReplicationProtectedItemInput.cs @@ -51,7 +51,13 @@ public A2AUpdateReplicationProtectedItemInput() /// The recovery capacity reservation group Id. /// - public A2AUpdateReplicationProtectedItemInput(string recoveryCloudServiceId = default(string), string recoveryResourceGroupId = default(string), System.Collections.Generic.IList managedDiskUpdateDetails = default(System.Collections.Generic.IList), string recoveryBootDiagStorageAccountId = default(string), DiskEncryptionInfo diskEncryptionInfo = default(DiskEncryptionInfo), string tfoAzureVMName = default(string), string recoveryProximityPlacementGroupId = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string)) + + /// The recovery availability zone. + /// + + /// The platform fault domain. + /// + public A2AUpdateReplicationProtectedItemInput(string recoveryCloudServiceId = default(string), string recoveryResourceGroupId = default(string), System.Collections.Generic.IList managedDiskUpdateDetails = default(System.Collections.Generic.IList), string recoveryBootDiagStorageAccountId = default(string), DiskEncryptionInfo diskEncryptionInfo = default(DiskEncryptionInfo), string tfoAzureVMName = default(string), string recoveryProximityPlacementGroupId = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string), string recoveryAvailabilityZone = default(string), int? platformFaultDomain = default(int?)) { this.RecoveryCloudServiceId = recoveryCloudServiceId; @@ -63,6 +69,8 @@ public A2AUpdateReplicationProtectedItemInput() this.RecoveryProximityPlacementGroupId = recoveryProximityPlacementGroupId; this.RecoveryVirtualMachineScaleSetId = recoveryVirtualMachineScaleSetId; this.RecoveryCapacityReservationGroupId = recoveryCapacityReservationGroupId; + this.RecoveryAvailabilityZone = recoveryAvailabilityZone; + this.PlatformFaultDomain = platformFaultDomain; CustomInit(); } @@ -125,5 +133,17 @@ public A2AUpdateReplicationProtectedItemInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "recoveryCapacityReservationGroupId")] public string RecoveryCapacityReservationGroupId {get; set; } + + /// + /// Gets or sets the recovery availability zone. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "recoveryAvailabilityZone")] + public string RecoveryAvailabilityZone {get; set; } + + /// + /// Gets or sets the platform fault domain. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "platformFaultDomain")] + public int? PlatformFaultDomain {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/AgentReinstallBlockedReason.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/AgentReinstallBlockedReason.cs new file mode 100644 index 000000000000..771b48b9faeb --- /dev/null +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/AgentReinstallBlockedReason.cs @@ -0,0 +1,20 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models +{ + + /// + /// Defines values for AgentReinstallBlockedReason. + /// + + + public static class AgentReinstallBlockedReason + { + public const string DistroNotSupported = "DistroNotSupported"; + public const string AgentNoHeartbeat = "AgentNoHeartbeat"; + public const string Unknown = "Unknown"; + } +} \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/AgentUpgradeBlockedReason.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/AgentUpgradeBlockedReason.cs index eaf0dd00fa22..b7b73cb1a731 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/AgentUpgradeBlockedReason.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/AgentUpgradeBlockedReason.cs @@ -26,6 +26,7 @@ public static class AgentUpgradeBlockedReason public const string MissingUpgradePath = "MissingUpgradePath"; public const string InvalidAgentVersion = "InvalidAgentVersion"; public const string InvalidDriverVersion = "InvalidDriverVersion"; + public const string ReInstallRequired = "ReInstallRequired"; public const string Unknown = "Unknown"; } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureDiskInputDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureDiskInputDetails.cs index bcda1fc45b9a..eade0ce95cd0 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureDiskInputDetails.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureDiskInputDetails.cs @@ -39,7 +39,16 @@ public HyperVReplicaAzureDiskInputDetails() /// The logical sector size (in bytes), 512 by default. /// - public HyperVReplicaAzureDiskInputDetails(string diskId = default(string), string logStorageAccountId = default(string), string diskType = default(string), string diskEncryptionSetId = default(string), int? sectorSizeInBytes = default(int?)) + + /// The number of IOPS allowed for Premium V2 and Ultra disks. + /// + + /// The total throughput in Mbps for Premium V2 and Ultra disks. + /// + + /// The target disk size in GB. + /// + public HyperVReplicaAzureDiskInputDetails(string diskId = default(string), string logStorageAccountId = default(string), string diskType = default(string), string diskEncryptionSetId = default(string), int? sectorSizeInBytes = default(int?), long? iops = default(long?), long? throughputInMbps = default(long?), long? diskSizeInGb = default(long?)) { this.DiskId = diskId; @@ -47,6 +56,9 @@ public HyperVReplicaAzureDiskInputDetails() this.DiskType = diskType; this.DiskEncryptionSetId = diskEncryptionSetId; this.SectorSizeInBytes = sectorSizeInBytes; + this.Iops = iops; + this.ThroughputInMbps = throughputInMbps; + this.DiskSizeInGb = diskSizeInGb; CustomInit(); } @@ -85,5 +97,23 @@ public HyperVReplicaAzureDiskInputDetails() /// [Newtonsoft.Json.JsonProperty(PropertyName = "sectorSizeInBytes")] public int? SectorSizeInBytes {get; set; } + + /// + /// Gets or sets the number of IOPS allowed for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "iops")] + public long? Iops {get; set; } + + /// + /// Gets or sets the total throughput in Mbps for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "throughputInMbps")] + public long? ThroughputInMbps {get; set; } + + /// + /// Gets or sets the target disk size in GB. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "diskSizeInGB")] + public long? DiskSizeInGb {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureEnableProtectionInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureEnableProtectionInput.cs index 1f0999ad5f95..529838114872 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureEnableProtectionInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureEnableProtectionInput.cs @@ -121,7 +121,10 @@ public HyperVReplicaAzureEnableProtectionInput() /// The tags for the target NICs. /// - public HyperVReplicaAzureEnableProtectionInput(string hvHostVMId = default(string), string vmName = default(string), string osType = default(string), string userSelectedOSName = default(string), string vhdId = default(string), string targetStorageAccountId = default(string), string targetAzureNetworkId = default(string), string targetAzureSubnetId = default(string), string enableRdpOnTargetOption = default(string), string targetAzureVMName = default(string), string logStorageAccountId = default(string), System.Collections.Generic.IList disksToInclude = default(System.Collections.Generic.IList), string targetAzureV1ResourceGroupId = default(string), string targetAzureV2ResourceGroupId = default(string), string useManagedDisks = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), SecurityProfileProperties targetVMSecurityProfile = default(SecurityProfileProperties), string targetVMSize = default(string), string targetProximityPlacementGroupId = default(string), string useManagedDisksForReplication = default(string), string diskType = default(string), System.Collections.Generic.IList disksToIncludeForManagedDisks = default(System.Collections.Generic.IList), string diskEncryptionSetId = default(string), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary seedManagedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetManagedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary)) + + /// The target capacity reservation group ARM Id. + /// + public HyperVReplicaAzureEnableProtectionInput(string hvHostVMId = default(string), string vmName = default(string), string osType = default(string), string userSelectedOSName = default(string), string vhdId = default(string), string targetStorageAccountId = default(string), string targetAzureNetworkId = default(string), string targetAzureSubnetId = default(string), string enableRdpOnTargetOption = default(string), string targetAzureVMName = default(string), string logStorageAccountId = default(string), System.Collections.Generic.IList disksToInclude = default(System.Collections.Generic.IList), string targetAzureV1ResourceGroupId = default(string), string targetAzureV2ResourceGroupId = default(string), string useManagedDisks = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), SecurityProfileProperties targetVMSecurityProfile = default(SecurityProfileProperties), string targetVMSize = default(string), string targetProximityPlacementGroupId = default(string), string useManagedDisksForReplication = default(string), string diskType = default(string), System.Collections.Generic.IList disksToIncludeForManagedDisks = default(System.Collections.Generic.IList), string diskEncryptionSetId = default(string), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary seedManagedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetManagedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary), string targetCapacityReservationGroupId = default(string)) { this.HvHostVMId = hvHostVMId; @@ -155,6 +158,7 @@ public HyperVReplicaAzureEnableProtectionInput() this.SeedManagedDiskTags = seedManagedDiskTags; this.TargetManagedDiskTags = targetManagedDiskTags; this.TargetNicTags = targetNicTags; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -355,5 +359,11 @@ public HyperVReplicaAzureEnableProtectionInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "targetNicTags")] public System.Collections.Generic.IDictionary TargetNicTags {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureManagedDiskDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureManagedDiskDetails.cs index d007c85a9198..257e6aedf8b8 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureManagedDiskDetails.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureManagedDiskDetails.cs @@ -42,7 +42,16 @@ public HyperVReplicaAzureManagedDiskDetails() /// The logical sector size (in bytes), 512 by default. /// - public HyperVReplicaAzureManagedDiskDetails(string diskId = default(string), string seedManagedDiskId = default(string), string replicaDiskType = default(string), string diskEncryptionSetId = default(string), string targetDiskAccountType = default(string), int? sectorSizeInBytes = default(int?)) + + /// The number of IOPS allowed for Premium V2 and Ultra disks. + /// + + /// The total throughput in Mbps for Premium V2 and Ultra disks. + /// + + /// The target disk size in GB. + /// + public HyperVReplicaAzureManagedDiskDetails(string diskId = default(string), string seedManagedDiskId = default(string), string replicaDiskType = default(string), string diskEncryptionSetId = default(string), string targetDiskAccountType = default(string), int? sectorSizeInBytes = default(int?), long? iops = default(long?), long? throughputInMbps = default(long?), long? diskSizeInGb = default(long?)) { this.DiskId = diskId; @@ -51,6 +60,9 @@ public HyperVReplicaAzureManagedDiskDetails() this.DiskEncryptionSetId = diskEncryptionSetId; this.TargetDiskAccountType = targetDiskAccountType; this.SectorSizeInBytes = sectorSizeInBytes; + this.Iops = iops; + this.ThroughputInMbps = throughputInMbps; + this.DiskSizeInGb = diskSizeInGb; CustomInit(); } @@ -95,5 +107,23 @@ public HyperVReplicaAzureManagedDiskDetails() /// [Newtonsoft.Json.JsonProperty(PropertyName = "sectorSizeInBytes")] public int? SectorSizeInBytes {get; set; } + + /// + /// Gets or sets the number of IOPS allowed for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "iops")] + public long? Iops {get; set; } + + /// + /// Gets or sets the total throughput in Mbps for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "throughputInMbps")] + public long? ThroughputInMbps {get; set; } + + /// + /// Gets or sets the target disk size in GB. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "diskSizeInGB")] + public long? DiskSizeInGb {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzurePlannedFailoverProviderInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzurePlannedFailoverProviderInput.cs index 22bb7b0bde41..af5ce355fa93 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzurePlannedFailoverProviderInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzurePlannedFailoverProviderInput.cs @@ -37,13 +37,17 @@ public HyperVReplicaAzurePlannedFailoverProviderInput() /// A value indicating the inplace OS Upgrade version. /// - public HyperVReplicaAzurePlannedFailoverProviderInput(string primaryKekCertificatePfx = default(string), string secondaryKekCertificatePfx = default(string), string recoveryPointId = default(string), string osUpgradeVersion = default(string)) + + /// The target capacity reservation group ARM Id. + /// + public HyperVReplicaAzurePlannedFailoverProviderInput(string primaryKekCertificatePfx = default(string), string secondaryKekCertificatePfx = default(string), string recoveryPointId = default(string), string osUpgradeVersion = default(string), string targetCapacityReservationGroupId = default(string)) { this.PrimaryKekCertificatePfx = primaryKekCertificatePfx; this.SecondaryKekCertificatePfx = secondaryKekCertificatePfx; this.RecoveryPointId = recoveryPointId; this.OSUpgradeVersion = osUpgradeVersion; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -77,5 +81,11 @@ public HyperVReplicaAzurePlannedFailoverProviderInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "osUpgradeVersion")] public string OSUpgradeVersion {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureReplicationDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureReplicationDetails.cs index 585927b4820c..19b8a92e77d4 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureReplicationDetails.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureReplicationDetails.cs @@ -136,7 +136,10 @@ public HyperVReplicaAzureReplicationDetails() /// The target VM security profile. /// - public HyperVReplicaAzureReplicationDetails(System.Collections.Generic.IList azureVMDiskDetails = default(System.Collections.Generic.IList), string recoveryAzureVMName = default(string), string recoveryAzureVMSize = default(string), string recoveryAzureStorageAccount = default(string), string recoveryAzureLogStorageAccountId = default(string), System.DateTime? lastReplicatedTime = default(System.DateTime?), long? rpoInSeconds = default(long?), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), string vmId = default(string), string vmProtectionState = default(string), string vmProtectionStateDescription = default(string), InitialReplicationDetails initialReplicationDetails = default(InitialReplicationDetails), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), string selectedRecoveryAzureNetworkId = default(string), string selectedSourceNicId = default(string), string encryption = default(string), OSDetails osDetails = default(OSDetails), int? sourceVMRamSizeInMb = default(int?), int? sourceVMCpuCount = default(int?), string enableRdpOnTargetOption = default(string), string recoveryAzureResourceGroupId = default(string), string recoveryAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string useManagedDisks = default(string), string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), System.DateTime? lastRecoveryPointReceived = default(System.DateTime?), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary seedManagedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetManagedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IList protectedManagedDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList allAvailableOSUpgradeConfigurations = default(System.Collections.Generic.IList), SecurityProfileProperties targetVMSecurityProfile = default(SecurityProfileProperties)) + + /// The target capacity reservation group ARM Id. + /// + public HyperVReplicaAzureReplicationDetails(System.Collections.Generic.IList azureVMDiskDetails = default(System.Collections.Generic.IList), string recoveryAzureVMName = default(string), string recoveryAzureVMSize = default(string), string recoveryAzureStorageAccount = default(string), string recoveryAzureLogStorageAccountId = default(string), System.DateTime? lastReplicatedTime = default(System.DateTime?), long? rpoInSeconds = default(long?), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), string vmId = default(string), string vmProtectionState = default(string), string vmProtectionStateDescription = default(string), InitialReplicationDetails initialReplicationDetails = default(InitialReplicationDetails), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), string selectedRecoveryAzureNetworkId = default(string), string selectedSourceNicId = default(string), string encryption = default(string), OSDetails osDetails = default(OSDetails), int? sourceVMRamSizeInMb = default(int?), int? sourceVMCpuCount = default(int?), string enableRdpOnTargetOption = default(string), string recoveryAzureResourceGroupId = default(string), string recoveryAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string useManagedDisks = default(string), string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), System.DateTime? lastRecoveryPointReceived = default(System.DateTime?), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary seedManagedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetManagedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IList protectedManagedDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList allAvailableOSUpgradeConfigurations = default(System.Collections.Generic.IList), SecurityProfileProperties targetVMSecurityProfile = default(SecurityProfileProperties), string targetCapacityReservationGroupId = default(string)) { this.AzureVMDiskDetails = azureVMDiskDetails; @@ -175,6 +178,7 @@ public HyperVReplicaAzureReplicationDetails() this.ProtectedManagedDisks = protectedManagedDisks; this.AllAvailableOSUpgradeConfigurations = allAvailableOSUpgradeConfigurations; this.TargetVMSecurityProfile = targetVMSecurityProfile; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -405,5 +409,11 @@ public HyperVReplicaAzureReplicationDetails() /// [Newtonsoft.Json.JsonProperty(PropertyName = "targetVmSecurityProfile")] public SecurityProfileProperties TargetVMSecurityProfile {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureUpdateReplicationProtectedItemInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureUpdateReplicationProtectedItemInput.cs index cdce928c21d3..c1fce471f2e6 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureUpdateReplicationProtectedItemInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/HyperVReplicaAzureUpdateReplicationProtectedItemInput.cs @@ -63,7 +63,10 @@ public HyperVReplicaAzureUpdateReplicationProtectedItemInput() /// The list of disk update properties. /// - public HyperVReplicaAzureUpdateReplicationProtectedItemInput(string recoveryAzureV1ResourceGroupId = default(string), string recoveryAzureV2ResourceGroupId = default(string), string useManagedDisks = default(string), System.Collections.Generic.IDictionary diskIdToDiskEncryptionMap = default(System.Collections.Generic.IDictionary), string targetProximityPlacementGroupId = default(string), string targetAvailabilityZone = default(string), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetManagedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), string userSelectedOSName = default(string), System.Collections.Generic.IList vmDisks = default(System.Collections.Generic.IList)) + + /// The target capacity reservation group ARM Id. + /// + public HyperVReplicaAzureUpdateReplicationProtectedItemInput(string recoveryAzureV1ResourceGroupId = default(string), string recoveryAzureV2ResourceGroupId = default(string), string useManagedDisks = default(string), System.Collections.Generic.IDictionary diskIdToDiskEncryptionMap = default(System.Collections.Generic.IDictionary), string targetProximityPlacementGroupId = default(string), string targetAvailabilityZone = default(string), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetManagedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), string userSelectedOSName = default(string), System.Collections.Generic.IList vmDisks = default(System.Collections.Generic.IList), string targetCapacityReservationGroupId = default(string)) { this.RecoveryAzureV1ResourceGroupId = recoveryAzureV1ResourceGroupId; @@ -79,6 +82,7 @@ public HyperVReplicaAzureUpdateReplicationProtectedItemInput() this.LinuxLicenseType = linuxLicenseType; this.UserSelectedOSName = userSelectedOSName; this.VMDisks = vmDisks; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -168,5 +172,11 @@ public HyperVReplicaAzureUpdateReplicationProtectedItemInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "vmDisks")] public System.Collections.Generic.IList VMDisks {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmAgentReinstallBlockingErrorDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmAgentReinstallBlockingErrorDetails.cs new file mode 100644 index 000000000000..2c32f8157364 --- /dev/null +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmAgentReinstallBlockingErrorDetails.cs @@ -0,0 +1,98 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models +{ + using System.Linq; + + /// + /// InMageRcm source agent reinstall blocking error details. + /// + public partial class InMageRcmAgentReinstallBlockingErrorDetails + { + /// + /// Initializes a new instance of the InMageRcmAgentReinstallBlockingErrorDetails class. + /// + public InMageRcmAgentReinstallBlockingErrorDetails() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the InMageRcmAgentReinstallBlockingErrorDetails class. + /// + + /// error code. + /// + + /// error message. + /// + + /// possible causes. + /// + + /// recommended action. + /// + + /// error message parameters. + /// + + /// error tags. + /// + public InMageRcmAgentReinstallBlockingErrorDetails(string errorCode = default(string), string errorMessage = default(string), string possibleCauses = default(string), string recommendedAction = default(string), System.Collections.Generic.IDictionary errorMessageParameters = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary errorTags = default(System.Collections.Generic.IDictionary)) + + { + this.ErrorCode = errorCode; + this.ErrorMessage = errorMessage; + this.PossibleCauses = possibleCauses; + this.RecommendedAction = recommendedAction; + this.ErrorMessageParameters = errorMessageParameters; + this.ErrorTags = errorTags; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets error code. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorCode")] + public string ErrorCode {get; set; } + + /// + /// Gets or sets error message. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorMessage")] + public string ErrorMessage {get; set; } + + /// + /// Gets or sets possible causes. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "possibleCauses")] + public string PossibleCauses {get; set; } + + /// + /// Gets or sets recommended action. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "recommendedAction")] + public string RecommendedAction {get; set; } + + /// + /// Gets or sets error message parameters. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorMessageParameters")] + public System.Collections.Generic.IDictionary ErrorMessageParameters {get; set; } + + /// + /// Gets or sets error tags. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorTags")] + public System.Collections.Generic.IDictionary ErrorTags {get; set; } + } +} \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmDiskInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmDiskInput.cs index 241de9150f23..9b8a4faddadd 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmDiskInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmDiskInput.cs @@ -39,7 +39,16 @@ public InMageRcmDiskInput() /// The logical sector size (in bytes), 512 by default. /// - public InMageRcmDiskInput(string diskId, string logStorageAccountId, string diskType, string diskEncryptionSetId = default(string), int? sectorSizeInBytes = default(int?)) + + /// The number of IOPS allowed for Premium V2 and Ultra disks. + /// + + /// The total throughput in Mbps for Premium V2 and Ultra disks. + /// + + /// The target disk size in GB. + /// + public InMageRcmDiskInput(string diskId, string logStorageAccountId, string diskType, string diskEncryptionSetId = default(string), int? sectorSizeInBytes = default(int?), long? iops = default(long?), long? throughputInMbps = default(long?), long? diskSizeInGb = default(long?)) { this.DiskId = diskId; @@ -47,6 +56,9 @@ public InMageRcmDiskInput() this.DiskType = diskType; this.DiskEncryptionSetId = diskEncryptionSetId; this.SectorSizeInBytes = sectorSizeInBytes; + this.Iops = iops; + this.ThroughputInMbps = throughputInMbps; + this.DiskSizeInGb = diskSizeInGb; CustomInit(); } @@ -85,6 +97,24 @@ public InMageRcmDiskInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "sectorSizeInBytes")] public int? SectorSizeInBytes {get; set; } + + /// + /// Gets or sets the number of IOPS allowed for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "iops")] + public long? Iops {get; set; } + + /// + /// Gets or sets the total throughput in Mbps for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "throughputInMbps")] + public long? ThroughputInMbps {get; set; } + + /// + /// Gets or sets the target disk size in GB. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "diskSizeInGB")] + public long? DiskSizeInGb {get; set; } /// /// Validate the object. /// diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmDisksDefaultInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmDisksDefaultInput.cs index 33d7a666e75b..07da4a9fec28 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmDisksDefaultInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmDisksDefaultInput.cs @@ -36,13 +36,25 @@ public InMageRcmDisksDefaultInput() /// The logical sector size (in bytes), 512 by default. /// - public InMageRcmDisksDefaultInput(string logStorageAccountId, string diskType, string diskEncryptionSetId = default(string), int? sectorSizeInBytes = default(int?)) + + /// The number of IOPS allowed for Premium V2 and Ultra disks. + /// + + /// The total throughput in Mbps for Premium V2 and Ultra disks. + /// + + /// The target disk size in GB. + /// + public InMageRcmDisksDefaultInput(string logStorageAccountId, string diskType, string diskEncryptionSetId = default(string), int? sectorSizeInBytes = default(int?), long? iops = default(long?), long? throughputInMbps = default(long?), long? diskSizeInGb = default(long?)) { this.LogStorageAccountId = logStorageAccountId; this.DiskType = diskType; this.DiskEncryptionSetId = diskEncryptionSetId; this.SectorSizeInBytes = sectorSizeInBytes; + this.Iops = iops; + this.ThroughputInMbps = throughputInMbps; + this.DiskSizeInGb = diskSizeInGb; CustomInit(); } @@ -75,6 +87,24 @@ public InMageRcmDisksDefaultInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "sectorSizeInBytes")] public int? SectorSizeInBytes {get; set; } + + /// + /// Gets or sets the number of IOPS allowed for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "iops")] + public long? Iops {get; set; } + + /// + /// Gets or sets the total throughput in Mbps for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "throughputInMbps")] + public long? ThroughputInMbps {get; set; } + + /// + /// Gets or sets the target disk size in GB. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "diskSizeInGB")] + public long? DiskSizeInGb {get; set; } /// /// Validate the object. /// diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmEnableProtectionInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmEnableProtectionInput.cs index 09ddd5ec8f19..ed32f6b62f5a 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmEnableProtectionInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmEnableProtectionInput.cs @@ -102,7 +102,10 @@ public InMageRcmEnableProtectionInput() /// The target VM security profile. /// - public InMageRcmEnableProtectionInput(string fabricDiscoveryMachineId, string targetResourceGroupId, string processServerId, System.Collections.Generic.IList disksToInclude = default(System.Collections.Generic.IList), InMageRcmDisksDefaultInput disksDefault = default(InMageRcmDisksDefaultInput), string targetNetworkId = default(string), string testNetworkId = default(string), string targetSubnetName = default(string), string testSubnetName = default(string), string targetVMName = default(string), string targetVMSize = default(string), string licenseType = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string targetBootDiagnosticsStorageAccountId = default(string), string runAsAccountId = default(string), string multiVMGroupName = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), System.Collections.Generic.IList targetVMTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList seedManagedDiskTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetManagedDiskTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetNicTags = default(System.Collections.Generic.IList), string userSelectedOSName = default(string), SecurityProfileProperties targetVMSecurityProfile = default(SecurityProfileProperties)) + + /// The target capacity reservation group ARM Id. + /// + public InMageRcmEnableProtectionInput(string fabricDiscoveryMachineId, string targetResourceGroupId, string processServerId, System.Collections.Generic.IList disksToInclude = default(System.Collections.Generic.IList), InMageRcmDisksDefaultInput disksDefault = default(InMageRcmDisksDefaultInput), string targetNetworkId = default(string), string testNetworkId = default(string), string targetSubnetName = default(string), string testSubnetName = default(string), string targetVMName = default(string), string targetVMSize = default(string), string licenseType = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string targetBootDiagnosticsStorageAccountId = default(string), string runAsAccountId = default(string), string multiVMGroupName = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), System.Collections.Generic.IList targetVMTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList seedManagedDiskTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetManagedDiskTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetNicTags = default(System.Collections.Generic.IList), string userSelectedOSName = default(string), SecurityProfileProperties targetVMSecurityProfile = default(SecurityProfileProperties), string targetCapacityReservationGroupId = default(string)) { this.FabricDiscoveryMachineId = fabricDiscoveryMachineId; @@ -131,6 +134,7 @@ public InMageRcmEnableProtectionInput() this.TargetNicTags = targetNicTags; this.UserSelectedOSName = userSelectedOSName; this.TargetVMSecurityProfile = targetVMSecurityProfile; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -295,6 +299,12 @@ public InMageRcmEnableProtectionInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "targetVmSecurityProfile")] public SecurityProfileProperties TargetVMSecurityProfile {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } /// /// Validate the object. /// @@ -389,6 +399,7 @@ public virtual void Validate() } + } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmLastAgentReinstallErrorDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmLastAgentReinstallErrorDetails.cs new file mode 100644 index 000000000000..3258499b659f --- /dev/null +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmLastAgentReinstallErrorDetails.cs @@ -0,0 +1,98 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models +{ + using System.Linq; + + /// + /// InMageRcm source agent reinstall blocking error details. + /// + public partial class InMageRcmLastAgentReinstallErrorDetails + { + /// + /// Initializes a new instance of the InMageRcmLastAgentReinstallErrorDetails class. + /// + public InMageRcmLastAgentReinstallErrorDetails() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the InMageRcmLastAgentReinstallErrorDetails class. + /// + + /// error code. + /// + + /// error message. + /// + + /// possible causes. + /// + + /// recommended action. + /// + + /// error message parameters. + /// + + /// error tags. + /// + public InMageRcmLastAgentReinstallErrorDetails(string errorCode = default(string), string errorMessage = default(string), string possibleCauses = default(string), string recommendedAction = default(string), System.Collections.Generic.IDictionary errorMessageParameters = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary errorTags = default(System.Collections.Generic.IDictionary)) + + { + this.ErrorCode = errorCode; + this.ErrorMessage = errorMessage; + this.PossibleCauses = possibleCauses; + this.RecommendedAction = recommendedAction; + this.ErrorMessageParameters = errorMessageParameters; + this.ErrorTags = errorTags; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets error code. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorCode")] + public string ErrorCode {get; set; } + + /// + /// Gets or sets error message. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorMessage")] + public string ErrorMessage {get; set; } + + /// + /// Gets or sets possible causes. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "possibleCauses")] + public string PossibleCauses {get; set; } + + /// + /// Gets or sets recommended action. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "recommendedAction")] + public string RecommendedAction {get; set; } + + /// + /// Gets or sets error message parameters. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorMessageParameters")] + public System.Collections.Generic.IDictionary ErrorMessageParameters {get; set; } + + /// + /// Gets or sets error tags. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "errorTags")] + public System.Collections.Generic.IDictionary ErrorTags {get; set; } + } +} \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmMobilityAgentDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmMobilityAgentDetails.cs index 1d400b428b0a..bb3a2629f23d 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmMobilityAgentDetails.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmMobilityAgentDetails.cs @@ -53,7 +53,43 @@ public InMageRcmMobilityAgentDetails() /// A value indicating whether agent is upgradeable or not. /// - public InMageRcmMobilityAgentDetails(string version = default(string), string latestVersion = default(string), string latestAgentReleaseDate = default(string), string driverVersion = default(string), string latestUpgradableVersionWithoutReboot = default(string), System.DateTime? agentVersionExpiryDate = default(System.DateTime?), System.DateTime? driverVersionExpiryDate = default(System.DateTime?), System.DateTime? lastHeartbeatUtc = default(System.DateTime?), System.Collections.Generic.IList reasonsBlockingUpgrade = default(System.Collections.Generic.IList), string isUpgradeable = default(string)) + + /// The agent auto reinstall state. + /// + + /// The last agent reinstall type. + /// + + /// The agent reinstall job Id. + /// + + /// The last agent reinstall type. + /// + + /// The OS family name. + /// + + /// The distro name. + /// + + /// Distro name for which agent is installed. + /// + + /// A value indicating whether replication agent upgradeable. + /// + + /// A value indicating whether replication agent reinstallation is required. + /// + + /// A value indicating whether replication agent reinstallation is required. + /// + + /// whether reinstall is possible or not. + /// + + /// whether reinstall is possible or not. + /// + public InMageRcmMobilityAgentDetails(string version = default(string), string latestVersion = default(string), string latestAgentReleaseDate = default(string), string driverVersion = default(string), string latestUpgradableVersionWithoutReboot = default(string), System.DateTime? agentVersionExpiryDate = default(System.DateTime?), System.DateTime? driverVersionExpiryDate = default(System.DateTime?), System.DateTime? lastHeartbeatUtc = default(System.DateTime?), System.Collections.Generic.IList reasonsBlockingUpgrade = default(System.Collections.Generic.IList), string isUpgradeable = default(string), System.Collections.Generic.IList agentReinstallState = default(System.Collections.Generic.IList), string lastAgentReinstallType = default(string), string agentReinstallJobId = default(string), string agentReinstallAttemptToVersion = default(string), string osFamilyName = default(string), string distroName = default(string), string distroNameForWhichAgentIsInstalled = default(string), bool? isAgentUpgradeable = default(bool?), bool? isAgentReinstallRequired = default(bool?), bool? isLastReinstallSuccessful = default(bool?), System.Collections.Generic.IList reasonsBlockingReinstall = default(System.Collections.Generic.IList), System.Collections.Generic.IList reasonsBlockingReinstallDetails = default(System.Collections.Generic.IList)) { this.Version = version; @@ -66,6 +102,18 @@ public InMageRcmMobilityAgentDetails() this.LastHeartbeatUtc = lastHeartbeatUtc; this.ReasonsBlockingUpgrade = reasonsBlockingUpgrade; this.IsUpgradeable = isUpgradeable; + this.AgentReinstallState = agentReinstallState; + this.LastAgentReinstallType = lastAgentReinstallType; + this.AgentReinstallJobId = agentReinstallJobId; + this.AgentReinstallAttemptToVersion = agentReinstallAttemptToVersion; + this.OSFamilyName = osFamilyName; + this.DistroName = distroName; + this.DistroNameForWhichAgentIsInstalled = distroNameForWhichAgentIsInstalled; + this.IsAgentUpgradeable = isAgentUpgradeable; + this.IsAgentReinstallRequired = isAgentReinstallRequired; + this.IsLastReinstallSuccessful = isLastReinstallSuccessful; + this.ReasonsBlockingReinstall = reasonsBlockingReinstall; + this.ReasonsBlockingReinstallDetails = reasonsBlockingReinstallDetails; CustomInit(); } @@ -134,5 +182,79 @@ public InMageRcmMobilityAgentDetails() /// [Newtonsoft.Json.JsonProperty(PropertyName = "isUpgradeable")] public string IsUpgradeable {get; private set; } + + /// + /// Gets the agent auto reinstall state. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "agentReinstallState")] + public System.Collections.Generic.IList AgentReinstallState {get; private set; } + + /// + /// Gets the last agent reinstall type. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "lastAgentReinstallType")] + public string LastAgentReinstallType {get; private set; } + + /// + /// Gets the agent reinstall job Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "agentReinstallJobId")] + public string AgentReinstallJobId {get; private set; } + + /// + /// Gets the last agent reinstall type. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "agentReinstallAttemptToVersion")] + public string AgentReinstallAttemptToVersion {get; private set; } + + /// + /// Gets or sets the OS family name. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "osFamilyName")] + public string OSFamilyName {get; set; } + + /// + /// Gets or sets the distro name. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "distroName")] + public string DistroName {get; set; } + + /// + /// Gets or sets distro name for which agent is installed. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "distroNameForWhichAgentIsInstalled")] + public string DistroNameForWhichAgentIsInstalled {get; set; } + + /// + /// Gets or sets a value indicating whether replication agent upgradeable. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "isAgentUpgradeable")] + public bool? IsAgentUpgradeable {get; set; } + + /// + /// Gets or sets a value indicating whether replication agent reinstallation is + /// required. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "isAgentReinstallRequired")] + public bool? IsAgentReinstallRequired {get; set; } + + /// + /// Gets or sets a value indicating whether replication agent reinstallation is + /// required. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "isLastReinstallSuccessful")] + public bool? IsLastReinstallSuccessful {get; set; } + + /// + /// Gets whether reinstall is possible or not. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "reasonsBlockingReinstall")] + public System.Collections.Generic.IList ReasonsBlockingReinstall {get; private set; } + + /// + /// Gets whether reinstall is possible or not. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "reasonsBlockingReinstallDetails")] + public System.Collections.Generic.IList ReasonsBlockingReinstallDetails {get; private set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmProtectedDiskDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmProtectedDiskDetails.cs index 1c1bcc42cf47..6cf05228a947 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmProtectedDiskDetails.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmProtectedDiskDetails.cs @@ -79,7 +79,16 @@ public InMageRcmProtectedDiskDetails() /// The logical sector size (in bytes), 512 by default. /// - public InMageRcmProtectedDiskDetails(string diskId = default(string), string diskName = default(string), string isOSDisk = default(string), long? capacityInBytes = default(long?), string diskState = default(string), string logStorageAccountId = default(string), string diskEncryptionSetId = default(string), string seedManagedDiskId = default(string), string seedBlobUri = default(string), string targetManagedDiskId = default(string), string diskType = default(string), double? dataPendingInLogDataStoreInMb = default(double?), double? dataPendingAtSourceAgentInMb = default(double?), string isInitialReplicationComplete = default(string), InMageRcmSyncDetails irDetails = default(InMageRcmSyncDetails), InMageRcmSyncDetails resyncDetails = default(InMageRcmSyncDetails), string customTargetDiskName = default(string), int? sectorSizeInBytes = default(int?)) + + /// The number of IOPS allowed for Premium V2 and Ultra disks. + /// + + /// The total throughput in Mbps for Premium V2 and Ultra disks. + /// + + /// The target disk size in GB. + /// + public InMageRcmProtectedDiskDetails(string diskId = default(string), string diskName = default(string), string isOSDisk = default(string), long? capacityInBytes = default(long?), string diskState = default(string), string logStorageAccountId = default(string), string diskEncryptionSetId = default(string), string seedManagedDiskId = default(string), string seedBlobUri = default(string), string targetManagedDiskId = default(string), string diskType = default(string), double? dataPendingInLogDataStoreInMb = default(double?), double? dataPendingAtSourceAgentInMb = default(double?), string isInitialReplicationComplete = default(string), InMageRcmSyncDetails irDetails = default(InMageRcmSyncDetails), InMageRcmSyncDetails resyncDetails = default(InMageRcmSyncDetails), string customTargetDiskName = default(string), int? sectorSizeInBytes = default(int?), long? iops = default(long?), long? throughputInMbps = default(long?), long? diskSizeInGb = default(long?)) { this.DiskId = diskId; @@ -100,6 +109,9 @@ public InMageRcmProtectedDiskDetails() this.ResyncDetails = resyncDetails; this.CustomTargetDiskName = customTargetDiskName; this.SectorSizeInBytes = sectorSizeInBytes; + this.Iops = iops; + this.ThroughputInMbps = throughputInMbps; + this.DiskSizeInGb = diskSizeInGb; CustomInit(); } @@ -216,5 +228,23 @@ public InMageRcmProtectedDiskDetails() /// [Newtonsoft.Json.JsonProperty(PropertyName = "sectorSizeInBytes")] public int? SectorSizeInBytes {get; set; } + + /// + /// Gets or sets the number of IOPS allowed for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "iops")] + public long? Iops {get; set; } + + /// + /// Gets or sets the total throughput in Mbps for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "throughputInMbps")] + public long? ThroughputInMbps {get; set; } + + /// + /// Gets or sets the target disk size in GB. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "diskSizeInGB")] + public long? DiskSizeInGb {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmReplicationDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmReplicationDetails.cs index 71c51222e1d1..2b45ef7409e2 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmReplicationDetails.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmReplicationDetails.cs @@ -219,7 +219,10 @@ public InMageRcmReplicationDetails() /// The target VM security profile. /// - public InMageRcmReplicationDetails(string internalIdentifier = default(string), string fabricDiscoveryMachineId = default(string), string multiVMGroupName = default(string), string discoveryType = default(string), string processServerId = default(string), int? processorCoreCount = default(int?), double? allocatedMemoryInMb = default(double?), string processServerName = default(string), string runAsAccountId = default(string), string osType = default(string), string firmwareType = default(string), string primaryNicIPAddress = default(string), string targetGeneration = default(string), string licenseType = default(string), string linuxLicenseType = default(string), string storageAccountId = default(string), string targetVMName = default(string), string targetVMSize = default(string), string targetResourceGroupId = default(string), string targetLocation = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string targetBootDiagnosticsStorageAccountId = default(string), string targetNetworkId = default(string), string testNetworkId = default(string), string failoverRecoveryPointId = default(string), System.DateTime? lastRecoveryPointReceived = default(System.DateTime?), long? lastRpoInSeconds = default(long?), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), string lastRecoveryPointId = default(string), int? initialReplicationProgressPercentage = default(int?), long? initialReplicationProcessedBytes = default(long?), long? initialReplicationTransferredBytes = default(long?), string initialReplicationProgressHealth = default(string), int? resyncProgressPercentage = default(int?), long? resyncProcessedBytes = default(long?), long? resyncTransferredBytes = default(long?), string resyncProgressHealth = default(string), string resyncRequired = default(string), string resyncState = default(string), string agentUpgradeState = default(string), string lastAgentUpgradeType = default(string), string agentUpgradeJobId = default(string), string agentUpgradeAttemptToVersion = default(string), System.Collections.Generic.IList protectedDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList unprotectedDisks = default(System.Collections.Generic.IList), string isLastUpgradeSuccessful = default(string), bool? isAgentRegistrationSuccessfulAfterFailover = default(bool?), InMageRcmMobilityAgentDetails mobilityAgentDetails = default(InMageRcmMobilityAgentDetails), System.Collections.Generic.IList lastAgentUpgradeErrorDetails = default(System.Collections.Generic.IList), System.Collections.Generic.IList agentUpgradeBlockingErrorDetails = default(System.Collections.Generic.IList), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), InMageRcmDiscoveredProtectedVmDetails discoveredVMDetails = default(InMageRcmDiscoveredProtectedVmDetails), System.Collections.Generic.IList targetVMTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList seedManagedDiskTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetManagedDiskTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetNicTags = default(System.Collections.Generic.IList), string sqlServerLicenseType = default(string), System.Collections.Generic.IList supportedOSVersions = default(System.Collections.Generic.IList), string osName = default(string), SecurityProfileProperties targetVMSecurityProfile = default(SecurityProfileProperties)) + + /// The target capacity reservation group ARM Id. + /// + public InMageRcmReplicationDetails(string internalIdentifier = default(string), string fabricDiscoveryMachineId = default(string), string multiVMGroupName = default(string), string discoveryType = default(string), string processServerId = default(string), int? processorCoreCount = default(int?), double? allocatedMemoryInMb = default(double?), string processServerName = default(string), string runAsAccountId = default(string), string osType = default(string), string firmwareType = default(string), string primaryNicIPAddress = default(string), string targetGeneration = default(string), string licenseType = default(string), string linuxLicenseType = default(string), string storageAccountId = default(string), string targetVMName = default(string), string targetVMSize = default(string), string targetResourceGroupId = default(string), string targetLocation = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string targetBootDiagnosticsStorageAccountId = default(string), string targetNetworkId = default(string), string testNetworkId = default(string), string failoverRecoveryPointId = default(string), System.DateTime? lastRecoveryPointReceived = default(System.DateTime?), long? lastRpoInSeconds = default(long?), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), string lastRecoveryPointId = default(string), int? initialReplicationProgressPercentage = default(int?), long? initialReplicationProcessedBytes = default(long?), long? initialReplicationTransferredBytes = default(long?), string initialReplicationProgressHealth = default(string), int? resyncProgressPercentage = default(int?), long? resyncProcessedBytes = default(long?), long? resyncTransferredBytes = default(long?), string resyncProgressHealth = default(string), string resyncRequired = default(string), string resyncState = default(string), string agentUpgradeState = default(string), string lastAgentUpgradeType = default(string), string agentUpgradeJobId = default(string), string agentUpgradeAttemptToVersion = default(string), System.Collections.Generic.IList protectedDisks = default(System.Collections.Generic.IList), System.Collections.Generic.IList unprotectedDisks = default(System.Collections.Generic.IList), string isLastUpgradeSuccessful = default(string), bool? isAgentRegistrationSuccessfulAfterFailover = default(bool?), InMageRcmMobilityAgentDetails mobilityAgentDetails = default(InMageRcmMobilityAgentDetails), System.Collections.Generic.IList lastAgentUpgradeErrorDetails = default(System.Collections.Generic.IList), System.Collections.Generic.IList agentUpgradeBlockingErrorDetails = default(System.Collections.Generic.IList), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), InMageRcmDiscoveredProtectedVmDetails discoveredVMDetails = default(InMageRcmDiscoveredProtectedVmDetails), System.Collections.Generic.IList targetVMTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList seedManagedDiskTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetManagedDiskTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetNicTags = default(System.Collections.Generic.IList), string sqlServerLicenseType = default(string), System.Collections.Generic.IList supportedOSVersions = default(System.Collections.Generic.IList), string osName = default(string), SecurityProfileProperties targetVMSecurityProfile = default(SecurityProfileProperties), string targetCapacityReservationGroupId = default(string)) { this.InternalIdentifier = internalIdentifier; @@ -284,6 +287,7 @@ public InMageRcmReplicationDetails() this.SupportedOSVersions = supportedOSVersions; this.OSName = osName; this.TargetVMSecurityProfile = targetVMSecurityProfile; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -672,5 +676,11 @@ public InMageRcmReplicationDetails() /// [Newtonsoft.Json.JsonProperty(PropertyName = "targetVmSecurityProfile")] public SecurityProfileProperties TargetVMSecurityProfile {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmUnplannedFailoverInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmUnplannedFailoverInput.cs index cdbdb93e1865..4bd233278766 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmUnplannedFailoverInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmUnplannedFailoverInput.cs @@ -34,12 +34,16 @@ public InMageRcmUnplannedFailoverInput() /// A value indicating the inplace OS Upgrade version. /// - public InMageRcmUnplannedFailoverInput(string performShutdown, string recoveryPointId = default(string), string osUpgradeVersion = default(string)) + + /// The target capacity reservation group ARM Id. + /// + public InMageRcmUnplannedFailoverInput(string performShutdown, string recoveryPointId = default(string), string osUpgradeVersion = default(string), string targetCapacityReservationGroupId = default(string)) { this.PerformShutdown = performShutdown; this.RecoveryPointId = recoveryPointId; this.OSUpgradeVersion = osUpgradeVersion; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -67,6 +71,12 @@ public InMageRcmUnplannedFailoverInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "osUpgradeVersion")] public string OSUpgradeVersion {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } /// /// Validate the object. /// @@ -82,6 +92,7 @@ public virtual void Validate() + } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmUpdateReplicationProtectedItemInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmUpdateReplicationProtectedItemInput.cs index 911819c6cde5..925516723d81 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmUpdateReplicationProtectedItemInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/InMageRcmUpdateReplicationProtectedItemInput.cs @@ -75,7 +75,13 @@ public InMageRcmUpdateReplicationProtectedItemInput() /// The tags for the target NICs. /// - public InMageRcmUpdateReplicationProtectedItemInput(string targetVMName = default(string), string targetVMSize = default(string), string targetResourceGroupId = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string targetBootDiagnosticsStorageAccountId = default(string), string targetNetworkId = default(string), string testNetworkId = default(string), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), string userSelectedOSName = default(string), System.Collections.Generic.IList targetVMTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetManagedDiskTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetNicTags = default(System.Collections.Generic.IList)) + + /// The list of disk update properties. + /// + + /// The target capacity reservation group ARM Id. + /// + public InMageRcmUpdateReplicationProtectedItemInput(string targetVMName = default(string), string targetVMSize = default(string), string targetResourceGroupId = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string targetBootDiagnosticsStorageAccountId = default(string), string targetNetworkId = default(string), string testNetworkId = default(string), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), string userSelectedOSName = default(string), System.Collections.Generic.IList targetVMTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetManagedDiskTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList targetNicTags = default(System.Collections.Generic.IList), System.Collections.Generic.IList vmDisks = default(System.Collections.Generic.IList), string targetCapacityReservationGroupId = default(string)) { this.TargetVMName = targetVMName; @@ -95,6 +101,8 @@ public InMageRcmUpdateReplicationProtectedItemInput() this.TargetVMTags = targetVMTags; this.TargetManagedDiskTags = targetManagedDiskTags; this.TargetNicTags = targetNicTags; + this.VMDisks = vmDisks; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -205,5 +213,17 @@ public InMageRcmUpdateReplicationProtectedItemInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "targetNicTags")] public System.Collections.Generic.IList TargetNicTags {get; set; } + + /// + /// Gets or sets the list of disk update properties. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "vmDisks")] + public System.Collections.Generic.IList VMDisks {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/MobilityAgentReinstallType.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/MobilityAgentReinstallType.cs new file mode 100644 index 000000000000..5b3c3f4afa17 --- /dev/null +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/MobilityAgentReinstallType.cs @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models +{ + + /// + /// Defines values for MobilityAgentReinstallType. + /// + + + public static class MobilityAgentReinstallType + { + public const string UserTriggered = "UserTriggered"; + public const string AutoTriggered = "AutoTriggered"; + } +} \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ProtectedClustersQueryParameter.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ProtectedClustersQueryParameter.cs index 46bdeb021fe1..0bb4e5329349 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ProtectedClustersQueryParameter.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ProtectedClustersQueryParameter.cs @@ -8,7 +8,7 @@ namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models using System.Linq; /// - /// Query parameters for listing protected clusters + /// Query parameter to enumerate protected clusters. /// public partial class ProtectedClustersQueryParameter { diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReinstallMobilityServiceRequest.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReinstallMobilityServiceRequest.cs new file mode 100644 index 000000000000..996d49216932 --- /dev/null +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReinstallMobilityServiceRequest.cs @@ -0,0 +1,48 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models +{ + using System.Linq; + + /// + /// Request to Reinstall the mobility service on a protected item. + /// + public partial class ReinstallMobilityServiceRequest + { + /// + /// Initializes a new instance of the ReinstallMobilityServiceRequest class. + /// + public ReinstallMobilityServiceRequest() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ReinstallMobilityServiceRequest class. + /// + + /// The properties of the reinstall mobility service request + /// + public ReinstallMobilityServiceRequest(ReinstallMobilityServiceRequestProperties properties = default(ReinstallMobilityServiceRequestProperties)) + + { + this.Properties = properties; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets the properties of the reinstall mobility service request + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties")] + public ReinstallMobilityServiceRequestProperties Properties {get; set; } + } +} \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReinstallMobilityServiceRequestProperties.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReinstallMobilityServiceRequestProperties.cs new file mode 100644 index 000000000000..30616a615f66 --- /dev/null +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReinstallMobilityServiceRequestProperties.cs @@ -0,0 +1,48 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models +{ + using System.Linq; + + /// + /// The properties of an update mobility service request. + /// + public partial class ReinstallMobilityServiceRequestProperties + { + /// + /// Initializes a new instance of the ReinstallMobilityServiceRequestProperties class. + /// + public ReinstallMobilityServiceRequestProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ReinstallMobilityServiceRequestProperties class. + /// + + /// The CS run as account Id. + /// + public ReinstallMobilityServiceRequestProperties(string runAsAccountId = default(string)) + + { + this.RunAsAccountId = runAsAccountId; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets the CS run as account Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "runAsAccountId")] + public string RunAsAccountId {get; set; } + } +} \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReplicationProtectedItemsReinstallMobilityServiceHeaders.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReplicationProtectedItemsReinstallMobilityServiceHeaders.cs new file mode 100644 index 000000000000..9a6748b80bff --- /dev/null +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/ReplicationProtectedItemsReinstallMobilityServiceHeaders.cs @@ -0,0 +1,45 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models +{ + using System.Linq; + + public partial class ReplicationProtectedItemsReinstallMobilityServiceHeaders + { + /// + /// Initializes a new instance of the ReplicationProtectedItemsReinstallMobilityServiceHeaders class. + /// + public ReplicationProtectedItemsReinstallMobilityServiceHeaders() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ReplicationProtectedItemsReinstallMobilityServiceHeaders class. + /// + + /// + /// + public ReplicationProtectedItemsReinstallMobilityServiceHeaders(string location = default(string)) + + { + this.Location = location; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } + } +} \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/UpdateDiskInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/UpdateDiskInput.cs index bb6e92e99cc8..13655f5912fd 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/UpdateDiskInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/UpdateDiskInput.cs @@ -29,11 +29,23 @@ public UpdateDiskInput() /// The target disk name. /// - public UpdateDiskInput(string diskId, string targetDiskName = default(string)) + + /// The number of IOPS allowed for Premium V2 and Ultra disks. + /// + + /// The total throughput in Mbps for Premium V2 and Ultra disks. + /// + + /// The target disk size in GB. + /// + public UpdateDiskInput(string diskId, string targetDiskName = default(string), long? iops = default(long?), long? throughputInMbps = default(long?), long? diskSizeInGb = default(long?)) { this.DiskId = diskId; this.TargetDiskName = targetDiskName; + this.Iops = iops; + this.ThroughputInMbps = throughputInMbps; + this.DiskSizeInGb = diskSizeInGb; CustomInit(); } @@ -54,6 +66,24 @@ public UpdateDiskInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "targetDiskName")] public string TargetDiskName {get; set; } + + /// + /// Gets or sets the number of IOPS allowed for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "iops")] + public long? Iops {get; set; } + + /// + /// Gets or sets the total throughput in Mbps for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "throughputInMbps")] + public long? ThroughputInMbps {get; set; } + + /// + /// Gets or sets the target disk size in GB. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "diskSizeInGB")] + public long? DiskSizeInGb {get; set; } /// /// Validate the object. /// diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtDiskInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtDiskInput.cs index 43e7e66c27e0..8524c2ddbb97 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtDiskInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtDiskInput.cs @@ -45,7 +45,16 @@ public VMwareCbtDiskInput() /// The logical sector size (in bytes), 512 by default. /// - public VMwareCbtDiskInput(string diskId, string isOSDisk, string logStorageAccountId, string logStorageAccountSasSecretName, string diskType = default(string), string diskEncryptionSetId = default(string), int? sectorSizeInBytes = default(int?)) + + /// The number of IOPS allowed for Premium V2 and Ultra disks. + /// + + /// The total throughput in Mbps for Premium V2 and Ultra disks. + /// + + /// The target disk size in GB. + /// + public VMwareCbtDiskInput(string diskId, string isOSDisk, string logStorageAccountId, string logStorageAccountSasSecretName, string diskType = default(string), string diskEncryptionSetId = default(string), int? sectorSizeInBytes = default(int?), long? iops = default(long?), long? throughputInMbps = default(long?), long? diskSizeInGb = default(long?)) { this.DiskId = diskId; @@ -55,6 +64,9 @@ public VMwareCbtDiskInput() this.LogStorageAccountSasSecretName = logStorageAccountSasSecretName; this.DiskEncryptionSetId = diskEncryptionSetId; this.SectorSizeInBytes = sectorSizeInBytes; + this.Iops = iops; + this.ThroughputInMbps = throughputInMbps; + this.DiskSizeInGb = diskSizeInGb; CustomInit(); } @@ -105,6 +117,24 @@ public VMwareCbtDiskInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "sectorSizeInBytes")] public int? SectorSizeInBytes {get; set; } + + /// + /// Gets or sets the number of IOPS allowed for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "iops")] + public long? Iops {get; set; } + + /// + /// Gets or sets the total throughput in Mbps for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "throughputInMbps")] + public long? ThroughputInMbps {get; set; } + + /// + /// Gets or sets the target disk size in GB. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "diskSizeInGB")] + public long? DiskSizeInGb {get; set; } /// /// Validate the object. /// diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtEnableMigrationInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtEnableMigrationInput.cs index 6cc8c4f15986..2cd191e33cb8 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtEnableMigrationInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtEnableMigrationInput.cs @@ -105,7 +105,10 @@ public VMwareCbtEnableMigrationInput() /// The OS name selected by user. /// - public VMwareCbtEnableMigrationInput(string vmwareMachineId, System.Collections.Generic.IList disksToInclude, string dataMoverRunAsAccountId, string snapshotRunAsAccountId, string targetResourceGroupId, string targetNetworkId, string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), string performSqlBulkRegistration = default(string), string targetVMName = default(string), string targetVMSize = default(string), string testNetworkId = default(string), string targetSubnetName = default(string), string testSubnetName = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string confidentialVMKeyVaultId = default(string), VMwareCbtSecurityProfileProperties targetVMSecurityProfile = default(VMwareCbtSecurityProfileProperties), string targetBootDiagnosticsStorageAccountId = default(string), string performAutoResync = default(string), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary seedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary), string userSelectedOSName = default(string)) + + /// The target capacity reservation group ARM Id. + /// + public VMwareCbtEnableMigrationInput(string vmwareMachineId, System.Collections.Generic.IList disksToInclude, string dataMoverRunAsAccountId, string snapshotRunAsAccountId, string targetResourceGroupId, string targetNetworkId, string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), string performSqlBulkRegistration = default(string), string targetVMName = default(string), string targetVMSize = default(string), string testNetworkId = default(string), string targetSubnetName = default(string), string testSubnetName = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string confidentialVMKeyVaultId = default(string), VMwareCbtSecurityProfileProperties targetVMSecurityProfile = default(VMwareCbtSecurityProfileProperties), string targetBootDiagnosticsStorageAccountId = default(string), string performAutoResync = default(string), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary seedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary), string userSelectedOSName = default(string), string targetCapacityReservationGroupId = default(string)) { this.VmwareMachineId = vmwareMachineId; @@ -135,6 +138,7 @@ public VMwareCbtEnableMigrationInput() this.TargetDiskTags = targetDiskTags; this.TargetNicTags = targetNicTags; this.UserSelectedOSName = userSelectedOSName; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -306,6 +310,12 @@ public VMwareCbtEnableMigrationInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "userSelectedOSName")] public string UserSelectedOSName {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } /// /// Validate the object. /// @@ -372,6 +382,7 @@ public virtual void Validate() + } diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtMigrateInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtMigrateInput.cs index a753cbfc1520..e5f8f2af9718 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtMigrateInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtMigrateInput.cs @@ -33,12 +33,16 @@ public VMwareCbtMigrateInput() /// The managed run command script input. /// - public VMwareCbtMigrateInput(string performShutdown, string osUpgradeVersion = default(string), System.Collections.Generic.IList postMigrationSteps = default(System.Collections.Generic.IList)) + + /// The target capacity reservation group ARM Id. + /// + public VMwareCbtMigrateInput(string performShutdown, string osUpgradeVersion = default(string), System.Collections.Generic.IList postMigrationSteps = default(System.Collections.Generic.IList), string targetCapacityReservationGroupId = default(string)) { this.PerformShutdown = performShutdown; this.OSUpgradeVersion = osUpgradeVersion; this.PostMigrationSteps = postMigrationSteps; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -65,6 +69,12 @@ public VMwareCbtMigrateInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "postMigrationSteps")] public System.Collections.Generic.IList PostMigrationSteps {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } /// /// Validate the object. /// @@ -89,6 +99,7 @@ public virtual void Validate() } } } + } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtMigrationDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtMigrationDetails.cs index 364bc5ed05b8..4a7bbe02b5ba 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtMigrationDetails.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtMigrationDetails.cs @@ -173,7 +173,10 @@ public VMwareCbtMigrationDetails() /// A value indicating the SRS operation name. /// - public VMwareCbtMigrationDetails(string vmwareMachineId = default(string), string osType = default(string), string osName = default(string), string firmwareType = default(string), string targetGeneration = default(string), string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), string dataMoverRunAsAccountId = default(string), string snapshotRunAsAccountId = default(string), string storageAccountId = default(string), string targetVMName = default(string), string targetVMSize = default(string), string targetLocation = default(string), string targetResourceGroupId = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string confidentialVMKeyVaultId = default(string), VMwareCbtSecurityProfileProperties targetVMSecurityProfile = default(VMwareCbtSecurityProfileProperties), string targetBootDiagnosticsStorageAccountId = default(string), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IList protectedDisks = default(System.Collections.Generic.IList), string targetNetworkId = default(string), string testNetworkId = default(string), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary), string migrationRecoveryPointId = default(string), System.DateTime? lastRecoveryPointReceived = default(System.DateTime?), string lastRecoveryPointId = default(string), int? initialSeedingProgressPercentage = default(int?), int? migrationProgressPercentage = default(int?), int? resyncProgressPercentage = default(int?), int? resumeProgressPercentage = default(int?), int? deltaSyncProgressPercentage = default(int?), string isCheckSumResyncCycle = default(string), long? initialSeedingRetryCount = default(long?), long? resyncRetryCount = default(long?), long? resumeRetryCount = default(long?), long? deltaSyncRetryCount = default(long?), string resyncRequired = default(string), string resyncState = default(string), string performAutoResync = default(string), System.Collections.Generic.IDictionary seedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IList supportedOSVersions = default(System.Collections.Generic.IList), ApplianceMonitoringDetails applianceMonitoringDetails = default(ApplianceMonitoringDetails), GatewayOperationDetails gatewayOperationDetails = default(GatewayOperationDetails), string operationName = default(string)) + + /// The target capacity reservation group ARM Id. + /// + public VMwareCbtMigrationDetails(string vmwareMachineId = default(string), string osType = default(string), string osName = default(string), string firmwareType = default(string), string targetGeneration = default(string), string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), string dataMoverRunAsAccountId = default(string), string snapshotRunAsAccountId = default(string), string storageAccountId = default(string), string targetVMName = default(string), string targetVMSize = default(string), string targetLocation = default(string), string targetResourceGroupId = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string confidentialVMKeyVaultId = default(string), VMwareCbtSecurityProfileProperties targetVMSecurityProfile = default(VMwareCbtSecurityProfileProperties), string targetBootDiagnosticsStorageAccountId = default(string), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IList protectedDisks = default(System.Collections.Generic.IList), string targetNetworkId = default(string), string testNetworkId = default(string), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary), string migrationRecoveryPointId = default(string), System.DateTime? lastRecoveryPointReceived = default(System.DateTime?), string lastRecoveryPointId = default(string), int? initialSeedingProgressPercentage = default(int?), int? migrationProgressPercentage = default(int?), int? resyncProgressPercentage = default(int?), int? resumeProgressPercentage = default(int?), int? deltaSyncProgressPercentage = default(int?), string isCheckSumResyncCycle = default(string), long? initialSeedingRetryCount = default(long?), long? resyncRetryCount = default(long?), long? resumeRetryCount = default(long?), long? deltaSyncRetryCount = default(long?), string resyncRequired = default(string), string resyncState = default(string), string performAutoResync = default(string), System.Collections.Generic.IDictionary seedDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IList supportedOSVersions = default(System.Collections.Generic.IList), ApplianceMonitoringDetails applianceMonitoringDetails = default(ApplianceMonitoringDetails), GatewayOperationDetails gatewayOperationDetails = default(GatewayOperationDetails), string operationName = default(string), string targetCapacityReservationGroupId = default(string)) { this.VmwareMachineId = vmwareMachineId; @@ -225,6 +228,7 @@ public VMwareCbtMigrationDetails() this.ApplianceMonitoringDetails = applianceMonitoringDetails; this.GatewayOperationDetails = gatewayOperationDetails; this.OperationName = operationName; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -528,5 +532,11 @@ public VMwareCbtMigrationDetails() /// [Newtonsoft.Json.JsonProperty(PropertyName = "operationName")] public string OperationName {get; private set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtProtectedDiskDetails.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtProtectedDiskDetails.cs index 46566db94c09..dd0f1ec9d222 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtProtectedDiskDetails.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtProtectedDiskDetails.cs @@ -72,7 +72,16 @@ public VMwareCbtProtectedDiskDetails() /// The logical sector size (in bytes), 512 by default. /// - public VMwareCbtProtectedDiskDetails(string diskId = default(string), string diskName = default(string), string diskType = default(string), string diskPath = default(string), string isOSDisk = default(string), long? capacityInBytes = default(long?), string logStorageAccountId = default(string), string logStorageAccountSasSecretName = default(string), string diskEncryptionSetId = default(string), string seedManagedDiskId = default(string), string seedBlobUri = default(string), string targetManagedDiskId = default(string), string targetBlobUri = default(string), string targetDiskName = default(string), GatewayOperationDetails gatewayOperationDetails = default(GatewayOperationDetails), int? sectorSizeInBytes = default(int?)) + + /// The number of IOPS allowed for Premium V2 and Ultra disks. + /// + + /// The total throughput in Mbps for Premium V2 and Ultra disks. + /// + + /// The target disk size in GB. + /// + public VMwareCbtProtectedDiskDetails(string diskId = default(string), string diskName = default(string), string diskType = default(string), string diskPath = default(string), string isOSDisk = default(string), long? capacityInBytes = default(long?), string logStorageAccountId = default(string), string logStorageAccountSasSecretName = default(string), string diskEncryptionSetId = default(string), string seedManagedDiskId = default(string), string seedBlobUri = default(string), string targetManagedDiskId = default(string), string targetBlobUri = default(string), string targetDiskName = default(string), GatewayOperationDetails gatewayOperationDetails = default(GatewayOperationDetails), int? sectorSizeInBytes = default(int?), long? iops = default(long?), long? throughputInMbps = default(long?), long? diskSizeInGb = default(long?)) { this.DiskId = diskId; @@ -91,6 +100,9 @@ public VMwareCbtProtectedDiskDetails() this.TargetDiskName = targetDiskName; this.GatewayOperationDetails = gatewayOperationDetails; this.SectorSizeInBytes = sectorSizeInBytes; + this.Iops = iops; + this.ThroughputInMbps = throughputInMbps; + this.DiskSizeInGb = diskSizeInGb; CustomInit(); } @@ -195,5 +207,23 @@ public VMwareCbtProtectedDiskDetails() /// [Newtonsoft.Json.JsonProperty(PropertyName = "sectorSizeInBytes")] public int? SectorSizeInBytes {get; set; } + + /// + /// Gets or sets the number of IOPS allowed for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "iops")] + public long? Iops {get; set; } + + /// + /// Gets or sets the total throughput in Mbps for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "throughputInMbps")] + public long? ThroughputInMbps {get; set; } + + /// + /// Gets or sets the target disk size in GB. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "diskSizeInGB")] + public long? DiskSizeInGb {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtUpdateDiskInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtUpdateDiskInput.cs index 7c564466f0cf..c2feca2b0e8c 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtUpdateDiskInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtUpdateDiskInput.cs @@ -32,12 +32,24 @@ public VMwareCbtUpdateDiskInput() /// A value indicating whether the disk is the OS disk. /// - public VMwareCbtUpdateDiskInput(string diskId, string targetDiskName = default(string), string isOSDisk = default(string)) + + /// The number of IOPS allowed for Premium V2 and Ultra disks. + /// + + /// The total throughput in Mbps for Premium V2 and Ultra disks. + /// + + /// The target disk size in GB. + /// + public VMwareCbtUpdateDiskInput(string diskId, string targetDiskName = default(string), string isOSDisk = default(string), long? iops = default(long?), long? throughputInMbps = default(long?), long? diskSizeInGb = default(long?)) { this.DiskId = diskId; this.TargetDiskName = targetDiskName; this.IsOSDisk = isOSDisk; + this.Iops = iops; + this.ThroughputInMbps = throughputInMbps; + this.DiskSizeInGb = diskSizeInGb; CustomInit(); } @@ -64,6 +76,24 @@ public VMwareCbtUpdateDiskInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "isOSDisk")] public string IsOSDisk {get; set; } + + /// + /// Gets or sets the number of IOPS allowed for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "iops")] + public long? Iops {get; set; } + + /// + /// Gets or sets the total throughput in Mbps for Premium V2 and Ultra disks. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "throughputInMbps")] + public long? ThroughputInMbps {get; set; } + + /// + /// Gets or sets the target disk size in GB. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "diskSizeInGB")] + public long? DiskSizeInGb {get; set; } /// /// Validate the object. /// diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtUpdateMigrationItemInput.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtUpdateMigrationItemInput.cs index 65dc163ef18e..a0216c8715ce 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtUpdateMigrationItemInput.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/Models/VMwareCbtUpdateMigrationItemInput.cs @@ -81,7 +81,10 @@ public VMwareCbtUpdateMigrationItemInput() /// The tags for the target NICs. /// - public VMwareCbtUpdateMigrationItemInput(string targetVMName = default(string), string targetVMSize = default(string), string targetResourceGroupId = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string targetBootDiagnosticsStorageAccountId = default(string), string targetNetworkId = default(string), string testNetworkId = default(string), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), System.Collections.Generic.IList vmDisks = default(System.Collections.Generic.IList), string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), string userSelectedOSName = default(string), string performAutoResync = default(string), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary)) + + /// The target capacity reservation group ARM Id. + /// + public VMwareCbtUpdateMigrationItemInput(string targetVMName = default(string), string targetVMSize = default(string), string targetResourceGroupId = default(string), string targetAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string targetBootDiagnosticsStorageAccountId = default(string), string targetNetworkId = default(string), string testNetworkId = default(string), System.Collections.Generic.IList vmNics = default(System.Collections.Generic.IList), System.Collections.Generic.IList vmDisks = default(System.Collections.Generic.IList), string licenseType = default(string), string sqlServerLicenseType = default(string), string linuxLicenseType = default(string), string userSelectedOSName = default(string), string performAutoResync = default(string), System.Collections.Generic.IDictionary targetVMTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetDiskTags = default(System.Collections.Generic.IDictionary), System.Collections.Generic.IDictionary targetNicTags = default(System.Collections.Generic.IDictionary), string targetCapacityReservationGroupId = default(string)) { this.TargetVMName = targetVMName; @@ -103,6 +106,7 @@ public VMwareCbtUpdateMigrationItemInput() this.TargetVMTags = targetVMTags; this.TargetDiskTags = targetDiskTags; this.TargetNicTags = targetNicTags; + this.TargetCapacityReservationGroupId = targetCapacityReservationGroupId; CustomInit(); } @@ -225,5 +229,11 @@ public VMwareCbtUpdateMigrationItemInput() /// [Newtonsoft.Json.JsonProperty(PropertyName = "targetNicTags")] public System.Collections.Generic.IDictionary TargetNicTags {get; set; } + + /// + /// Gets or sets the target capacity reservation group ARM Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetCapacityReservationGroupId")] + public string TargetCapacityReservationGroupId {get; set; } } } \ No newline at end of file diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/ReplicationProtectedItemsOperations.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/ReplicationProtectedItemsOperations.cs index 27974844404b..2c459f953210 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/ReplicationProtectedItemsOperations.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/ReplicationProtectedItemsOperations.cs @@ -1180,6 +1180,42 @@ internal ReplicationProtectedItemsOperations (SiteRecoveryManagementClient clien return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); } + /// + /// The operation to reinstall the installed mobility service software on a + /// replication protected item to the latest available version. + /// + /// + /// The name of the resource group where the recovery services vault is + /// present. + /// + /// + /// The name of the recovery services vault. + /// + /// + /// The name of the fabric containing the protected item. + /// + /// + /// The name of the container containing the protected item. + /// + /// + /// The name of the protected item on which the agent is to be updated. + /// + /// + /// The properties of the reinstall mobility service request + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> ReinstallMobilityServiceWithHttpMessagesAsync(string resourceGroupName, string resourceName, string fabricName, string protectionContainerName, string replicatedProtectedItemName, ReinstallMobilityServiceRequestProperties properties = default(ReinstallMobilityServiceRequestProperties), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginReinstallMobilityServiceWithHttpMessagesAsync(resourceGroupName, resourceName, fabricName, protectionContainerName, replicatedProtectedItemName, properties, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + /// /// Gets the list of ASR replication protected items in the vault. /// @@ -6258,6 +6294,298 @@ internal ReplicationProtectedItemsOperations (SiteRecoveryManagementClient clien + } + /// + /// The operation to reinstall the installed mobility service software on a + /// replication protected item to the latest available version. + /// + /// + /// The name of the resource group where the recovery services vault is + /// present. + /// + /// + /// The name of the recovery services vault. + /// + /// + /// The name of the fabric containing the protected item. + /// + /// + /// The name of the container containing the protected item. + /// + /// + /// The name of the protected item on which the agent is to be updated. + /// + /// + /// The properties of the reinstall mobility service request + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> BeginReinstallMobilityServiceWithHttpMessagesAsync(string resourceGroupName, string resourceName, string fabricName, string protectionContainerName, string replicatedProtectedItemName, ReinstallMobilityServiceRequestProperties properties = default(ReinstallMobilityServiceRequestProperties), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + + if (resourceName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceName"); + } + if (resourceName != null) + { + if (!System.Text.RegularExpressions.Regex.IsMatch(resourceName, "^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceName", "^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"); + } + } + if (this.Client.SubscriptionId == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + + if (fabricName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "fabricName"); + } + if (fabricName != null) + { + if (!System.Text.RegularExpressions.Regex.IsMatch(fabricName, "^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "fabricName", "^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"); + } + } + if (protectionContainerName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "protectionContainerName"); + } + if (protectionContainerName != null) + { + if (!System.Text.RegularExpressions.Regex.IsMatch(protectionContainerName, ".*")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "protectionContainerName", ".*"); + } + } + if (replicatedProtectedItemName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "replicatedProtectedItemName"); + } + if (replicatedProtectedItemName != null) + { + if (!System.Text.RegularExpressions.Regex.IsMatch(replicatedProtectedItemName, "^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "replicatedProtectedItemName", "^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"); + } + } + ReinstallMobilityServiceRequest updateMobilityServiceRequest = new ReinstallMobilityServiceRequest(); + if(properties != null) + { + updateMobilityServiceRequest.Properties = properties; + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("resourceName", resourceName); + tracingParameters.Add("fabricName", fabricName); + tracingParameters.Add("protectionContainerName", protectionContainerName); + tracingParameters.Add("replicatedProtectedItemName", replicatedProtectedItemName); + + tracingParameters.Add("updateMobilityServiceRequest", updateMobilityServiceRequest); + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginReinstallMobilityService", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reinstallMobilityService").ToString(); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{resourceName}", System.Uri.EscapeDataString(resourceName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + _url = _url.Replace("{fabricName}", System.Uri.EscapeDataString(fabricName)); + _url = _url.Replace("{protectionContainerName}", System.Uri.EscapeDataString(protectionContainerName)); + _url = _url.Replace("{replicatedProtectedItemName}", System.Uri.EscapeDataString(replicatedProtectedItemName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("POST"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + if(updateMobilityServiceRequest != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(updateMobilityServiceRequest, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200 && (int)_statusCode != 202) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + } /// /// Gets the list of ASR replication protected items in the protection diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/ReplicationProtectedItemsOperationsExtensions.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/ReplicationProtectedItemsOperationsExtensions.cs index c7d618dbdbad..d3ffb920bac2 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/ReplicationProtectedItemsOperationsExtensions.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/ReplicationProtectedItemsOperationsExtensions.cs @@ -1262,6 +1262,67 @@ public static ReplicationProtectedItem UpdateAppliance(this IReplicationProtecte } } /// + /// The operation to reinstall the installed mobility service software on a + /// replication protected item to the latest available version. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group where the recovery services vault is + /// present. + /// + /// + /// The name of the recovery services vault. + /// + /// + /// The name of the fabric containing the protected item. + /// + /// + /// The name of the container containing the protected item. + /// + /// + /// The name of the protected item on which the agent is to be updated. + /// + public static ReplicationProtectedItem ReinstallMobilityService(this IReplicationProtectedItemsOperations operations, string resourceGroupName, string resourceName, string fabricName, string protectionContainerName, string replicatedProtectedItemName, ReinstallMobilityServiceRequestProperties properties = default(ReinstallMobilityServiceRequestProperties)) + { + return ((IReplicationProtectedItemsOperations)operations).ReinstallMobilityServiceAsync(resourceGroupName, resourceName, fabricName, protectionContainerName, replicatedProtectedItemName, properties).GetAwaiter().GetResult(); + } + + /// + /// The operation to reinstall the installed mobility service software on a + /// replication protected item to the latest available version. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group where the recovery services vault is + /// present. + /// + /// + /// The name of the recovery services vault. + /// + /// + /// The name of the fabric containing the protected item. + /// + /// + /// The name of the container containing the protected item. + /// + /// + /// The name of the protected item on which the agent is to be updated. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task ReinstallMobilityServiceAsync(this IReplicationProtectedItemsOperations operations, string resourceGroupName, string resourceName, string fabricName, string protectionContainerName, string replicatedProtectedItemName, ReinstallMobilityServiceRequestProperties properties = default(ReinstallMobilityServiceRequestProperties), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ReinstallMobilityServiceWithHttpMessagesAsync(resourceGroupName, resourceName, fabricName, protectionContainerName, replicatedProtectedItemName, properties, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// /// Gets the list of ASR replication protected items in the vault. /// /// @@ -2452,6 +2513,67 @@ public static ReplicationProtectedItem BeginUpdateAppliance(this IReplicationPro } } /// + /// The operation to reinstall the installed mobility service software on a + /// replication protected item to the latest available version. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group where the recovery services vault is + /// present. + /// + /// + /// The name of the recovery services vault. + /// + /// + /// The name of the fabric containing the protected item. + /// + /// + /// The name of the container containing the protected item. + /// + /// + /// The name of the protected item on which the agent is to be updated. + /// + public static ReplicationProtectedItem BeginReinstallMobilityService(this IReplicationProtectedItemsOperations operations, string resourceGroupName, string resourceName, string fabricName, string protectionContainerName, string replicatedProtectedItemName, ReinstallMobilityServiceRequestProperties properties = default(ReinstallMobilityServiceRequestProperties)) + { + return ((IReplicationProtectedItemsOperations)operations).BeginReinstallMobilityServiceAsync(resourceGroupName, resourceName, fabricName, protectionContainerName, replicatedProtectedItemName, properties).GetAwaiter().GetResult(); + } + + /// + /// The operation to reinstall the installed mobility service software on a + /// replication protected item to the latest available version. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group where the recovery services vault is + /// present. + /// + /// + /// The name of the recovery services vault. + /// + /// + /// The name of the fabric containing the protected item. + /// + /// + /// The name of the container containing the protected item. + /// + /// + /// The name of the protected item on which the agent is to be updated. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task BeginReinstallMobilityServiceAsync(this IReplicationProtectedItemsOperations operations, string resourceGroupName, string resourceName, string fabricName, string protectionContainerName, string replicatedProtectedItemName, ReinstallMobilityServiceRequestProperties properties = default(ReinstallMobilityServiceRequestProperties), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.BeginReinstallMobilityServiceWithHttpMessagesAsync(resourceGroupName, resourceName, fabricName, protectionContainerName, replicatedProtectedItemName, properties, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// /// Gets the list of ASR replication protected items in the protection /// container. /// diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/SiteRecoveryManagementClient.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/SiteRecoveryManagementClient.cs index a43e4dadb6d0..e7a18fd4810c 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/SiteRecoveryManagementClient.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/Generated/SiteRecoveryManagementClient.cs @@ -451,7 +451,7 @@ private void Initialize() this.ReplicationVaultHealth = new ReplicationVaultHealthOperations(this); this.ReplicationVaultSetting = new ReplicationVaultSettingOperations(this); this.BaseUri = new System.Uri("https://management.azure.com"); - this.ApiVersion = "2024-10-01"; + this.ApiVersion = "2025-08-01"; this.AcceptLanguage = "en-US"; this.LongRunningOperationRetryTimeout = 30; this.GenerateClientRequestId = true; From 5a4d2e78d5053f2159dcc937490e8f9bc8856bc5 Mon Sep 17 00:00:00 2001 From: Anushtha Bageria Date: Tue, 14 Oct 2025 03:26:42 +0530 Subject: [PATCH 2/2] Adding platform fault domain and avzone support --- .../README.md | 4 +-- .../ScenarioTests/A2A/A2ATestsHelper.ps1 | 10 ++++++ .../ScenarioTests/A2A/AsrA2ATests.ps1 | 14 +++++--- ...veryServicesAsrReplicationProtectedItem.cs | 11 +++++- ...veryServicesAsrReplicationProtectedItem.cs | 16 ++++++++- ...mRecoveryServicesAsrProtectionDirection.cs | 20 ++++++++++- ...veryServicesAsrReplicationProtectedItem.md | 17 ++++++++++ ...veryServicesAsrReplicationProtectedItem.md | 16 +++++++++ ...zRecoveryServicesAsrProtectionDirection.md | 34 +++++++++++++++++++ 9 files changed, 133 insertions(+), 9 deletions(-) diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/README.md b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/README.md index b5412ecb4bed..1582c85df1d2 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/README.md +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Management.Sdk/README.md @@ -23,9 +23,9 @@ payload-flattening-threshold: 2 ### ``` yaml -commit: 203d98d48deb3c3daead3101d106a1977eba2453 +commit: 511060cc81ed358bd4a8be701f7bdf4196a440e2 input-file: - - https://github.com/Azure/azure-rest-api-specs/blob/$(commit)/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2024-10-01/service.json + - https://github.com/Azure/azure-rest-api-specs/blob/$(commit)/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-08-01/service.json output-folder: Generated diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/A2A/A2ATestsHelper.ps1 b/src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/A2A/A2ATestsHelper.ps1 index 615c7e443836..9c55a59029bb 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/A2A/A2ATestsHelper.ps1 +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/A2A/A2ATestsHelper.ps1 @@ -183,6 +183,16 @@ function getClusterName{ return "powershell-cluster"; } +function getPlatformFaultDomain +{ + return 0 +} + +function getPlatformUpdateDomain1 +{ + return 1 +} + function Get-RandomSuffix( [int] $size = 8) { diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/A2A/AsrA2ATests.ps1 b/src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/A2A/AsrA2ATests.ps1 index deb201d5859f..cd0955eef9e8 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/A2A/AsrA2ATests.ps1 +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/A2A/AsrA2ATests.ps1 @@ -1931,6 +1931,8 @@ function Test-VMSSReplication { $recMappingName = getRecoveryContainerMapping $primaryNetMapping = getPrimaryNetworkMapping $recoveryNetMapping = getRecoveryNetworkMapping + $platformFaultDomain = getPlatformDomain + $platformFaultDomain1 = getPlatformDomain1 #create recovery side resources $recRgName = getRecoveryResourceGroupName @@ -1941,7 +1943,7 @@ function Test-VMSSReplication { $recRg = $RecoveryAzureNetworkId.Substring(0, $index) #create virtual Machine scale set $stnd = "Standard" - $vmssConfig = New-AzVmssConfig -Location $recoveryLocation -PlatformFaultDomainCount 1 -SinglePlacementGroup 0 -SecurityType $stnd + $vmssConfig = New-AzVmssConfig -Location $recoveryLocation -PlatformFaultDomainCount 2 -SinglePlacementGroup 0 -SecurityType $stnd $recVmss = new-azvmss -resourcegroupname $recRgName -vmscalesetname 'vmss-asr' -virtualmachinescaleset $vmssConfig $recVmss1 = new-azvmss -resourcegroupname $recRgName -vmscalesetname 'vmss1-asr' -virtualmachinescaleset $vmssConfig @@ -2017,7 +2019,7 @@ function Test-VMSSReplication { $v = New-AzRecoveryServicesAsrAzureToAzureDiskReplicationConfig -ManagedDisk -LogStorageAccountId $logStg ` -DiskId $vhdid -RecoveryResourceGroupId $recRg -RecoveryReplicaDiskAccountType $RecoveryReplicaDiskAccountType ` -RecoveryTargetDiskAccountType $RecoveryTargetDiskAccountType - $enableDRjob = New-AzRecoveryServicesAsrReplicationProtectedItem -AzureToAzure -AzureVmId $vm.Id -Name $vmName -ProtectionContainerMapping $mapping -RecoveryResourceGroupId $recRg -AzureToAzureDiskReplicationConfiguration $v -RecoveryVirtualMachineScaleSetId $recVmss.Id + $enableDRjob = New-AzRecoveryServicesAsrReplicationProtectedItem -AzureToAzure -AzureVmId $vm.Id -Name $vmName -ProtectionContainerMapping $mapping -RecoveryResourceGroupId $recRg -AzureToAzureDiskReplicationConfiguration $v -RecoveryVirtualMachineScaleSetId $recVmss.Id -PlatformFaultDomain $platformFaultDomain [Microsoft.Rest.ClientRuntime.Azure.TestFramework.TestUtilities]::Wait(20 * 1000) [Microsoft.Rest.ClientRuntime.Azure.TestFramework.TestUtilities]::Wait(20 * 1000) WaitForJobCompletion -JobId $enableDRjob.Name @@ -2026,12 +2028,14 @@ function Test-VMSSReplication { #Validate vmss Set in replicated vm properties $pe = Get-AzRecoveryServicesAsrReplicationProtectedItem -ProtectionContainer $pc -Name $vmName Assert-NotNull($pe.providerSpecificDetails.RecoveryVirtualMachineScaleSetId) + Assert-NotNull($pe.providerSpecificDetails.PlatformFaultDomain) #Update Vmpropertie - $updateDRjob = Set-AzRecoveryServicesAsrReplicationProtectedItem -InputObject $pe -RecoveryVirtualMachineScaleSetId $recVmss1.Id + $updateDRjob = Set-AzRecoveryServicesAsrReplicationProtectedItem -InputObject $pe -RecoveryVirtualMachineScaleSetId $recVmss1.Id -PlatformFaultDomain $platformFaultDomain1 WaitForJobCompletion -JobId $updateDRjob.Name $pe = Get-AzRecoveryServicesAsrReplicationProtectedItem -ProtectionContainer $pc -Name $vmName Assert-NotNull($pe.providerSpecificDetails.RecoveryVirtualMachineScaleSetId) + Assert-NotNull($pe.providerSpecificDetails.PlatformFaultDomain) #Failover $failoverjob = Start-AzRecoveryServicesAsrUnPlannedFailoverJob -ReplicationProtectedItem $pe -Direction PrimaryToRecovery -PerformSourceSideAction @@ -2212,7 +2216,9 @@ $CacheStorageAccount = "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/reso $rgId = "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/vijami-alertrg" -$ReprotectJob = Update-AzRecoveryServicesAsrProtectionDirection -AzureToAzure -ReplicationProtectedItem $ReplicationProtectedItem -ProtectionContainerMapping $RecoveryMapping -LogStorageAccountId $CacheStorageAccount -RecoveryResourceGroupID $rgId +$platformFaultDomain = 1 + +$ReprotectJob = Update-AzRecoveryServicesAsrProtectionDirection -AzureToAzure -ReplicationProtectedItem $ReplicationProtectedItem -ProtectionContainerMapping $RecoveryMapping -LogStorageAccountId $CacheStorageAccount -RecoveryResourceGroupID $rgId -PlatformFaultDomain $platformFaultDomain [Microsoft.Rest.ClientRuntime.Azure.TestFramework.TestUtilities]::Wait(20 * 1000) WaitForJobCompletion -JobId $ReprotectJob.Name diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/NewAzureRmRecoveryServicesAsrReplicationProtectedItem.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/NewAzureRmRecoveryServicesAsrReplicationProtectedItem.cs index a64c756306b1..f5a72eb73035 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/NewAzureRmRecoveryServicesAsrReplicationProtectedItem.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/NewAzureRmRecoveryServicesAsrReplicationProtectedItem.cs @@ -577,6 +577,14 @@ public class NewAzureRmRecoveryServicesAsrReplicationProtectedItem : SiteRecover [ValidateNotNullOrEmpty] public ASRReplicationProtectionCluster ReplicationProtectionCluster { get; set; } + /// + /// Gets or sets the resource ID of virtual machine scale set to failover this virtual machine to. + /// + [Parameter(ParameterSetName = ASRParameterSets.AzureToAzure, HelpMessage = "Specify the platform fault domain to be used by the failover Vm in target recovery region.")] + [Parameter(ParameterSetName = ASRParameterSets.AzureToAzureWithoutDiskDetails, HelpMessage = "Specify the platform fault domain to be used by the failover Vm in target recovery region.")] + [ValidateNotNullOrEmpty] + public int? PlatformFaultDomain { get; set; } + /// /// ProcessRecord of the command. /// @@ -994,7 +1002,8 @@ private void AzureToAzureReplication(EnableProtectionInput input) RecoveryExtendedLocation = this.IsParameterBound(c => c.RecoveryExtendedLocation) ? new ExtendedLocation { Name = this.RecoveryExtendedLocation - } : null + } : null, + PlatformFaultDomain = this.PlatformFaultDomain, }; if (!string.IsNullOrEmpty(this.ReplicationGroupName)) diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/SetAzureRmRecoveryServicesAsrReplicationProtectedItem.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/SetAzureRmRecoveryServicesAsrReplicationProtectedItem.cs index 03d82d173afd..563eba968472 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/SetAzureRmRecoveryServicesAsrReplicationProtectedItem.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/SetAzureRmRecoveryServicesAsrReplicationProtectedItem.cs @@ -307,6 +307,13 @@ public class SetAzureRmRecoveryServicesAsrReplicationProtectedItem : SiteRecover [ValidateNotNullOrEmpty] public string TestNetworkId { get; set; } + /// + /// Gets or sets the platform fault domain for replication protected item after failover. + /// + [Parameter] + [ValidateNotNullOrEmpty] + public int? PlatformFaultDomain { get; set; } + /// /// ProcessRecord of the command. /// @@ -354,6 +361,7 @@ public override void ExecuteSiteRecoveryCmdlet() this.IsParameterBound(c => c.RecoveryProximityPlacementGroupId) && this.IsParameterBound(c => c.RecoveryVirtualMachineScaleSetId) && this.IsParameterBound(c => c.RecoveryCapacityReservationGroupId) && + this.IsParameterBound(c => c.PlatformFaultDomain) && string.IsNullOrEmpty(this.RecoveryCloudServiceId) && string.IsNullOrEmpty(this.RecoveryResourceGroupId) && string.IsNullOrEmpty(this.LicenseType) && @@ -419,6 +427,7 @@ public override void ExecuteSiteRecoveryCmdlet() var recoveryNicTag = this.RecoveryNicTag; var diskTag = this.DiskTag; var tfoNetworkId = string.Empty; + var platformFaultDomain = this.PlatformFaultDomain; var vMNicInputDetailsList = new List(); var providerSpecificInput = new UpdateReplicationProtectedItemProviderInput(); @@ -694,6 +703,10 @@ public override void ExecuteSiteRecoveryCmdlet() ? this.RecoveryCapacityReservationGroupId : providerSpecificDetails.RecoveryCapacityReservationGroupId; + platformFaultDomain = this.IsParameterBound(c => c.PlatformFaultDomain) + ? this.PlatformFaultDomain + : providerSpecificDetails.PlatformFaultDomain; + if (!this.MyInvocation.BoundParameters.ContainsKey( Utilities.GetMemberName(() => this.RecoveryCloudServiceId))) { @@ -756,7 +769,8 @@ public override void ExecuteSiteRecoveryCmdlet() this.DiskEncryptionSecretUrl, this.DiskEncryptionVaultId, this.KeyEncryptionKeyUrl, - this.KeyEncryptionVaultId) + this.KeyEncryptionVaultId), + PlatformFaultDomain = this.PlatformFaultDomain }; if (this.ASRVMNicConfiguration != null && diff --git a/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/UpdateAzureRmRecoveryServicesAsrProtectionDirection.cs b/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/UpdateAzureRmRecoveryServicesAsrProtectionDirection.cs index 60195be237ec..490041def2d8 100644 --- a/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/UpdateAzureRmRecoveryServicesAsrProtectionDirection.cs +++ b/src/RecoveryServices/RecoveryServices.SiteRecovery/ReplicationProtectedItem/UpdateAzureRmRecoveryServicesAsrProtectionDirection.cs @@ -406,6 +406,22 @@ public class UpdateAzureRmRecoveryServicesAsrProtection : SiteRecoveryCmdletBase HelpMessage = "Specifies the disk encryption secret key vault ID(Azure disk encryption) to be used be recovery VM after failover.")] public string KeyEncryptionVaultId { get; set; } + /// + /// Gets or sets the recovery availability zone for protected Vm. + /// + [Parameter(ParameterSetName = ASRParameterSets.AzureToAzure)] + [Parameter(ParameterSetName = ASRParameterSets.AzureToAzureWithMultipleStorageAccount)] + [ValidateNotNullOrEmpty] + public string RecoveryAvailabilityZone { get; set; } + + /// + /// Gets or sets platform fault domain for protected Vm. + /// + [Parameter(ParameterSetName = ASRParameterSets.AzureToAzure)] + [Parameter(ParameterSetName = ASRParameterSets.AzureToAzureWithMultipleStorageAccount)] + [ValidateNotNullOrEmpty] + public int? PlatformFaultDomain { get; set; } + /// /// ProcessRecord of the command. /// @@ -783,7 +799,9 @@ private void A2ARPIReprotect() RecoveryBootDiagStorageAccountId = this.RecoveryBootDiagStorageAccountId, RecoveryProximityPlacementGroupId = this.RecoveryProximityPlacementGroupId, RecoveryVirtualMachineScaleSetId = this.RecoveryVirtualMachineScaleSetId, - RecoveryCapacityReservationGroupId = this.RecoveryCapacityReservationGroupId + RecoveryCapacityReservationGroupId = this.RecoveryCapacityReservationGroupId, + RecoveryAvailabilityZone = this.RecoveryAvailabilityZone, + PlatformFaultDomain = this.PlatformFaultDomain }; // Fetch the latest Protected item objects diff --git a/src/RecoveryServices/RecoveryServices/help/New-AzRecoveryServicesAsrReplicationProtectedItem.md b/src/RecoveryServices/RecoveryServices/help/New-AzRecoveryServicesAsrReplicationProtectedItem.md index 4db92fad4726..7464231f641d 100644 --- a/src/RecoveryServices/RecoveryServices/help/New-AzRecoveryServicesAsrReplicationProtectedItem.md +++ b/src/RecoveryServices/RecoveryServices/help/New-AzRecoveryServicesAsrReplicationProtectedItem.md @@ -88,6 +88,7 @@ New-AzRecoveryServicesAsrReplicationProtectedItem [-AzureToAzure] [-RecoveryCapacityReservationGroupId ] [-RecoveryAvailabilitySetId ] [-RecoveryBootDiagStorageAccountId ] [-DiskEncryptionVaultId ] [-DiskEncryptionSecretUrl ] [-KeyEncryptionKeyUrl ] [-KeyEncryptionVaultId ] + [-PlatformFaultDomain ] [-WaitForCompletion] [-RecoveryExtendedLocation ] [-DefaultProfile ] [-WhatIf] [-Confirm] [] ``` @@ -102,6 +103,7 @@ New-AzRecoveryServicesAsrReplicationProtectedItem [-AzureToAzure] -AzureVmId ] [-RecoveryAvailabilitySetId ] [-RecoveryBootDiagStorageAccountId ] [-DiskEncryptionVaultId ] [-DiskEncryptionSecretUrl ] [-KeyEncryptionKeyUrl ] [-KeyEncryptionVaultId ] + [-PlatformFaultDomain ] [-WaitForCompletion] [-DefaultProfile ] [-WhatIf] [-Confirm] [] ``` @@ -607,6 +609,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -PlatformFaultDomain +Specify the platform fault domain to used by the failover Vm in target recovery region. + +```yaml +Type: System.int32 +Parameter Sets: AzureToAzure, AzureToAzureWithoutDiskDetails +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -ProcessServer The Process Server to use to replicate this machine. Use the list of process servers in the ASR fabric corresponding to the Configuration server to specify one. diff --git a/src/RecoveryServices/RecoveryServices/help/Set-AzRecoveryServicesAsrReplicationProtectedItem.md b/src/RecoveryServices/RecoveryServices/help/Set-AzRecoveryServicesAsrReplicationProtectedItem.md index cb11becf04c5..0940427ed593 100644 --- a/src/RecoveryServices/RecoveryServices/help/Set-AzRecoveryServicesAsrReplicationProtectedItem.md +++ b/src/RecoveryServices/RecoveryServices/help/Set-AzRecoveryServicesAsrReplicationProtectedItem.md @@ -32,6 +32,7 @@ Set-AzRecoveryServicesAsrReplicationProtectedItem -InputObject ] [-RecoveryNetworkSecurityGroupId ] [-RecoveryLBBackendAddressPoolId ] [-TfoAzureVMName ] [-ASRVMNicConfiguration ] [-TestNetworkId ] + [-PlatformFaultDomain ] [-DefaultProfile ] [-WhatIf] [-Confirm] [] ``` @@ -317,6 +318,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -PlatformFaultDomain +Specify the platform fault domain to used by the failover Vm in target recovery region. + +```yaml +Type: System.int32 +Parameter Sets: AzureToAzure, AzureToAzureWithoutDiskDetails +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -PrimaryNic Specifies the NIC which will be used as primary NIC for recovery VM after after failover. diff --git a/src/RecoveryServices/RecoveryServices/help/Update-AzRecoveryServicesAsrProtectionDirection.md b/src/RecoveryServices/RecoveryServices/help/Update-AzRecoveryServicesAsrProtectionDirection.md index c35078d47fec..dcc2213c078a 100644 --- a/src/RecoveryServices/RecoveryServices/help/Update-AzRecoveryServicesAsrProtectionDirection.md +++ b/src/RecoveryServices/RecoveryServices/help/Update-AzRecoveryServicesAsrProtectionDirection.md @@ -77,6 +77,8 @@ Update-AzRecoveryServicesAsrProtectionDirection [-AzureToAzure] [-RecoveryCapacityReservationGroupId ] [-RecoveryBootDiagStorageAccountId ] [-DiskEncryptionVaultId ] [-DiskEncryptionSecretUrl ] [-KeyEncryptionKeyUrl ] [-KeyEncryptionVaultId ] [-DefaultProfile ] [-WhatIf] [-Confirm] + [-RecoveryAvailabilityZone ] + [-PlatformFaultDomain ] [] ``` @@ -91,6 +93,8 @@ Update-AzRecoveryServicesAsrProtectionDirection [-AzureToAzure] [-RecoveryCapacityReservationGroupId ] [-RecoveryBootDiagStorageAccountId ] [-DiskEncryptionVaultId ] [-DiskEncryptionSecretUrl ] [-KeyEncryptionKeyUrl ] [-KeyEncryptionVaultId ] [-DefaultProfile ] [-WhatIf] [-Confirm] + [-RecoveryAvailabilityZone ] + [-PlatformFaultDomain ] [] ``` @@ -463,6 +467,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -PlatformFaultDomain +Specify the platform fault domain to used by the failover Vm in target recovery region. + +```yaml +Type: System.int32 +Parameter Sets: AzureToAzure, AzureToAzureWithoutDiskDetails +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -ProcessServer Process Server to be used for replication. @@ -508,6 +527,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RecoveryAvailabilityZone +Specify the availability zone to used by the failover Vm in target recovery region. + +```yaml +Type: System.String +Parameter Sets: AzureToAzure, AzureToAzureWithoutDiskDetails +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RecoveryAzureStorageAccountId Specifies the ID of the Azure storage account to replicate to.