diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/CHANGELOG.md b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/CHANGELOG.md index 0154793d9068..df2edb896a9e 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/CHANGELOG.md +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/CHANGELOG.md @@ -1,5 +1,67 @@ # Release History +## 5.3.0 (2024-03-16) + +**Features** + + - Added Interface InMageRcmAddDisksInput + - Added Interface InMageRcmUnProtectedDiskDetails + - Added Interface ManagedRunCommandScriptInput + - Added Interface SecurityProfileProperties + - Added Interface UserCreatedResourceTag + - Added Type Alias DiskState + - Added Type Alias LinuxLicenseType + - Added Type Alias SecurityConfiguration + - Interface HyperVReplicaAzureDiskInputDetails has a new optional parameter sectorSizeInBytes + - Interface HyperVReplicaAzureEnableProtectionInput has a new optional parameter targetVmSecurityProfile + - Interface HyperVReplicaAzureEnableProtectionInput has a new optional parameter userSelectedOSName + - Interface HyperVReplicaAzureManagedDiskDetails has a new optional parameter sectorSizeInBytes + - Interface HyperVReplicaAzureManagedDiskDetails has a new optional parameter targetDiskAccountType + - Interface HyperVReplicaAzureReplicationDetails has a new optional parameter targetVmSecurityProfile + - Interface InMageRcmDiskInput has a new optional parameter sectorSizeInBytes + - Interface InMageRcmDisksDefaultInput has a new optional parameter sectorSizeInBytes + - Interface InMageRcmEnableProtectionInput has a new optional parameter seedManagedDiskTags + - Interface InMageRcmEnableProtectionInput has a new optional parameter sqlServerLicenseType + - Interface InMageRcmEnableProtectionInput has a new optional parameter targetManagedDiskTags + - Interface InMageRcmEnableProtectionInput has a new optional parameter targetNicTags + - Interface InMageRcmEnableProtectionInput has a new optional parameter targetVmSecurityProfile + - Interface InMageRcmEnableProtectionInput has a new optional parameter targetVmTags + - Interface InMageRcmEnableProtectionInput has a new optional parameter userSelectedOSName + - Interface InMageRcmProtectedDiskDetails has a new optional parameter customTargetDiskName + - Interface InMageRcmProtectedDiskDetails has a new optional parameter diskState + - Interface InMageRcmProtectedDiskDetails has a new optional parameter sectorSizeInBytes + - Interface InMageRcmReplicationDetails has a new optional parameter osName + - Interface InMageRcmReplicationDetails has a new optional parameter seedManagedDiskTags + - Interface InMageRcmReplicationDetails has a new optional parameter sqlServerLicenseType + - Interface InMageRcmReplicationDetails has a new optional parameter supportedOSVersions + - Interface InMageRcmReplicationDetails has a new optional parameter targetManagedDiskTags + - Interface InMageRcmReplicationDetails has a new optional parameter targetNicTags + - Interface InMageRcmReplicationDetails has a new optional parameter targetVmSecurityProfile + - Interface InMageRcmReplicationDetails has a new optional parameter targetVmTags + - Interface InMageRcmReplicationDetails has a new optional parameter unprotectedDisks + - Interface InMageRcmUpdateReplicationProtectedItemInput has a new optional parameter sqlServerLicenseType + - Interface InMageRcmUpdateReplicationProtectedItemInput has a new optional parameter targetManagedDiskTags + - Interface InMageRcmUpdateReplicationProtectedItemInput has a new optional parameter targetNicTags + - Interface InMageRcmUpdateReplicationProtectedItemInput has a new optional parameter targetVmTags + - Interface OSDetails has a new optional parameter userSelectedOSName + - Interface VMwareCbtDiskInput has a new optional parameter sectorSizeInBytes + - Interface VMwareCbtEnableMigrationInput has a new optional parameter linuxLicenseType + - Interface VMwareCbtEnableMigrationInput has a new optional parameter userSelectedOSName + - Interface VMwareCbtMigrateInput has a new optional parameter postMigrationSteps + - Interface VMwareCbtMigrationDetails has a new optional parameter linuxLicenseType + - Interface VMwareCbtProtectedDiskDetails has a new optional parameter sectorSizeInBytes + - Interface VMwareCbtTestMigrateInput has a new optional parameter postMigrationSteps + - Interface VMwareCbtUpdateMigrationItemInput has a new optional parameter linuxLicenseType + - Type of parameter instanceType of interface AddDisksProviderSpecificInput is changed from "A2A" to "A2A" | "InMageRcm" + - Added Enum KnownDiskState + - Added Enum KnownLinuxLicenseType + - Added Enum KnownSecurityConfiguration + - Enum KnownDiskAccountType has a new value PremiumV2LRS + - Enum KnownDiskAccountType has a new value PremiumZRS + - Enum KnownDiskAccountType has a new value StandardSSDZRS + - Enum KnownDiskAccountType has a new value UltraSSDLRS + + ## 5.2.0 (2024-02-09) **Features** @@ -536,4 +598,4 @@ To understand the detail of the change, please refer to [Changelog](https://aka. To migrate the existing applications to the latest version, please refer to [Migration Guide](https://aka.ms/js-track2-migration-guide). -To learn more, please refer to our documentation [Quick Start](https://aka.ms/azsdk/js/mgmt/quickstart ). +To learn more, please refer to our documentation [Quick Start](https://aka.ms/js-track2-quickstart). diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/_meta.json b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/_meta.json index f3f285bf06af..fc4c3859ec8c 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/_meta.json +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/_meta.json @@ -1,8 +1,8 @@ { - "commit": "a342331c3ce13271517cf24978534f1ad2f88665", + "commit": "c3bfa9250d174eb31e1a2733972ee1703cfc46c2", "readme": "specification/recoveryservicessiterecovery/resource-manager/readme.md", - "autorest_command": "autorest --version=3.9.7 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\Git\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\recoveryservicessiterecovery\\resource-manager\\readme.md --use=@autorest/typescript@6.0.15 --generate-sample=true", + "autorest_command": "autorest --version=3.9.7 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/recoveryservicessiterecovery/resource-manager/readme.md --use=@autorest/typescript@^6.0.12", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", "release_tool": "@azure-tools/js-sdk-release-tools@2.7.4", - "use": "@autorest/typescript@6.0.15" + "use": "@autorest/typescript@^6.0.12" } \ No newline at end of file diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json index d9e985a4849f..ae5cea1007d5 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json @@ -3,7 +3,7 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for SiteRecoveryManagementClient.", - "version": "5.2.0", + "version": "5.3.0", "engines": { "node": ">=18.0.0" }, @@ -106,13 +106,5 @@ ] }, "autoPublish": true, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery", - "//sampleConfiguration": { - "productName": "", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-recoveryservices-siterecovery?view=azure-node-preview" - } + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery" } \ No newline at end of file diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/review/arm-recoveryservices-siterecovery.api.md b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/review/arm-recoveryservices-siterecovery.api.md index cb6f5c3b0471..4f8705f4048a 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/review/arm-recoveryservices-siterecovery.api.md +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/review/arm-recoveryservices-siterecovery.api.md @@ -481,11 +481,11 @@ export interface AddDisksInputProperties { // @public export interface AddDisksProviderSpecificInput { - instanceType: "A2A"; + instanceType: "A2A" | "InMageRcm"; } // @public (undocumented) -export type AddDisksProviderSpecificInputUnion = AddDisksProviderSpecificInput | A2AAddDisksInput; +export type AddDisksProviderSpecificInputUnion = AddDisksProviderSpecificInput | A2AAddDisksInput | InMageRcmAddDisksInput; // @public export interface AddRecoveryServicesProviderInput { @@ -930,6 +930,9 @@ export interface DiskEncryptionKeyInfo { // @public export type DiskReplicationProgressHealth = string; +// @public +export type DiskState = string; + // @public export interface DiskVolumeDetails { label?: string; @@ -1355,6 +1358,7 @@ export interface HyperVReplicaAzureDiskInputDetails { diskId?: string; diskType?: DiskAccountType; logStorageAccountId?: string; + sectorSizeInBytes?: number; } // @public @@ -1388,12 +1392,14 @@ export interface HyperVReplicaAzureEnableProtectionInput extends EnableProtectio }; targetProximityPlacementGroupId?: string; targetStorageAccountId?: string; + targetVmSecurityProfile?: SecurityProfileProperties; targetVmSize?: string; targetVmTags?: { [propertyName: string]: string; }; useManagedDisks?: string; useManagedDisksForReplication?: string; + userSelectedOSName?: string; vhdId?: string; vmName?: string; } @@ -1419,7 +1425,9 @@ export interface HyperVReplicaAzureManagedDiskDetails { diskEncryptionSetId?: string; diskId?: string; replicaDiskType?: string; + sectorSizeInBytes?: number; seedManagedDiskId?: string; + targetDiskAccountType?: DiskAccountType; } // @public @@ -1489,6 +1497,7 @@ export interface HyperVReplicaAzureReplicationDetails extends ReplicationProvide [propertyName: string]: string; }; targetProximityPlacementGroupId?: string; + targetVmSecurityProfile?: SecurityProfileProperties; targetVmTags?: { [propertyName: string]: string; }; @@ -2132,6 +2141,12 @@ export interface InMageProtectedDiskDetails { targetDataInMB?: number; } +// @public +export interface InMageRcmAddDisksInput extends AddDisksProviderSpecificInput { + disks: InMageRcmDiskInput[]; + instanceType: "InMageRcm"; +} + // @public export interface InMageRcmAgentUpgradeBlockingErrorDetails { readonly errorCode?: string; @@ -2195,6 +2210,7 @@ export interface InMageRcmDiskInput { diskId: string; diskType: DiskAccountType; logStorageAccountId: string; + sectorSizeInBytes?: number; } // @public @@ -2202,6 +2218,7 @@ export interface InMageRcmDisksDefaultInput { diskEncryptionSetId?: string; diskType: DiskAccountType; logStorageAccountId: string; + sectorSizeInBytes?: number; } // @public @@ -2214,17 +2231,24 @@ export interface InMageRcmEnableProtectionInput extends EnableProtectionProvider multiVmGroupName?: string; processServerId: string; runAsAccountId?: string; + seedManagedDiskTags?: UserCreatedResourceTag[]; + sqlServerLicenseType?: SqlServerLicenseType; targetAvailabilitySetId?: string; targetAvailabilityZone?: string; targetBootDiagnosticsStorageAccountId?: string; + targetManagedDiskTags?: UserCreatedResourceTag[]; targetNetworkId?: string; + targetNicTags?: UserCreatedResourceTag[]; targetProximityPlacementGroupId?: string; targetResourceGroupId: string; targetSubnetName?: string; targetVmName?: string; + targetVmSecurityProfile?: SecurityProfileProperties; targetVmSize?: string; + targetVmTags?: UserCreatedResourceTag[]; testNetworkId?: string; testSubnetName?: string; + userSelectedOSName?: string; } // @public @@ -2499,17 +2523,20 @@ export interface InMageRcmPolicyDetails extends PolicyProviderSpecificDetails { // @public export interface InMageRcmProtectedDiskDetails { readonly capacityInBytes?: number; + customTargetDiskName?: string; readonly dataPendingAtSourceAgentInMB?: number; readonly dataPendingInLogDataStoreInMB?: number; readonly diskEncryptionSetId?: string; readonly diskId?: string; readonly diskName?: string; + readonly diskState?: DiskState; diskType?: DiskAccountType; irDetails?: InMageRcmSyncDetails; readonly isInitialReplicationComplete?: string; readonly isOSDisk?: string; readonly logStorageAccountId?: string; resyncDetails?: InMageRcmSyncDetails; + sectorSizeInBytes?: number; readonly seedBlobUri?: string; readonly seedManagedDiskId?: string; readonly targetManagedDiskId?: string; @@ -2556,6 +2583,7 @@ export interface InMageRcmReplicationDetails extends ReplicationProviderSpecific licenseType?: string; mobilityAgentDetails?: InMageRcmMobilityAgentDetails; readonly multiVmGroupName?: string; + osName?: string; readonly osType?: string; readonly primaryNicIpAddress?: string; readonly processorCoreCount?: number; @@ -2569,18 +2597,26 @@ export interface InMageRcmReplicationDetails extends ReplicationProviderSpecific readonly resyncState?: ResyncState; readonly resyncTransferredBytes?: number; readonly runAsAccountId?: string; + seedManagedDiskTags?: UserCreatedResourceTag[]; + sqlServerLicenseType?: string; readonly storageAccountId?: string; + supportedOSVersions?: string[]; targetAvailabilitySetId?: string; targetAvailabilityZone?: string; targetBootDiagnosticsStorageAccountId?: string; readonly targetGeneration?: string; targetLocation?: string; + targetManagedDiskTags?: UserCreatedResourceTag[]; targetNetworkId?: string; + targetNicTags?: UserCreatedResourceTag[]; targetProximityPlacementGroupId?: string; targetResourceGroupId?: string; targetVmName?: string; + targetVmSecurityProfile?: SecurityProfileProperties; targetVmSize?: string; + targetVmTags?: UserCreatedResourceTag[]; testNetworkId?: string; + unprotectedDisks?: InMageRcmUnProtectedDiskDetails[]; vmNics?: InMageRcmNicDetails[]; } @@ -2619,6 +2655,13 @@ export interface InMageRcmUnplannedFailoverInput extends UnplannedFailoverProvid recoveryPointId?: string; } +// @public +export interface InMageRcmUnProtectedDiskDetails { + readonly capacityInBytes?: number; + readonly diskId?: string; + readonly diskName?: string; +} + // @public export interface InMageRcmUpdateApplianceForReplicationProtectedItemInput extends UpdateApplianceForReplicationProtectedItemProviderSpecificInput { instanceType: "InMageRcm"; @@ -2635,14 +2678,18 @@ export interface InMageRcmUpdateContainerMappingInput extends ReplicationProvide export interface InMageRcmUpdateReplicationProtectedItemInput extends UpdateReplicationProtectedItemProviderInput { instanceType: "InMageRcm"; licenseType?: LicenseType; + sqlServerLicenseType?: SqlServerLicenseType; targetAvailabilitySetId?: string; targetAvailabilityZone?: string; targetBootDiagnosticsStorageAccountId?: string; + targetManagedDiskTags?: UserCreatedResourceTag[]; targetNetworkId?: string; + targetNicTags?: UserCreatedResourceTag[]; targetProximityPlacementGroupId?: string; targetResourceGroupId?: string; targetVmName?: string; targetVmSize?: string; + targetVmTags?: UserCreatedResourceTag[]; testNetworkId?: string; vmNics?: InMageRcmNicInput[]; } @@ -3002,8 +3049,12 @@ export enum KnownDisableProtectionReason { // @public export enum KnownDiskAccountType { PremiumLRS = "Premium_LRS", + PremiumV2LRS = "PremiumV2_LRS", + PremiumZRS = "Premium_ZRS", StandardLRS = "Standard_LRS", - StandardSSDLRS = "StandardSSD_LRS" + StandardSSDLRS = "StandardSSD_LRS", + StandardSSDZRS = "StandardSSD_ZRS", + UltraSSDLRS = "UltraSSD_LRS" } // @public @@ -3015,6 +3066,14 @@ export enum KnownDiskReplicationProgressHealth { SlowProgress = "SlowProgress" } +// @public +export enum KnownDiskState { + InitialReplicationFailed = "InitialReplicationFailed", + InitialReplicationPending = "InitialReplicationPending", + Protected = "Protected", + Unavailable = "Unavailable" +} + // @public export enum KnownEthernetAddressType { Dynamic = "Dynamic", @@ -3089,6 +3148,13 @@ export enum KnownLicenseType { WindowsServer = "WindowsServer" } +// @public +export enum KnownLinuxLicenseType { + LinuxServer = "LinuxServer", + NoLicenseType = "NoLicenseType", + NotSpecified = "NotSpecified" +} + // @public export enum KnownMigrationItemOperation { DisableMigration = "DisableMigration", @@ -3251,6 +3317,12 @@ export enum KnownRpInMageRecoveryPointType { LatestTime = "LatestTime" } +// @public +export enum KnownSecurityConfiguration { + Disabled = "Disabled", + Enabled = "Enabled" +} + // @public export enum KnownSecurityType { ConfidentialVM = "ConfidentialVM", @@ -3315,6 +3387,9 @@ export enum KnownVmReplicationProgressHealth { // @public export type LicenseType = string; +// @public +export type LinuxLicenseType = string; + // @public export interface LogicalNetwork extends Resource { properties?: LogicalNetworkProperties; @@ -3334,6 +3409,13 @@ export interface LogicalNetworkProperties { networkVirtualizationStatus?: string; } +// @public +export interface ManagedRunCommandScriptInput { + scriptParameters: string; + scriptUrl: string; + stepName: string; +} + // @public export interface ManualActionTaskDetails extends TaskTypeDetails { instanceType: "ManualActionTaskDetails"; @@ -3623,6 +3705,7 @@ export interface OSDetails { osType?: string; oSVersion?: string; productType?: string; + userSelectedOSName?: string; } // @public @@ -6234,6 +6317,18 @@ export interface ScriptActionTaskDetails extends TaskTypeDetails { path?: string; } +// @public +export type SecurityConfiguration = string; + +// @public +export interface SecurityProfileProperties { + targetVmConfidentialEncryption?: SecurityConfiguration; + targetVmMonitoring?: SecurityConfiguration; + targetVmSecureBoot?: SecurityConfiguration; + targetVmSecurityType?: SecurityType; + targetVmTpm?: SecurityConfiguration; +} + // @public export type SecurityType = string; @@ -6753,6 +6848,12 @@ export interface UpdateVCenterRequestProperties { runAsAccountId?: string; } +// @public +export interface UserCreatedResourceTag { + tagName?: string; + tagValue?: string; +} + // @public export interface VaultHealthDetails extends Resource { properties?: VaultHealthProperties; @@ -6953,6 +7054,7 @@ export interface VMwareCbtDiskInput { isOSDisk: string; logStorageAccountId: string; logStorageAccountSasSecretName: string; + sectorSizeInBytes?: number; } // @public @@ -6962,6 +7064,7 @@ export interface VMwareCbtEnableMigrationInput extends EnableMigrationProviderSp disksToInclude: VMwareCbtDiskInput[]; instanceType: "VMwareCbt"; licenseType?: LicenseType; + linuxLicenseType?: LinuxLicenseType; performAutoResync?: string; performSqlBulkRegistration?: string; seedDiskTags?: { @@ -6990,6 +7093,7 @@ export interface VMwareCbtEnableMigrationInput extends EnableMigrationProviderSp }; testNetworkId?: string; testSubnetName?: string; + userSelectedOSName?: string; vmwareMachineId: string; } @@ -7004,6 +7108,7 @@ export interface VMwareCbtMigrateInput extends MigrateProviderSpecificInput { instanceType: "VMwareCbt"; osUpgradeVersion?: string; performShutdown: string; + postMigrationSteps?: ManagedRunCommandScriptInput[]; } // @public @@ -7022,6 +7127,7 @@ export interface VMwareCbtMigrationDetails extends MigrationProviderSpecificSett readonly lastRecoveryPointId?: string; readonly lastRecoveryPointReceived?: Date; licenseType?: string; + linuxLicenseType?: LinuxLicenseType; readonly migrationProgressPercentage?: number; readonly migrationRecoveryPointId?: string; readonly operationName?: string; @@ -7125,6 +7231,7 @@ export interface VMwareCbtProtectedDiskDetails { readonly isOSDisk?: string; readonly logStorageAccountId?: string; readonly logStorageAccountSasSecretName?: string; + sectorSizeInBytes?: number; readonly seedBlobUri?: string; readonly seedManagedDiskId?: string; readonly targetBlobUri?: string; @@ -7173,6 +7280,7 @@ export interface VMwareCbtTestMigrateInput extends TestMigrateProviderSpecificIn instanceType: "VMwareCbt"; networkId: string; osUpgradeVersion?: string; + postMigrationSteps?: ManagedRunCommandScriptInput[]; recoveryPointId: string; vmNics?: VMwareCbtNicInput[]; } @@ -7188,6 +7296,7 @@ export interface VMwareCbtUpdateDiskInput { export interface VMwareCbtUpdateMigrationItemInput extends UpdateMigrationItemProviderSpecificInput { instanceType: "VMwareCbt"; licenseType?: LicenseType; + linuxLicenseType?: LinuxLicenseType; performAutoResync?: string; sqlServerLicenseType?: SqlServerLicenseType; targetAvailabilitySetId?: string; diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/index.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/index.ts index e3063cd185c5..df654b0b7170 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/index.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/index.ts @@ -112,7 +112,8 @@ export type UpdateReplicationProtectedItemProviderInputUnion = | InMageRcmUpdateReplicationProtectedItemInput; export type AddDisksProviderSpecificInputUnion = | AddDisksProviderSpecificInput - | A2AAddDisksInput; + | A2AAddDisksInput + | InMageRcmAddDisksInput; export type ApplyRecoveryPointProviderSpecificInputUnion = | ApplyRecoveryPointProviderSpecificInput | A2AApplyRecoveryPointInput @@ -1497,7 +1498,7 @@ export interface AddDisksInputProperties { /** Add Disks provider specific input. */ export interface AddDisksProviderSpecificInput { /** Polymorphic discriminator, which specifies the different types this object can be */ - instanceType: "A2A"; + instanceType: "A2A" | "InMageRcm"; } /** Input to apply recovery point. */ @@ -3574,10 +3575,26 @@ export interface HyperVReplicaAzureDiskInputDetails { diskId?: string; /** The LogStorageAccountId. */ logStorageAccountId?: string; - /** The DiskType. */ + /** The disk type. */ diskType?: DiskAccountType; /** The DiskEncryptionSet ARM ID. */ diskEncryptionSetId?: string; + /** The logical sector size (in bytes), 512 by default. */ + sectorSizeInBytes?: number; +} + +/** Security profile input. */ +export interface SecurityProfileProperties { + /** The target VM security type. */ + targetVmSecurityType?: SecurityType; + /** A value indicating whether secure boot to be enabled. */ + targetVmSecureBoot?: SecurityConfiguration; + /** A value indicating whether trusted platform module to be enabled. */ + targetVmTpm?: SecurityConfiguration; + /** A value indicating whether integrity monitoring to be enabled. */ + targetVmMonitoring?: SecurityConfiguration; + /** A value indicating whether confidential compute encryption to be enabled. */ + targetVmConfidentialEncryption?: SecurityConfiguration; } /** Hyper-V Managed disk details. */ @@ -3590,6 +3607,10 @@ export interface HyperVReplicaAzureManagedDiskDetails { replicaDiskType?: string; /** The disk encryption set ARM Id. */ diskEncryptionSetId?: string; + /** The disk type. */ + targetDiskAccountType?: DiskAccountType; + /** The logical sector size (in bytes), 512 by default. */ + sectorSizeInBytes?: number; } /** Initial replication details. */ @@ -3614,6 +3635,8 @@ export interface OSDetails { oSMajorVersion?: string; /** The OS Minor Version. */ oSMinorVersion?: string; + /** The OS name selected by user. */ + userSelectedOSName?: string; } /** Supported OS upgrade versions. */ @@ -3656,7 +3679,7 @@ export interface InMageAzureV2DiskInputDetails { diskId?: string; /** The LogStorageAccountId. */ logStorageAccountId?: string; - /** The DiskType. */ + /** The disk type. */ diskType?: DiskAccountType; /** The DiskEncryptionSet ARM ID. */ diskEncryptionSetId?: string; @@ -3904,6 +3927,20 @@ export interface InMageProtectedDiskDetails { progressStatus?: string; } +/** InMageRcm disk input. */ +export interface InMageRcmDiskInput { + /** The disk Id. */ + diskId: string; + /** The log storage account ARM Id. */ + logStorageAccountId: string; + /** The disk type. */ + diskType: DiskAccountType; + /** The DiskEncryptionSet ARM Id. */ + diskEncryptionSetId?: string; + /** The logical sector size (in bytes), 512 by default. */ + sectorSizeInBytes?: number; +} + /** InMageRcm source agent upgrade blocking error details. */ export interface InMageRcmAgentUpgradeBlockingErrorDetails { /** @@ -4515,25 +4552,23 @@ export interface InMageRcmDiscoveredProtectedVmDetails { } /** InMageRcm disk input. */ -export interface InMageRcmDiskInput { - /** The disk Id. */ - diskId: string; +export interface InMageRcmDisksDefaultInput { /** The log storage account ARM Id. */ logStorageAccountId: string; /** The disk type. */ diskType: DiskAccountType; /** The DiskEncryptionSet ARM Id. */ diskEncryptionSetId?: string; + /** The logical sector size (in bytes), 512 by default. */ + sectorSizeInBytes?: number; } -/** InMageRcm disk input. */ -export interface InMageRcmDisksDefaultInput { - /** The log storage account ARM Id. */ - logStorageAccountId: string; - /** The disk type. */ - diskType: DiskAccountType; - /** The DiskEncryptionSet ARM Id. */ - diskEncryptionSetId?: string; +/** Resource tag input. */ +export interface UserCreatedResourceTag { + /** The tag name. Please read for more information: https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources#limitations */ + tagName?: string; + /** The tag value. Please read her for more information: https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources#limitations */ + tagValue?: string; } /** InMageRcmFailback discovered VM details. */ @@ -4943,6 +4978,11 @@ export interface InMageRcmProtectedDiskDetails { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly capacityInBytes?: number; + /** + * The disk state. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly diskState?: DiskState; /** * The log storage account ARM Id. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -4989,6 +5029,10 @@ export interface InMageRcmProtectedDiskDetails { irDetails?: InMageRcmSyncDetails; /** The resync details. */ resyncDetails?: InMageRcmSyncDetails; + /** The custom target Azure disk name. */ + customTargetDiskName?: string; + /** The logical sector size (in bytes), 512 by default. */ + sectorSizeInBytes?: number; } /** InMageRcm disk level sync details. */ @@ -5035,6 +5079,25 @@ export interface InMageRcmSyncDetails { readonly progressPercentage?: number; } +/** InMageRcm un-protected disk details. */ +export interface InMageRcmUnProtectedDiskDetails { + /** + * The disk Id. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly diskId?: string; + /** + * The disk name. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly diskName?: string; + /** + * The disk capacity in bytes. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly capacityInBytes?: number; +} + /** Details of the OS Disk. */ export interface OSDiskDetails { /** The id of the disk containing the OS. */ @@ -5045,6 +5108,16 @@ export interface OSDiskDetails { vhdName?: string; } +/** Managed RunCommand script input */ +export interface ManagedRunCommandScriptInput { + /** The step name. */ + stepName: string; + /** The script url. */ + scriptUrl: string; + /** The script parameters. */ + scriptParameters: string; +} + /** Details of a Master Target Server. */ export interface MasterTargetServer { /** The server Id. */ @@ -5279,6 +5352,8 @@ export interface VMwareCbtDiskInput { logStorageAccountSasSecretName: string; /** The DiskEncryptionSet ARM Id. */ diskEncryptionSetId?: string; + /** The logical sector size (in bytes), 512 by default. */ + sectorSizeInBytes?: number; } /** VMwareCbt security profile input. */ @@ -5366,6 +5441,8 @@ export interface VMwareCbtProtectedDiskDetails { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly gatewayOperationDetails?: GatewayOperationDetails; + /** The logical sector size (in bytes), 512 by default. */ + sectorSizeInBytes?: number; } /** VMwareCbt NIC details. */ @@ -6184,6 +6261,8 @@ export interface VMwareCbtMigrationDetails licenseType?: string; /** The SQL Server license type. */ sqlServerLicenseType?: string; + /** The license type for Linux VM's. */ + linuxLicenseType?: LinuxLicenseType; /** * The data mover run as account Id. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -6347,6 +6426,8 @@ export interface VMwareCbtEnableMigrationInput licenseType?: LicenseType; /** The SQL Server license type. */ sqlServerLicenseType?: SqlServerLicenseType; + /** The license type for Linux VM's. */ + linuxLicenseType?: LinuxLicenseType; /** A value indicating whether bulk SQL RP registration to be done. */ performSqlBulkRegistration?: string; /** The data mover run as account Id. */ @@ -6389,6 +6470,8 @@ export interface VMwareCbtEnableMigrationInput targetDiskTags?: { [propertyName: string]: string }; /** The tags for the target NICs. */ targetNicTags?: { [propertyName: string]: string }; + /** The OS name selected by user. */ + userSelectedOSName?: string; } /** VMwareCbt specific update migration item input. */ @@ -6422,6 +6505,8 @@ export interface VMwareCbtUpdateMigrationItemInput licenseType?: LicenseType; /** The SQL Server license type. */ sqlServerLicenseType?: SqlServerLicenseType; + /** The license type for Linux VM's. */ + linuxLicenseType?: LinuxLicenseType; /** A value indicating whether auto resync is to be done. */ performAutoResync?: string; /** The target VM tags. */ @@ -6440,6 +6525,8 @@ export interface VMwareCbtMigrateInput extends MigrateProviderSpecificInput { performShutdown: string; /** A value indicating the inplace OS Upgrade version. */ osUpgradeVersion?: string; + /** The managed run command script input. */ + postMigrationSteps?: ManagedRunCommandScriptInput[]; } /** VMwareCbt specific resume replication input. */ @@ -6472,6 +6559,8 @@ export interface VMwareCbtTestMigrateInput vmNics?: VMwareCbtNicInput[]; /** A value indicating the inplace OS Upgrade version. */ osUpgradeVersion?: string; + /** The managed run command script input. */ + postMigrationSteps?: ManagedRunCommandScriptInput[]; } /** Single Host fabric provider specific VM settings. */ @@ -6762,6 +6851,8 @@ export interface HyperVReplicaAzureReplicationDetails protectedManagedDisks?: HyperVReplicaAzureManagedDiskDetails[]; /** A value indicating all available inplace OS Upgrade configurations. */ allAvailableOSUpgradeConfigurations?: OSUpgradeSupportedVersions[]; + /** The target VM security profile. */ + targetVmSecurityProfile?: SecurityProfileProperties; } /** Hyper V replica provider specific settings base class. */ @@ -7314,6 +7405,8 @@ export interface InMageRcmReplicationDetails readonly agentUpgradeAttemptToVersion?: string; /** The list of protected disks. */ protectedDisks?: InMageRcmProtectedDiskDetails[]; + /** The list of unprotected disks. */ + unprotectedDisks?: InMageRcmUnProtectedDiskDetails[]; /** * A value indicating whether last agent upgrade was successful or not. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -7334,6 +7427,22 @@ export interface InMageRcmReplicationDetails vmNics?: InMageRcmNicDetails[]; /** The discovered VM details. */ discoveredVmDetails?: InMageRcmDiscoveredProtectedVmDetails; + /** The target VM tags. */ + targetVmTags?: UserCreatedResourceTag[]; + /** The tags for the seed managed disks. */ + seedManagedDiskTags?: UserCreatedResourceTag[]; + /** The tags for the target managed disks. */ + targetManagedDiskTags?: UserCreatedResourceTag[]; + /** The tags for the target NICs. */ + targetNicTags?: UserCreatedResourceTag[]; + /** The SQL Server license type. */ + sqlServerLicenseType?: string; + /** A value indicating the inplace OS Upgrade version. */ + supportedOSVersions?: string[]; + /** The OS name associated with VM. */ + osName?: string; + /** The target VM security profile. */ + targetVmSecurityProfile?: SecurityProfileProperties; } /** InMage provider specific settings. */ @@ -7490,6 +7599,8 @@ export interface HyperVReplicaAzureEnableProtectionInput vmName?: string; /** The OS type associated with VM. */ osType?: string; + /** The OS name selected by user. */ + userSelectedOSName?: string; /** The OS disk VHD id associated with VM. */ vhdId?: string; /** The storage account Id. */ @@ -7520,13 +7631,15 @@ export interface HyperVReplicaAzureEnableProtectionInput licenseType?: LicenseType; /** The SQL Server license type. */ sqlServerLicenseType?: SqlServerLicenseType; + /** The target VM security profile. */ + targetVmSecurityProfile?: SecurityProfileProperties; /** The target VM size. */ targetVmSize?: string; /** The proximity placement group ARM Id. */ targetProximityPlacementGroupId?: string; /** A value indicating whether managed disks should be used during replication. */ useManagedDisksForReplication?: string; - /** The DiskType. */ + /** The disk type. */ diskType?: DiskAccountType; /** The disks to include list for managed disks. */ disksToIncludeForManagedDisks?: HyperVReplicaAzureDiskInputDetails[]; @@ -7575,7 +7688,7 @@ export interface InMageAzureV2EnableProtectionInput targetAzureV1ResourceGroupId?: string; /** The Id of the target resource group (for resource manager deployment) in which the failover VM is to be created. */ targetAzureV2ResourceGroupId?: string; - /** The DiskType. */ + /** The disk type. */ diskType?: DiskAccountType; /** The target availability set ARM Id for resource manager deployment. */ targetAvailabilitySetId?: string; @@ -7669,6 +7782,20 @@ export interface InMageRcmEnableProtectionInput processServerId: string; /** The multi VM group name. */ multiVmGroupName?: string; + /** The SQL Server license type. */ + sqlServerLicenseType?: SqlServerLicenseType; + /** The target VM tags. */ + targetVmTags?: UserCreatedResourceTag[]; + /** The tags for the seed managed disks. */ + seedManagedDiskTags?: UserCreatedResourceTag[]; + /** The tags for the target managed disks. */ + targetManagedDiskTags?: UserCreatedResourceTag[]; + /** The tags for the target NICs. */ + targetNicTags?: UserCreatedResourceTag[]; + /** The OS name selected by user. */ + userSelectedOSName?: string; + /** The target VM security profile. */ + targetVmSecurityProfile?: SecurityProfileProperties; } /** InMage Azure V2 input to update replication protected item. */ @@ -7779,6 +7906,14 @@ export interface InMageRcmUpdateReplicationProtectedItemInput vmNics?: InMageRcmNicInput[]; /** The license type. */ licenseType?: LicenseType; + /** The SQL Server license type. */ + sqlServerLicenseType?: SqlServerLicenseType; + /** The target VM tags. */ + targetVmTags?: UserCreatedResourceTag[]; + /** The tags for the target managed disks. */ + targetManagedDiskTags?: UserCreatedResourceTag[]; + /** The tags for the target NICs. */ + targetNicTags?: UserCreatedResourceTag[]; } /** A2A add disk(s) input. */ @@ -7791,6 +7926,14 @@ export interface A2AAddDisksInput extends AddDisksProviderSpecificInput { vmManagedDisks?: A2AVmManagedDiskInputDetails[]; } +/** InMageRcm add disk(s) input. */ +export interface InMageRcmAddDisksInput extends AddDisksProviderSpecificInput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + instanceType: "InMageRcm"; + /** The list of disk details. */ + disks: InMageRcmDiskInput[]; +} + /** ApplyRecoveryPoint input specific to A2A provider. */ export interface A2AApplyRecoveryPointInput extends ApplyRecoveryPointProviderSpecificInput { @@ -9864,6 +10007,14 @@ export enum KnownDiskAccountType { PremiumLRS = "Premium_LRS", /** StandardSSDLRS */ StandardSSDLRS = "StandardSSD_LRS", + /** PremiumV2LRS */ + PremiumV2LRS = "PremiumV2_LRS", + /** UltraSSDLRS */ + UltraSSDLRS = "UltraSSD_LRS", + /** StandardSSDZRS */ + StandardSSDZRS = "StandardSSD_ZRS", + /** PremiumZRS */ + PremiumZRS = "Premium_ZRS", } /** @@ -9873,7 +10024,11 @@ export enum KnownDiskAccountType { * ### Known values supported by the service * **Standard_LRS** \ * **Premium_LRS** \ - * **StandardSSD_LRS** + * **StandardSSD_LRS** \ + * **PremiumV2_LRS** \ + * **UltraSSD_LRS** \ + * **StandardSSD_ZRS** \ + * **Premium_ZRS** */ export type DiskAccountType = string; @@ -9901,6 +10056,45 @@ export enum KnownSqlServerLicenseType { */ export type SqlServerLicenseType = string; +/** Known values of {@link SecurityType} that the service accepts. */ +export enum KnownSecurityType { + /** None */ + None = "None", + /** TrustedLaunch */ + TrustedLaunch = "TrustedLaunch", + /** ConfidentialVM */ + ConfidentialVM = "ConfidentialVM", +} + +/** + * Defines values for SecurityType. \ + * {@link KnownSecurityType} can be used interchangeably with SecurityType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **TrustedLaunch** \ + * **ConfidentialVM** + */ +export type SecurityType = string; + +/** Known values of {@link SecurityConfiguration} that the service accepts. */ +export enum KnownSecurityConfiguration { + /** Disabled */ + Disabled = "Disabled", + /** Enabled */ + Enabled = "Enabled", +} + +/** + * Defines values for SecurityConfiguration. \ + * {@link KnownSecurityConfiguration} can be used interchangeably with SecurityConfiguration, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled** \ + * **Enabled** + */ +export type SecurityConfiguration = string; + /** Known values of {@link PresenceStatus} that the service accepts. */ export enum KnownPresenceStatus { /** Unknown */ @@ -10132,6 +10326,30 @@ export enum KnownEthernetAddressType { */ export type EthernetAddressType = string; +/** Known values of {@link DiskState} that the service accepts. */ +export enum KnownDiskState { + /** Unavailable */ + Unavailable = "Unavailable", + /** InitialReplicationPending */ + InitialReplicationPending = "InitialReplicationPending", + /** InitialReplicationFailed */ + InitialReplicationFailed = "InitialReplicationFailed", + /** Protected */ + Protected = "Protected", +} + +/** + * Defines values for DiskState. \ + * {@link KnownDiskState} can be used interchangeably with DiskState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Unavailable** \ + * **InitialReplicationPending** \ + * **InitialReplicationFailed** \ + * **Protected** + */ +export type DiskState = string; + /** Known values of {@link MobilityAgentUpgradeState} that the service accepts. */ export enum KnownMobilityAgentUpgradeState { /** None */ @@ -10363,26 +10581,26 @@ export enum KnownRecoveryPlanPointType { */ export type RecoveryPlanPointType = string; -/** Known values of {@link SecurityType} that the service accepts. */ -export enum KnownSecurityType { - /** None */ - None = "None", - /** TrustedLaunch */ - TrustedLaunch = "TrustedLaunch", - /** ConfidentialVM */ - ConfidentialVM = "ConfidentialVM", +/** Known values of {@link LinuxLicenseType} that the service accepts. */ +export enum KnownLinuxLicenseType { + /** NotSpecified */ + NotSpecified = "NotSpecified", + /** NoLicenseType */ + NoLicenseType = "NoLicenseType", + /** LinuxServer */ + LinuxServer = "LinuxServer", } /** - * Defines values for SecurityType. \ - * {@link KnownSecurityType} can be used interchangeably with SecurityType, + * Defines values for LinuxLicenseType. \ + * {@link KnownLinuxLicenseType} can be used interchangeably with LinuxLicenseType, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **None** \ - * **TrustedLaunch** \ - * **ConfidentialVM** + * **NotSpecified** \ + * **NoLicenseType** \ + * **LinuxServer** */ -export type SecurityType = string; +export type LinuxLicenseType = string; /** Optional parameters. */ export interface OperationsListOptionalParams diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/mappers.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/mappers.ts index e28a871616a5..0fced9d4920a 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/mappers.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/mappers.ts @@ -9178,6 +9178,51 @@ export const HyperVReplicaAzureDiskInputDetails: coreClient.CompositeMapper = { name: "String", }, }, + sectorSizeInBytes: { + serializedName: "sectorSizeInBytes", + type: { + name: "Number", + }, + }, + }, + }, +}; + +export const SecurityProfileProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SecurityProfileProperties", + modelProperties: { + targetVmSecurityType: { + serializedName: "targetVmSecurityType", + type: { + name: "String", + }, + }, + targetVmSecureBoot: { + serializedName: "targetVmSecureBoot", + type: { + name: "String", + }, + }, + targetVmTpm: { + serializedName: "targetVmTpm", + type: { + name: "String", + }, + }, + targetVmMonitoring: { + serializedName: "targetVmMonitoring", + type: { + name: "String", + }, + }, + targetVmConfidentialEncryption: { + serializedName: "targetVmConfidentialEncryption", + type: { + name: "String", + }, + }, }, }, }; @@ -9212,6 +9257,18 @@ export const HyperVReplicaAzureManagedDiskDetails: coreClient.CompositeMapper = name: "String", }, }, + targetDiskAccountType: { + serializedName: "targetDiskAccountType", + type: { + name: "String", + }, + }, + sectorSizeInBytes: { + serializedName: "sectorSizeInBytes", + type: { + name: "Number", + }, + }, }, }, }; @@ -9278,6 +9335,12 @@ export const OSDetails: coreClient.CompositeMapper = { name: "String", }, }, + userSelectedOSName: { + serializedName: "userSelectedOSName", + type: { + name: "String", + }, + }, }, }, }; @@ -9990,6 +10053,48 @@ export const InMageProtectedDiskDetails: coreClient.CompositeMapper = { }, }; +export const InMageRcmDiskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "InMageRcmDiskInput", + modelProperties: { + diskId: { + serializedName: "diskId", + required: true, + type: { + name: "String", + }, + }, + logStorageAccountId: { + serializedName: "logStorageAccountId", + required: true, + type: { + name: "String", + }, + }, + diskType: { + serializedName: "diskType", + required: true, + type: { + name: "String", + }, + }, + diskEncryptionSetId: { + serializedName: "diskEncryptionSetId", + type: { + name: "String", + }, + }, + sectorSizeInBytes: { + serializedName: "sectorSizeInBytes", + type: { + name: "Number", + }, + }, + }, + }, +}; + export const InMageRcmAgentUpgradeBlockingErrorDetails: coreClient.CompositeMapper = { type: { @@ -10947,18 +11052,11 @@ export const InMageRcmDiscoveredProtectedVmDetails: coreClient.CompositeMapper = }, }; -export const InMageRcmDiskInput: coreClient.CompositeMapper = { +export const InMageRcmDisksDefaultInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "InMageRcmDiskInput", + className: "InMageRcmDisksDefaultInput", modelProperties: { - diskId: { - serializedName: "diskId", - required: true, - type: { - name: "String", - }, - }, logStorageAccountId: { serializedName: "logStorageAccountId", required: true, @@ -10979,31 +11077,35 @@ export const InMageRcmDiskInput: coreClient.CompositeMapper = { name: "String", }, }, + sectorSizeInBytes: { + serializedName: "sectorSizeInBytes", + type: { + name: "Number", + }, + }, }, }, }; -export const InMageRcmDisksDefaultInput: coreClient.CompositeMapper = { +export const UserCreatedResourceTag: coreClient.CompositeMapper = { type: { name: "Composite", - className: "InMageRcmDisksDefaultInput", + className: "UserCreatedResourceTag", modelProperties: { - logStorageAccountId: { - serializedName: "logStorageAccountId", - required: true, - type: { - name: "String", + tagName: { + constraints: { + MaxLength: 512, }, - }, - diskType: { - serializedName: "diskType", - required: true, + serializedName: "tagName", type: { name: "String", }, }, - diskEncryptionSetId: { - serializedName: "diskEncryptionSetId", + tagValue: { + constraints: { + MaxLength: 256, + }, + serializedName: "tagValue", type: { name: "String", }, @@ -11699,6 +11801,13 @@ export const InMageRcmProtectedDiskDetails: coreClient.CompositeMapper = { name: "Number", }, }, + diskState: { + serializedName: "diskState", + readOnly: true, + type: { + name: "String", + }, + }, logStorageAccountId: { serializedName: "logStorageAccountId", readOnly: true, @@ -11775,6 +11884,18 @@ export const InMageRcmProtectedDiskDetails: coreClient.CompositeMapper = { className: "InMageRcmSyncDetails", }, }, + customTargetDiskName: { + serializedName: "customTargetDiskName", + type: { + name: "String", + }, + }, + sectorSizeInBytes: { + serializedName: "sectorSizeInBytes", + type: { + name: "Number", + }, + }, }, }, }; @@ -11844,6 +11965,36 @@ export const InMageRcmSyncDetails: coreClient.CompositeMapper = { }, }; +export const InMageRcmUnProtectedDiskDetails: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "InMageRcmUnProtectedDiskDetails", + modelProperties: { + diskId: { + serializedName: "diskId", + readOnly: true, + type: { + name: "String", + }, + }, + diskName: { + serializedName: "diskName", + readOnly: true, + type: { + name: "String", + }, + }, + capacityInBytes: { + serializedName: "capacityInBytes", + readOnly: true, + type: { + name: "Number", + }, + }, + }, + }, +}; + export const OSDiskDetails: coreClient.CompositeMapper = { type: { name: "Composite", @@ -11871,6 +12022,36 @@ export const OSDiskDetails: coreClient.CompositeMapper = { }, }; +export const ManagedRunCommandScriptInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ManagedRunCommandScriptInput", + modelProperties: { + stepName: { + serializedName: "stepName", + required: true, + type: { + name: "String", + }, + }, + scriptUrl: { + serializedName: "scriptUrl", + required: true, + type: { + name: "String", + }, + }, + scriptParameters: { + serializedName: "scriptParameters", + required: true, + type: { + name: "String", + }, + }, + }, + }, +}; + export const MasterTargetServer: coreClient.CompositeMapper = { type: { name: "Composite", @@ -12524,6 +12705,12 @@ export const VMwareCbtDiskInput: coreClient.CompositeMapper = { name: "String", }, }, + sectorSizeInBytes: { + serializedName: "sectorSizeInBytes", + type: { + name: "Number", + }, + }, }, }, }; @@ -12675,6 +12862,12 @@ export const VMwareCbtProtectedDiskDetails: coreClient.CompositeMapper = { className: "GatewayOperationDetails", }, }, + sectorSizeInBytes: { + serializedName: "sectorSizeInBytes", + type: { + name: "Number", + }, + }, }, }, }; @@ -14660,6 +14853,12 @@ export const VMwareCbtMigrationDetails: coreClient.CompositeMapper = { name: "String", }, }, + linuxLicenseType: { + serializedName: "linuxLicenseType", + type: { + name: "String", + }, + }, dataMoverRunAsAccountId: { serializedName: "dataMoverRunAsAccountId", readOnly: true, @@ -14996,6 +15195,12 @@ export const VMwareCbtEnableMigrationInput: coreClient.CompositeMapper = { name: "String", }, }, + linuxLicenseType: { + serializedName: "linuxLicenseType", + type: { + name: "String", + }, + }, performSqlBulkRegistration: { serializedName: "performSqlBulkRegistration", type: { @@ -15131,6 +15336,12 @@ export const VMwareCbtEnableMigrationInput: coreClient.CompositeMapper = { value: { type: { name: "String" } }, }, }, + userSelectedOSName: { + serializedName: "userSelectedOSName", + type: { + name: "String", + }, + }, }, }, }; @@ -15235,6 +15446,12 @@ export const VMwareCbtUpdateMigrationItemInput: coreClient.CompositeMapper = { name: "String", }, }, + linuxLicenseType: { + serializedName: "linuxLicenseType", + type: { + name: "String", + }, + }, performAutoResync: { serializedName: "performAutoResync", type: { @@ -15289,6 +15506,18 @@ export const VMwareCbtMigrateInput: coreClient.CompositeMapper = { name: "String", }, }, + postMigrationSteps: { + serializedName: "postMigrationSteps", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ManagedRunCommandScriptInput", + }, + }, + }, + }, }, }, }; @@ -15376,6 +15605,18 @@ export const VMwareCbtTestMigrateInput: coreClient.CompositeMapper = { name: "String", }, }, + postMigrationSteps: { + serializedName: "postMigrationSteps", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ManagedRunCommandScriptInput", + }, + }, + }, + }, }, }, }; @@ -16223,6 +16464,13 @@ export const HyperVReplicaAzureReplicationDetails: coreClient.CompositeMapper = }, }, }, + targetVmSecurityProfile: { + serializedName: "targetVmSecurityProfile", + type: { + name: "Composite", + className: "SecurityProfileProperties", + }, + }, }, }, }; @@ -17473,6 +17721,18 @@ export const InMageRcmReplicationDetails: coreClient.CompositeMapper = { }, }, }, + unprotectedDisks: { + serializedName: "unprotectedDisks", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InMageRcmUnProtectedDiskDetails", + }, + }, + }, + }, isLastUpgradeSuccessful: { serializedName: "isLastUpgradeSuccessful", readOnly: true, @@ -17537,6 +17797,84 @@ export const InMageRcmReplicationDetails: coreClient.CompositeMapper = { className: "InMageRcmDiscoveredProtectedVmDetails", }, }, + targetVmTags: { + serializedName: "targetVmTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, + seedManagedDiskTags: { + serializedName: "seedManagedDiskTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, + targetManagedDiskTags: { + serializedName: "targetManagedDiskTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, + targetNicTags: { + serializedName: "targetNicTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, + sqlServerLicenseType: { + serializedName: "sqlServerLicenseType", + type: { + name: "String", + }, + }, + supportedOSVersions: { + serializedName: "supportedOSVersions", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + osName: { + serializedName: "osName", + type: { + name: "String", + }, + }, + targetVmSecurityProfile: { + serializedName: "targetVmSecurityProfile", + type: { + name: "Composite", + className: "SecurityProfileProperties", + }, + }, }, }, }; @@ -18021,6 +18359,12 @@ export const HyperVReplicaAzureEnableProtectionInput: coreClient.CompositeMapper name: "String", }, }, + userSelectedOSName: { + serializedName: "userSelectedOSName", + type: { + name: "String", + }, + }, vhdId: { serializedName: "vhdId", type: { @@ -18116,6 +18460,13 @@ export const HyperVReplicaAzureEnableProtectionInput: coreClient.CompositeMapper name: "String", }, }, + targetVmSecurityProfile: { + serializedName: "targetVmSecurityProfile", + type: { + name: "Composite", + className: "SecurityProfileProperties", + }, + }, targetVmSize: { serializedName: "targetVmSize", type: { @@ -18583,6 +18934,73 @@ export const InMageRcmEnableProtectionInput: coreClient.CompositeMapper = { name: "String", }, }, + sqlServerLicenseType: { + serializedName: "sqlServerLicenseType", + type: { + name: "String", + }, + }, + targetVmTags: { + serializedName: "targetVmTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, + seedManagedDiskTags: { + serializedName: "seedManagedDiskTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, + targetManagedDiskTags: { + serializedName: "targetManagedDiskTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, + targetNicTags: { + serializedName: "targetNicTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, + userSelectedOSName: { + serializedName: "userSelectedOSName", + type: { + name: "String", + }, + }, + targetVmSecurityProfile: { + serializedName: "targetVmSecurityProfile", + type: { + name: "Composite", + className: "SecurityProfileProperties", + }, + }, }, }, }; @@ -18925,6 +19343,48 @@ export const InMageRcmUpdateReplicationProtectedItemInput: coreClient.CompositeM name: "String", }, }, + sqlServerLicenseType: { + serializedName: "sqlServerLicenseType", + type: { + name: "String", + }, + }, + targetVmTags: { + serializedName: "targetVmTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, + targetManagedDiskTags: { + serializedName: "targetManagedDiskTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, + targetNicTags: { + serializedName: "targetNicTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserCreatedResourceTag", + }, + }, + }, + }, }, }, }; @@ -18967,6 +19427,33 @@ export const A2AAddDisksInput: coreClient.CompositeMapper = { }, }; +export const InMageRcmAddDisksInput: coreClient.CompositeMapper = { + serializedName: "InMageRcm", + type: { + name: "Composite", + className: "InMageRcmAddDisksInput", + uberParent: "AddDisksProviderSpecificInput", + polymorphicDiscriminator: + AddDisksProviderSpecificInput.type.polymorphicDiscriminator, + modelProperties: { + ...AddDisksProviderSpecificInput.type.modelProperties, + disks: { + serializedName: "disks", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InMageRcmDiskInput", + }, + }, + }, + }, + }, + }, +}; + export const A2AApplyRecoveryPointInput: coreClient.CompositeMapper = { serializedName: "A2A", type: { @@ -22854,6 +23341,7 @@ export let discriminators = { "UpdateReplicationProtectedItemProviderInput.InMageRcm": InMageRcmUpdateReplicationProtectedItemInput, "AddDisksProviderSpecificInput.A2A": A2AAddDisksInput, + "AddDisksProviderSpecificInput.InMageRcm": InMageRcmAddDisksInput, "ApplyRecoveryPointProviderSpecificInput.A2A": A2AApplyRecoveryPointInput, "ApplyRecoveryPointProviderSpecificInput.A2ACrossClusterMigration": A2ACrossClusterMigrationApplyRecoveryPointInput, diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/parameters.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/parameters.ts index 227d228b2682..c4a6fdace0de 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/parameters.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/parameters.ts @@ -92,7 +92,7 @@ export const $host: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2023-08-01", + defaultValue: "2024-01-01", isConstant: true, serializedName: "api-version", type: { diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/siteRecoveryManagementClient.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/siteRecoveryManagementClient.ts index 8ebb3f5b5cbc..a215c5167ac2 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/siteRecoveryManagementClient.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/siteRecoveryManagementClient.ts @@ -108,7 +108,7 @@ export class SiteRecoveryManagementClient extends coreClient.ServiceClient { credential: credentials, }; - const packageDetails = `azsdk-js-arm-recoveryservices-siterecovery/5.2.0`; + const packageDetails = `azsdk-js-arm-recoveryservices-siterecovery/5.3.0`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -162,7 +162,7 @@ export class SiteRecoveryManagementClient extends coreClient.ServiceClient { // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2023-08-01"; + this.apiVersion = options.apiVersion || "2024-01-01"; this.operations = new OperationsImpl(this); this.replicationAlertSettings = new ReplicationAlertSettingsImpl(this); this.replicationAppliances = new ReplicationAppliancesImpl(this); diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/test/sampleTest.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/test/sampleTest.ts new file mode 100644 index 000000000000..d64be981b694 --- /dev/null +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/test/sampleTest.ts @@ -0,0 +1,43 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { + Recorder, + RecorderStartOptions, + env, +} from "@azure-tools/test-recorder"; +import { assert } from "chai"; +import { Context } from "mocha"; + +const replaceableVariables: Record = { + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", + SUBSCRIPTION_ID: "azure_subscription_id", +}; + +const recorderOptions: RecorderStartOptions = { + envSetupForPlayback: replaceableVariables, +}; + +describe("My test", () => { + let recorder: Recorder; + + beforeEach(async function (this: Context) { + recorder = new Recorder(this.currentTest); + await recorder.start(recorderOptions); + }); + + afterEach(async function () { + await recorder.stop(); + }); + + it("sample test", async function () { + console.log("Hi, I'm a test!"); + }); +}); diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/tsconfig.json b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/tsconfig.json index b23a972336c8..3e6ae96443f3 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/tsconfig.json +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/tsconfig.json @@ -15,17 +15,11 @@ ], "declaration": true, "outDir": "./dist-esm", - "importHelpers": true, - "paths": { - "@azure/arm-recoveryservices-siterecovery": [ - "./src/index" - ] - } + "importHelpers": true }, "include": [ "./src/**/*.ts", - "./test/**/*.ts", - "samples-dev/**/*.ts" + "./test/**/*.ts" ], "exclude": [ "node_modules"