diff --git a/swaggerci/sqlvirtualmachine/.gitattributes b/swaggerci/sqlvirtualmachine/.gitattributes
new file mode 100644
index 000000000000..2125666142eb
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/.gitattributes
@@ -0,0 +1 @@
+* text=auto
\ No newline at end of file
diff --git a/swaggerci/sqlvirtualmachine/.gitignore b/swaggerci/sqlvirtualmachine/.gitignore
new file mode 100644
index 000000000000..7998f37e1e47
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/.gitignore
@@ -0,0 +1,5 @@
+bin
+obj
+.vs
+tools
+test/*-TestResults.xml
\ No newline at end of file
diff --git a/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.csproj b/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.csproj
new file mode 100644
index 000000000000..119885935f3c
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.csproj
@@ -0,0 +1,44 @@
+
+
+
+ 0.1.0
+ 7.1
+ netstandard2.0
+ Library
+ Az.SqlVirtualMachine.private
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine
+ true
+ false
+ ./bin
+ $(OutputPath)
+ Az.SqlVirtualMachine.nuspec
+ true
+
+
+ 1998, 1591
+ true
+
+
+
+
+ false
+ TRACE;DEBUG;NETSTANDARD
+
+
+
+ true
+ true
+ MSSharedLibKey.snk
+ TRACE;RELEASE;NETSTANDARD;SIGN
+
+
+
+
+
+
+
+
+ $(DefaultItemExcludes);resources/**
+
+
+
\ No newline at end of file
diff --git a/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.format.ps1xml b/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.format.ps1xml
new file mode 100644
index 000000000000..aa20abf7ca79
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.format.ps1xml
@@ -0,0 +1,1715 @@
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.SqlVirtualMachineIdentity
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.SqlVirtualMachineIdentity
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AvailabilityGroupListenerName
+
+
+ Id
+
+
+ ResourceGroupName
+
+
+ SqlVirtualMachineGroupName
+
+
+ SqlVirtualMachineName
+
+
+ SubscriptionId
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.SqlVirtualMachineTroubleshootAcceptedResponseHeaders
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.SqlVirtualMachineTroubleshootAcceptedResponseHeaders
+
+
+
+
+
+
+
+
+
+
+
+ Location
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AadAuthenticationSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AadAuthenticationSettings
+
+
+
+
+
+
+
+
+
+
+
+ ClientId
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AdditionalFeaturesServerConfigurations
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AdditionalFeaturesServerConfigurations
+
+
+
+
+
+
+
+
+
+
+
+ IsRServicesEnabled
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AgReplica
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AgReplica
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Commit
+
+
+ Failover
+
+
+ ReadableSecondary
+
+
+ Role
+
+
+ SqlVirtualMachineInstanceId
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AssessmentSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AssessmentSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Enable
+
+
+ RunImmediately
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AutoBackupSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AutoBackupSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ BackupScheduleType
+
+
+ BackupSystemDb
+
+
+ DaysOfWeek
+
+
+ Enable
+
+
+ EnableEncryption
+
+
+ FullBackupFrequency
+
+
+ FullBackupStartTime
+
+
+ FullBackupWindowHour
+
+
+ LogBackupFrequency
+
+
+ Password
+
+
+ RetentionPeriod
+
+
+ StorageAccessKey
+
+
+ StorageAccountUrl
+
+
+ StorageContainerName
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AutoPatchingSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AutoPatchingSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DayOfWeek
+
+
+ Enable
+
+
+ MaintenanceWindowDuration
+
+
+ MaintenanceWindowStartingHour
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AvailabilityGroupListener
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AvailabilityGroupListener
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Id
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AvailabilityGroupListenerListResult
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AvailabilityGroupListenerListResult
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AvailabilityGroupListenerProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.AvailabilityGroupListenerProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AvailabilityGroupName
+
+
+ CreateDefaultAvailabilityGroupIfNotExist
+
+
+ Port
+
+
+ ProvisioningState
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.KeyVaultCredentialSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.KeyVaultCredentialSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AzureKeyVaultUrl
+
+
+ CredentialName
+
+
+ Enable
+
+
+ ServicePrincipalName
+
+
+ ServicePrincipalSecret
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.LoadBalancerConfiguration
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.LoadBalancerConfiguration
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ LoadBalancerResourceId
+
+
+ ProbePort
+
+
+ PublicIPAddressResourceId
+
+
+ SqlVirtualMachineInstance
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.MultiSubnetIPConfiguration
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.MultiSubnetIPConfiguration
+
+
+
+
+
+
+
+
+
+
+
+ SqlVirtualMachineInstance
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.Operation
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.Operation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Origin
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.OperationDisplay
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.OperationDisplay
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Description
+
+
+ Operation
+
+
+ Provider
+
+
+ Resource
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.OperationListResult
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.OperationListResult
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.PrivateIPAddress
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.PrivateIPAddress
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IPAddress
+
+
+ SubnetResourceId
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ProxyResource
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ProxyResource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Id
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.Resource
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.Resource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Id
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ResourceIdentity
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ResourceIdentity
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PrincipalId
+
+
+ TenantId
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.Schedule
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.Schedule
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DayOfWeek
+
+
+ Enable
+
+
+ MonthlyOccurrence
+
+
+ StartTime
+
+
+ WeeklyInterval
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlConnectivityUpdateSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlConnectivityUpdateSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ConnectivityType
+
+
+ Port
+
+
+ SqlAuthUpdatePassword
+
+
+ SqlAuthUpdateUserName
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlInstanceSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlInstanceSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Collation
+
+
+ IsIfiEnabled
+
+
+ IsLpimEnabled
+
+
+ IsOptimizeForAdHocWorkloadsEnabled
+
+
+ MaxDop
+
+
+ MaxServerMemoryMb
+
+
+ MinServerMemoryMb
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlStorageSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlStorageSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DefaultFilePath
+
+
+ Lun
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlStorageUpdateSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlStorageUpdateSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DiskConfigurationType
+
+
+ DiskCount
+
+
+ StartingDeviceId
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlTempDbSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlTempDbSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DataFileCount
+
+
+ DataFileSize
+
+
+ DataGrowth
+
+
+ DefaultFilePath
+
+
+ LogFileSize
+
+
+ LogGrowth
+
+
+ Lun
+
+
+ PersistFolder
+
+
+ PersistFolderPath
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachine
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachine
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Id
+
+
+ Location
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineGroup
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineGroup
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Id
+
+
+ Location
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineGroupListResult
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineGroupListResult
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineGroupProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineGroupProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ClusterConfiguration
+
+
+ ClusterManagerType
+
+
+ ProvisioningState
+
+
+ ScaleType
+
+
+ SqlImageOffer
+
+
+ SqlImageSku
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineGroupUpdateTags
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineGroupUpdateTags
+
+
+
+
+
+
+
+
+
+
+
+ Item
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineListResult
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineListResult
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ EnableAutomaticUpgrade
+
+
+ LeastPrivilegeMode
+
+
+ ProvisioningState
+
+
+ SqlImageOffer
+
+
+ SqlImageSku
+
+
+ SqlManagement
+
+
+ SqlServerLicenseType
+
+
+ SqlVirtualMachineGroupResourceId
+
+
+ VirtualMachineResourceId
+
+
+ WsfcStaticIP
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineUpdateTags
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVirtualMachineUpdateTags
+
+
+
+
+
+
+
+
+
+
+
+ Item
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVMTroubleshoot
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlVMTroubleshoot
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ EndTimeUtc
+
+
+ StartTimeUtc
+
+
+ TroubleShootingScenario
+
+
+ VirtualMachineResourceId
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlWorkloadTypeUpdateSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.SqlWorkloadTypeUpdateSettings
+
+
+
+
+
+
+
+
+
+
+
+ SqlWorkloadType
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.StorageConfigurationSettings
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.StorageConfigurationSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DiskConfigurationType
+
+
+ SqlSystemDbOnDataDisk
+
+
+ StorageWorkloadType
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.TrackedResource
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.TrackedResource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Id
+
+
+ Name
+
+
+ Type
+
+
+ Location
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.TrackedResourceTags
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.TrackedResourceTags
+
+
+
+
+
+
+
+
+
+
+
+ Item
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.TroubleshootStatus
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.TroubleshootStatus
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ EndTimeUtc
+
+
+ LastTriggerTimeUtc
+
+
+ RootCause
+
+
+ StartTimeUtc
+
+
+ TroubleShootingScenario
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.UnHealthyReplicaProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.UnHealthyReplicaProperties
+
+
+
+
+
+
+
+
+
+
+
+ AvailabilityGroupName
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.WsfcDomainCredentials
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.WsfcDomainCredentials
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ClusterBootstrapAccountPassword
+
+
+ ClusterOperatorAccountPassword
+
+
+ SqlServiceAccountPassword
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.WsfcDomainProfile
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.WsfcDomainProfile
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ClusterBootstrapAccount
+
+
+ ClusterOperatorAccount
+
+
+ ClusterSubnetType
+
+
+ DomainFqdn
+
+
+ FileShareWitnessPath
+
+
+ OuPath
+
+
+ SqlServiceAccount
+
+
+ StorageAccountPrimaryKey
+
+
+ StorageAccountUrl
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20.SystemData
+
+ Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20.SystemData
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ CreatedAt
+
+
+ CreatedBy
+
+
+ CreatedByType
+
+
+ LastModifiedAt
+
+
+ LastModifiedBy
+
+
+ LastModifiedByType
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.nuspec b/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.nuspec
new file mode 100644
index 000000000000..f464917199a1
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.nuspec
@@ -0,0 +1,32 @@
+
+
+
+ Az.SqlVirtualMachine
+ 0.1.0
+ Microsoft Corporation
+ Microsoft Corporation
+ true
+ https://aka.ms/azps-license
+ https://github.com/Azure/azure-powershell
+ Microsoft Azure PowerShell: $(service-name) cmdlets
+
+ Microsoft Corporation. All rights reserved.
+ Azure ResourceManager ARM PSModule $(service-name)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.psd1 b/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.psd1
new file mode 100644
index 000000000000..968b4c78116e
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.psd1
@@ -0,0 +1,24 @@
+@{
+ GUID = '9515a930-845b-4e48-b55f-e10415184cca'
+ RootModule = './Az.SqlVirtualMachine.psm1'
+ ModuleVersion = '0.1.0'
+ CompatiblePSEditions = 'Core', 'Desktop'
+ Author = 'Microsoft Corporation'
+ CompanyName = 'Microsoft Corporation'
+ Copyright = 'Microsoft Corporation. All rights reserved.'
+ Description = 'Microsoft Azure PowerShell: SqlVirtualMachine cmdlets'
+ PowerShellVersion = '5.1'
+ DotNetFrameworkVersion = '4.7.2'
+ RequiredAssemblies = './bin/Az.SqlVirtualMachine.private.dll'
+ FormatsToProcess = './Az.SqlVirtualMachine.format.ps1xml'
+ FunctionsToExport = 'Get-AzSqlVirtualMachineAvailabilityGroupListener', 'Get-AzSqlVirtualMachineSqlVirtualMachine', 'Get-AzSqlVirtualMachineSqlVirtualMachineGroup', 'Invoke-AzSqlVirtualMachineRedeploySqlVirtualMachine', 'Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot', 'New-AzSqlVirtualMachineAvailabilityGroupListener', 'New-AzSqlVirtualMachineSqlVirtualMachine', 'New-AzSqlVirtualMachineSqlVirtualMachineGroup', 'Remove-AzSqlVirtualMachineAvailabilityGroupListener', 'Remove-AzSqlVirtualMachineSqlVirtualMachine', 'Remove-AzSqlVirtualMachineSqlVirtualMachineGroup', 'Start-AzSqlVirtualMachineSqlVirtualMachineAssessment', 'Update-AzSqlVirtualMachineSqlVirtualMachine', 'Update-AzSqlVirtualMachineSqlVirtualMachineGroup', '*'
+ AliasesToExport = '*'
+ PrivateData = @{
+ PSData = @{
+ Tags = 'Azure', 'ResourceManager', 'ARM', 'PSModule', 'SqlVirtualMachine'
+ LicenseUri = 'https://aka.ms/azps-license'
+ ProjectUri = 'https://github.com/Azure/azure-powershell'
+ ReleaseNotes = ''
+ }
+ }
+}
diff --git a/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.psm1 b/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.psm1
new file mode 100644
index 000000000000..0e576d36756c
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/Az.SqlVirtualMachine.psm1
@@ -0,0 +1,107 @@
+# region Generated
+ # ----------------------------------------------------------------------------------
+ # 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.
+ # ----------------------------------------------------------------------------------
+ # Load required Az.Accounts module
+ $accountsName = 'Az.Accounts'
+ $accountsModule = Get-Module -Name $accountsName
+ if(-not $accountsModule) {
+ $localAccountsPath = Join-Path $PSScriptRoot 'generated/modules'
+ if(Test-Path -Path $localAccountsPath) {
+ $localAccounts = Get-ChildItem -Path $localAccountsPath -Recurse -Include 'Az.Accounts.psd1' | Select-Object -Last 1
+ if($localAccounts) {
+ $accountsModule = Import-Module -Name ($localAccounts.FullName) -Scope Global -PassThru
+ }
+ }
+ if(-not $accountsModule) {
+ $hasAdequateVersion = (Get-Module -Name $accountsName -ListAvailable | Where-Object { $_.Version -ge [System.Version]'2.7.5' } | Measure-Object).Count -gt 0
+ if($hasAdequateVersion) {
+ $accountsModule = Import-Module -Name $accountsName -MinimumVersion 2.7.5 -Scope Global -PassThru
+ }
+ }
+ }
+
+ if(-not $accountsModule) {
+ Write-Error "`nThis module requires $accountsName version 2.7.5 or greater. For installation instructions, please see: https://docs.microsoft.com/powershell/azure/install-az-ps" -ErrorAction Stop
+ } elseif (($accountsModule.Version -lt [System.Version]'2.7.5') -and (-not $localAccounts)) {
+ Write-Error "`nThis module requires $accountsName version 2.7.5 or greater. An earlier version of Az.Accounts is imported in the current PowerShell session. If you are running test, please try to add the switch '-RegenerateSupportModule' when executing 'test-module.ps1'. Otherwise please open a new PowerShell session and import this module again.`nAdditionally, this error could indicate that multiple incompatible versions of Azure PowerShell modules are installed on your system. For troubleshooting information, please see: https://aka.ms/azps-version-error" -ErrorAction Stop
+ }
+ Write-Information "Loaded Module '$($accountsModule.Name)'"
+
+ # Load the private module dll
+ $null = Import-Module -Name (Join-Path $PSScriptRoot './bin/Az.SqlVirtualMachine.private.dll')
+
+ # Get the private module's instance
+ $instance = [Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Module]::Instance
+
+ # Ask for the shared functionality table
+ $VTable = Register-AzModule
+
+ # Tweaks the pipeline on module load
+ $instance.OnModuleLoad = $VTable.OnModuleLoad
+
+ # Following two delegates are added for telemetry
+ $instance.GetTelemetryId = $VTable.GetTelemetryId
+ $instance.Telemetry = $VTable.Telemetry
+
+
+ # Tweaks the pipeline per call
+ $instance.OnNewRequest = $VTable.OnNewRequest
+
+ # Gets shared parameter values
+ $instance.GetParameterValue = $VTable.GetParameterValue
+
+ # Allows shared module to listen to events from this module
+ $instance.EventListener = $VTable.EventListener
+
+ # Gets shared argument completers
+ $instance.ArgumentCompleter = $VTable.ArgumentCompleter
+
+ # The name of the currently selected Azure profile
+ $instance.ProfileName = $VTable.ProfileName
+
+
+ # Load the custom module
+ $customModulePath = Join-Path $PSScriptRoot './custom/Az.SqlVirtualMachine.custom.psm1'
+ if(Test-Path $customModulePath) {
+ $null = Import-Module -Name $customModulePath
+ }
+
+ # Export nothing to clear implicit exports
+ Export-ModuleMember
+
+ # Export proxy cmdlet scripts
+ $exportsPath = Join-Path $PSScriptRoot './exports'
+ $directories = Get-ChildItem -Directory -Path $exportsPath
+ $profileDirectory = $null
+ if($instance.ProfileName) {
+ if(($directories | ForEach-Object { $_.Name }) -contains $instance.ProfileName) {
+ $profileDirectory = $directories | Where-Object { $_.Name -eq $instance.ProfileName }
+ } else {
+ # Don't export anything if the profile doesn't exist for the module
+ $exportsPath = $null
+ Write-Warning "Selected Azure profile '$($instance.ProfileName)' does not exist for module '$($instance.Name)'. No cmdlets were loaded."
+ }
+ } elseif(($directories | Measure-Object).Count -gt 0) {
+ # Load the last folder if no profile is selected
+ $profileDirectory = $directories | Select-Object -Last 1
+ }
+
+ if($profileDirectory) {
+ Write-Information "Loaded Azure profile '$($profileDirectory.Name)' for module '$($instance.Name)'"
+ $exportsPath = $profileDirectory.FullName
+ }
+
+ if($exportsPath) {
+ Get-ChildItem -Path $exportsPath -Recurse -Include '*.ps1' -File | ForEach-Object { . $_.FullName }
+ $cmdletNames = Get-ScriptCmdlet -ScriptFolder $exportsPath
+ Export-ModuleMember -Function $cmdletNames -Alias (Get-ScriptCmdlet -ScriptFolder $exportsPath -AsAlias)
+ }
+
+ # Finalize initialization of this module
+ $instance.Init();
+ Write-Information "Loaded Module '$($instance.Name)'"
+# endregion
diff --git a/swaggerci/sqlvirtualmachine/MSSharedLibKey.snk b/swaggerci/sqlvirtualmachine/MSSharedLibKey.snk
new file mode 100644
index 000000000000..695f1b38774e
Binary files /dev/null and b/swaggerci/sqlvirtualmachine/MSSharedLibKey.snk differ
diff --git a/swaggerci/sqlvirtualmachine/README.md b/swaggerci/sqlvirtualmachine/README.md
new file mode 100644
index 000000000000..6e02e30a0b5b
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/README.md
@@ -0,0 +1,27 @@
+
+# Az.SqlVirtualMachine
+This directory contains the PowerShell module for the SqlVirtualMachine service.
+
+---
+## Status
+[](https://www.powershellgallery.com/packages/Az.SqlVirtualMachine/)
+
+## Info
+- Modifiable: yes
+- Generated: all
+- Committed: yes
+- Packaged: yes
+
+---
+## Detail
+This module was primarily generated via [AutoRest](https://github.com/Azure/autorest) using the [PowerShell](https://github.com/Azure/autorest.powershell) extension.
+
+## Module Requirements
+- [Az.Accounts module](https://www.powershellgallery.com/packages/Az.Accounts/), version 2.7.5 or greater
+
+## Authentication
+AutoRest does not generate authentication code for the module. Authentication is handled via Az.Accounts by altering the HTTP payload before it is sent.
+
+## Development
+For information on how to develop for `Az.SqlVirtualMachine`, see [how-to.md](how-to.md).
+
diff --git a/swaggerci/sqlvirtualmachine/build-module.ps1 b/swaggerci/sqlvirtualmachine/build-module.ps1
new file mode 100644
index 000000000000..f3282557d9cb
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/build-module.ps1
@@ -0,0 +1,153 @@
+# ----------------------------------------------------------------------------------
+# 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.
+# ----------------------------------------------------------------------------------
+param([switch]$Isolated, [switch]$Run, [switch]$Test, [switch]$Docs, [switch]$Pack, [switch]$Code, [switch]$Release, [switch]$Debugger, [switch]$NoDocs)
+$ErrorActionPreference = 'Stop'
+
+if($PSEdition -ne 'Core') {
+ Write-Error 'This script requires PowerShell Core to execute. [Note] Generated cmdlets will work in both PowerShell Core or Windows PowerShell.'
+}
+
+if(-not $Isolated -and -not $Debugger) {
+ Write-Host -ForegroundColor Green 'Creating isolated process...'
+ $pwsh = [System.Diagnostics.Process]::GetCurrentProcess().Path
+ & "$pwsh" -NonInteractive -NoLogo -NoProfile -File $MyInvocation.MyCommand.Path @PSBoundParameters -Isolated
+
+ if($LastExitCode -ne 0) {
+ # Build failed. Don't attempt to run the module.
+ return
+ }
+
+ if($Test) {
+ . (Join-Path $PSScriptRoot 'test-module.ps1')
+ if($LastExitCode -ne 0) {
+ # Tests failed. Don't attempt to run the module.
+ return
+ }
+ }
+
+ if($Docs) {
+ . (Join-Path $PSScriptRoot 'generate-help.ps1')
+ if($LastExitCode -ne 0) {
+ # Docs generation failed. Don't attempt to run the module.
+ return
+ }
+ }
+
+ if($Pack) {
+ . (Join-Path $PSScriptRoot 'pack-module.ps1')
+ if($LastExitCode -ne 0) {
+ # Packing failed. Don't attempt to run the module.
+ return
+ }
+ }
+
+ $runModulePath = Join-Path $PSScriptRoot 'run-module.ps1'
+ if($Code) {
+ . $runModulePath -Code
+ } elseif($Run) {
+ . $runModulePath
+ } else {
+ Write-Host -ForegroundColor Cyan "To run this module in an isolated PowerShell session, run the 'run-module.ps1' script or provide the '-Run' parameter to this script."
+ }
+ return
+}
+
+$binFolder = Join-Path $PSScriptRoot 'bin'
+$objFolder = Join-Path $PSScriptRoot 'obj'
+
+if(-not $Debugger) {
+ Write-Host -ForegroundColor Green 'Cleaning build folders...'
+ $null = Remove-Item -Recurse -ErrorAction SilentlyContinue -Path $binFolder, $objFolder
+
+ if((Test-Path $binFolder) -or (Test-Path $objFolder)) {
+ Write-Host -ForegroundColor Cyan 'Did you forget to exit your isolated module session before rebuilding?'
+ Write-Error 'Unable to clean ''bin'' or ''obj'' folder. A process may have an open handle.'
+ }
+
+ Write-Host -ForegroundColor Green 'Compiling module...'
+ $buildConfig = 'Debug'
+ if($Release) {
+ $buildConfig = 'Release'
+ }
+ dotnet publish $PSScriptRoot --verbosity quiet --configuration $buildConfig /nologo
+ if($LastExitCode -ne 0) {
+ Write-Error 'Compilation failed.'
+ }
+
+ $null = Remove-Item -Recurse -ErrorAction SilentlyContinue -Path (Join-Path $binFolder 'Debug'), (Join-Path $binFolder 'Release')
+}
+
+$dll = Join-Path $PSScriptRoot 'bin/Az.SqlVirtualMachine.private.dll'
+if(-not (Test-Path $dll)) {
+ Write-Error "Unable to find output assembly in '$binFolder'."
+}
+
+# Load DLL to use build-time cmdlets
+$null = Import-Module -Name $dll
+
+$modulePaths = $dll
+$customPsm1 = Join-Path $PSScriptRoot 'custom/Az.SqlVirtualMachine.custom.psm1'
+if(Test-Path $customPsm1) {
+ $modulePaths = @($dll, $customPsm1)
+}
+
+$exportsFolder = Join-Path $PSScriptRoot 'exports'
+if(Test-Path $exportsFolder) {
+ $null = Get-ChildItem -Path $exportsFolder -Recurse -Exclude 'README.md' | Remove-Item -Recurse -ErrorAction SilentlyContinue
+}
+$null = New-Item -ItemType Directory -Force -Path $exportsFolder
+
+$internalFolder = Join-Path $PSScriptRoot 'internal'
+if(Test-Path $internalFolder) {
+ $null = Get-ChildItem -Path $internalFolder -Recurse -Exclude '*.psm1', 'README.md' | Remove-Item -Recurse -ErrorAction SilentlyContinue
+}
+$null = New-Item -ItemType Directory -Force -Path $internalFolder
+
+$psd1 = Join-Path $PSScriptRoot './Az.SqlVirtualMachine.psd1'
+$guid = Get-ModuleGuid -Psd1Path $psd1
+$moduleName = 'Az.SqlVirtualMachine'
+$examplesFolder = Join-Path $PSScriptRoot 'examples'
+$null = New-Item -ItemType Directory -Force -Path $examplesFolder
+
+Write-Host -ForegroundColor Green 'Creating cmdlets for specified models...'
+$modelCmdlets = @()
+if ($modelCmdlets.Count -gt 0) {
+ . (Join-Path $PSScriptRoot 'create-model-cmdlets.ps1')
+ CreateModelCmdlet($modelCmdlets)
+}
+
+if($NoDocs) {
+ Write-Host -ForegroundColor Green 'Creating exports...'
+ Export-ProxyCmdlet -ModuleName $moduleName -ModulePath $modulePaths -ExportsFolder $exportsFolder -InternalFolder $internalFolder -ExcludeDocs -ExamplesFolder $examplesFolder
+} else {
+ Write-Host -ForegroundColor Green 'Creating exports and docs...'
+ $moduleDescription = 'Microsoft Azure PowerShell: SqlVirtualMachine cmdlets'
+ $docsFolder = Join-Path $PSScriptRoot 'docs'
+ if(Test-Path $docsFolder) {
+ $null = Get-ChildItem -Path $docsFolder -Recurse -Exclude 'README.md' | Remove-Item -Recurse -ErrorAction SilentlyContinue
+ }
+ $null = New-Item -ItemType Directory -Force -Path $docsFolder
+ Export-ProxyCmdlet -ModuleName $moduleName -ModulePath $modulePaths -ExportsFolder $exportsFolder -InternalFolder $internalFolder -ModuleDescription $moduleDescription -DocsFolder $docsFolder -ExamplesFolder $examplesFolder -ModuleGuid $guid
+}
+
+Write-Host -ForegroundColor Green 'Creating format.ps1xml...'
+$formatPs1xml = Join-Path $PSScriptRoot './Az.SqlVirtualMachine.format.ps1xml'
+Export-FormatPs1xml -FilePath $formatPs1xml
+
+Write-Host -ForegroundColor Green 'Creating psd1...'
+$customFolder = Join-Path $PSScriptRoot 'custom'
+Export-Psd1 -ExportsFolder $exportsFolder -CustomFolder $customFolder -Psd1Path $psd1 -ModuleGuid $guid
+
+Write-Host -ForegroundColor Green 'Creating test stubs...'
+$testFolder = Join-Path $PSScriptRoot 'test'
+$null = New-Item -ItemType Directory -Force -Path $testFolder
+Export-TestStub -ModuleName $moduleName -ExportsFolder $exportsFolder -OutputFolder $testFolder
+
+Write-Host -ForegroundColor Green 'Creating example stubs...'
+Export-ExampleStub -ExportsFolder $exportsFolder -OutputFolder $examplesFolder
+
+Write-Host -ForegroundColor Green '-------------Done-------------'
diff --git a/swaggerci/sqlvirtualmachine/check-dependencies.ps1 b/swaggerci/sqlvirtualmachine/check-dependencies.ps1
new file mode 100644
index 000000000000..ec3055201a71
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/check-dependencies.ps1
@@ -0,0 +1,57 @@
+# ----------------------------------------------------------------------------------
+# 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.
+# ----------------------------------------------------------------------------------
+param([switch]$Isolated, [switch]$Accounts, [switch]$Pester, [switch]$Resources)
+$ErrorActionPreference = 'Stop'
+
+if(-not $Isolated) {
+ Write-Host -ForegroundColor Green 'Creating isolated process...'
+ $pwsh = [System.Diagnostics.Process]::GetCurrentProcess().Path
+ & "$pwsh" -NoExit -NoLogo -NoProfile -File $MyInvocation.MyCommand.Path @PSBoundParameters -Isolated
+ return
+}
+
+function DownloadModule ([bool]$predicate, [string]$path, [string]$moduleName, [string]$versionMinimum, [string]$requiredVersion) {
+ if($predicate) {
+ $module = Get-Module -ListAvailable -Name $moduleName
+ if((-not $module) -or ($versionMinimum -and ($module | ForEach-Object { $_.Version } | Where-Object { $_ -ge [System.Version]$versionMinimum } | Measure-Object).Count -eq 0) -or ($requiredVersion -and ($module | ForEach-Object { $_.Version } | Where-Object { $_ -eq [System.Version]$requiredVersion } | Measure-Object).Count -eq 0)) {
+ $null = New-Item -ItemType Directory -Force -Path $path
+ Write-Host -ForegroundColor Green "Installing local $moduleName module into '$path'..."
+ if ($requiredVersion) {
+ Find-Module -Name $moduleName -RequiredVersion $requiredVersion -Repository PSGallery | Save-Module -Path $path
+ }elseif($versionMinimum) {
+ Find-Module -Name $moduleName -MinimumVersion $versionMinimum -Repository PSGallery | Save-Module -Path $path
+ } else {
+ Find-Module -Name $moduleName -Repository PSGallery | Save-Module -Path $path
+ }
+ }
+ }
+}
+
+$ProgressPreference = 'SilentlyContinue'
+$all = (@($Accounts.IsPresent, $Pester.IsPresent) | Select-Object -Unique | Measure-Object).Count -eq 1
+
+$localModulesPath = Join-Path $PSScriptRoot 'generated/modules'
+if(Test-Path -Path $localModulesPath) {
+ $env:PSModulePath = "$localModulesPath$([IO.Path]::PathSeparator)$env:PSModulePath"
+}
+
+DownloadModule -predicate ($all -or $Accounts) -path $localModulesPath -moduleName 'Az.Accounts' -versionMinimum '2.7.5'
+DownloadModule -predicate ($all -or $Pester) -path $localModulesPath -moduleName 'Pester' -requiredVersion '4.10.1'
+
+$tools = Join-Path $PSScriptRoot 'tools'
+$resourceDir = Join-Path $tools 'Resources'
+$resourceModule = Join-Path $HOME '.PSSharedModules\Resources\Az.Resources.TestSupport.psm1'
+
+if ($Resources.IsPresent -and ((-not (Test-Path -Path $resourceModule)) -or $RegenerateSupportModule.IsPresent)) {
+ Write-Host -ForegroundColor Green "Building local Resource module used for test..."
+ Set-Location $resourceDir
+ $null = autorest .\README.md --use:@autorest/powershell@3.0.414 --output-folder=$HOME/.PSSharedModules/Resources
+ $null = Copy-Item custom/* $HOME/.PSSharedModules/Resources/custom/
+ Set-Location $HOME/.PSSharedModules/Resources
+ $null = .\build-module.ps1
+ Set-Location $PSScriptRoot
+}
diff --git a/swaggerci/sqlvirtualmachine/create-model-cmdlets.ps1 b/swaggerci/sqlvirtualmachine/create-model-cmdlets.ps1
new file mode 100644
index 000000000000..ed4389202276
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/create-model-cmdlets.ps1
@@ -0,0 +1,163 @@
+# ----------------------------------------------------------------------------------
+# 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.
+# ----------------------------------------------------------------------------------
+
+function CreateModelCmdlet {
+
+ param([string[]]$Models)
+
+ if ($Models.Count -eq 0)
+ {
+ return
+ }
+
+ $ModelCsPath = Join-Path (Join-Path $PSScriptRoot 'generated/api') 'Models'
+ $ModuleName = 'SqlVirtualMachine'
+ $OutputDir = Join-Path $PSScriptRoot 'custom/autogen-model-cmdlets'
+ $null = New-Item -ItemType Directory -Force -Path $OutputDir
+
+ $CsFiles = Get-ChildItem -Path $ModelCsPath -Recurse -Filter *.cs
+ $Content = ''
+ $null = $CsFiles | ForEach-Object -Process { if ($_.Name.Split('.').count -eq 2 )
+ { $Content += get-content $_.fullname -raw
+ } }
+
+ $Tree = [Microsoft.CodeAnalysis.CSharp.SyntaxFactory]::ParseCompilationUnit($Content)
+ $Nodes = $Tree.ChildNodes().ChildNodes()
+ foreach ($Model in $Models)
+ {
+ $InterfaceNode = $Nodes | Where-Object { ($_.Keyword.value -eq 'interface') -and ($_.Identifier.value -eq "I$Model") }
+ if ($InterfaceNode.count -eq 0) {
+ continue
+ }
+ # through a queue, we iterate all the parent models.
+ $Queue = @($InterfaceNode)
+ $visited = @("I$Model")
+ $AllInterfaceNodes = @()
+ while ($Queue.count -ne 0)
+ {
+ $AllInterfaceNodes += $Queue[0]
+ # Baselist contains the direct parent models.
+ foreach ($parent in $Queue[0].BaseList.Types)
+ {
+ if (($parent.Type.Right.Identifier.Value -ne 'IJsonSerializable') -and (-not $visited.Contains($parent.Type.Right.Identifier.Value)))
+ {
+ $Queue = [Array]$Queue + ($Nodes | Where-Object { ($_.Keyword.value -eq 'interface') -and ($_.Identifier.value -eq $parent.Type.Right.Identifier.Value) })
+ $visited = [Array]$visited + $parent.Type.Right.Identifier.Value
+ }
+ }
+ $first, $Queue = $Queue
+ }
+
+ $Namespace = $InterfaceNode.Parent.Name
+ $ObjectType = $Model
+ $ObjectTypeWithNamespace = "${Namespace}.${ObjectType}"
+ # remove duplicated module name
+ if ($ObjectType.StartsWith($ModuleName)) {
+ $ModulePrefix = ''
+ } else {
+ $ModulePrefix = $ModuleName
+ }
+ $OutputPath = Join-Path -ChildPath "New-Az${ModulePrefix}${ObjectType}Object.ps1" -Path $OutputDir
+
+ $ParameterDefineScriptList = New-Object System.Collections.Generic.List[string]
+ $ParameterAssignScriptList = New-Object System.Collections.Generic.List[string]
+ foreach ($Node in $AllInterfaceNodes)
+ {
+ foreach ($Member in $Node.Members)
+ {
+ $Arguments = $Member.AttributeLists.Attributes.ArgumentList.Arguments
+ $Required = $false
+ $Description = ""
+ $Readonly = $False
+ foreach ($Argument in $Arguments)
+ {
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Required")
+ {
+ $Required = $Argument.Expression.Token.Value
+ }
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Description")
+ {
+ $Description = $Argument.Expression.Token.Value.Trim('.').replace('"', '`"')
+ }
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Readonly")
+ {
+ $Readonly = $Argument.Expression.Token.Value
+ }
+ }
+ if ($Readonly)
+ {
+ continue
+ }
+ $Identifier = $Member.Identifier.Value
+ $Type = $Member.Type.ToString().replace('?', '').Split("::")[-1]
+ $ParameterDefinePropertyList = New-Object System.Collections.Generic.List[string]
+ if ($Required)
+ {
+ $ParameterDefinePropertyList.Add("Mandatory")
+ }
+ if ($Description -ne "")
+ {
+ $ParameterDefinePropertyList.Add("HelpMessage=`"${Description}.`"")
+ }
+ $ParameterDefineProperty = [System.String]::Join(", ", $ParameterDefinePropertyList)
+ # check whether completer is needed
+ $completer = '';
+ if($Type.Split('.').Split('.')[-2] -eq 'Support') {
+ # If Type is an array, need to strip []
+ $strippedType = $Type.Replace('[]', '')
+ $completer += "`n [ArgumentCompleter([${strippedType}])]"
+ }
+ $ParameterDefineScript = "
+ [Parameter($ParameterDefineProperty)]${completer}
+ [${Type}]
+ `$${Identifier}"
+ $ParameterDefineScriptList.Add($ParameterDefineScript)
+ $ParameterAssignScriptList.Add("
+ if (`$PSBoundParameters.ContainsKey('${Identifier}')) {
+ `$Object.${Identifier} = `$${Identifier}
+ }")
+ }
+ }
+ $ParameterDefineScript = $ParameterDefineScriptList | Join-String -Separator ","
+ $ParameterAssignScript = $ParameterAssignScriptList | Join-String -Separator ""
+
+ $Script = "
+# ----------------------------------------------------------------------------------
+# 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.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+Create an in-memory object for ${ObjectType}.
+.Description
+Create an in-memory object for ${ObjectType}.
+
+.Outputs
+${ObjectTypeWithNamespace}
+.Link
+https://docs.microsoft.com/en-us/powershell/module/az.${ModuleName}/new-Az${ModulePrefix}${ObjectType}Object
+#>
+function New-Az${ModulePrefix}${ObjectType}Object {
+ [OutputType('${ObjectTypeWithNamespace}')]
+ [CmdletBinding(PositionalBinding=`$false)]
+ Param(
+${ParameterDefineScript}
+ )
+
+ process {
+ `$Object = [${ObjectTypeWithNamespace}]::New()
+${ParameterAssignScript}
+ return `$Object
+ }
+}
+"
+ Set-Content -Path $OutputPath -Value $Script
+ }
+}
diff --git a/swaggerci/sqlvirtualmachine/custom/Az.SqlVirtualMachine.custom.psm1 b/swaggerci/sqlvirtualmachine/custom/Az.SqlVirtualMachine.custom.psm1
new file mode 100644
index 000000000000..47638d9c8516
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/custom/Az.SqlVirtualMachine.custom.psm1
@@ -0,0 +1,17 @@
+# region Generated
+ # Load the private module dll
+ $null = Import-Module -PassThru -Name (Join-Path $PSScriptRoot '../bin/Az.SqlVirtualMachine.private.dll')
+
+ # Load the internal module
+ $internalModulePath = Join-Path $PSScriptRoot '../internal/Az.SqlVirtualMachine.internal.psm1'
+ if(Test-Path $internalModulePath) {
+ $null = Import-Module -Name $internalModulePath
+ }
+
+ # Export nothing to clear implicit exports
+ Export-ModuleMember
+
+ # Export script cmdlets
+ Get-ChildItem -Path $PSScriptRoot -Recurse -Include '*.ps1' -File | ForEach-Object { . $_.FullName }
+ Export-ModuleMember -Function (Get-ScriptCmdlet -ScriptFolder $PSScriptRoot) -Alias (Get-ScriptCmdlet -ScriptFolder $PSScriptRoot -AsAlias)
+# endregion
diff --git a/swaggerci/sqlvirtualmachine/custom/README.md b/swaggerci/sqlvirtualmachine/custom/README.md
new file mode 100644
index 000000000000..f83be54f41e7
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/custom/README.md
@@ -0,0 +1,41 @@
+# Custom
+This directory contains custom implementation for non-generated cmdlets for the `Az.SqlVirtualMachine` module. Both scripts (`.ps1`) and C# files (`.cs`) can be implemented here. They will be used during the build process in `build-module.ps1`, and create cmdlets into the `../exports` folder. The only generated file into this folder is the `Az.SqlVirtualMachine.custom.psm1`. This file should not be modified.
+
+## Info
+- Modifiable: yes
+- Generated: partial
+- Committed: yes
+- Packaged: yes
+
+## Details
+For `Az.SqlVirtualMachine` to use custom cmdlets, it does this two different ways. We **highly recommend** creating script cmdlets, as they are easier to write and allow access to the other exported cmdlets. C# cmdlets *cannot access exported cmdlets*.
+
+For C# cmdlets, they are compiled with the rest of the generated low-level cmdlets into the `./bin/Az.SqlVirtualMachine.private.dll`. The names of the cmdlets (methods) and files must follow the `[cmdletName]_[variantName]` syntax used for generated cmdlets. The `variantName` is used as the `ParameterSetName`, so use something appropriate that doesn't clash with already created variant or parameter set names. You cannot use the `ParameterSetName` property in the `Parameter` attribute on C# cmdlets. Each cmdlet must be separated into variants using the same pattern as seen in the `generated/cmdlets` folder.
+
+For script cmdlets, these are loaded via the `Az.SqlVirtualMachine.custom.psm1`. Then, during the build process, this module is loaded and processed in the same manner as the C# cmdlets. The fundamental difference is the script cmdlets use the `ParameterSetName` attribute and C# cmdlets do not. To create a script cmdlet variant of a generated cmdlet, simply decorate all parameters in the script with the new `ParameterSetName` in the `Parameter` attribute. This will appropriately treat each parameter set as a separate variant when processed to be exported during the build.
+
+## Purpose
+This allows the modules to have cmdlets that were not defined in the REST specification. It also allows combining logic using generated cmdlets. This is a level of customization beyond what can be done using the [readme configuration options](https://github.com/Azure/autorest/blob/master/docs/powershell/options.md) that are currently available. These custom cmdlets are then referenced by the cmdlets created at build-time in the `../exports` folder.
+
+## Usage
+The easiest way currently to start developing custom cmdlets is to copy an existing cmdlet. For C# cmdlets, copy one from the `generated/cmdlets` folder. For script cmdlets, build the project using `build-module.ps1` and copy one of the scripts from the `../exports` folder. After that, if you want to add new parameter sets, follow the guidelines in the `Details` section above. For implementing a new cmdlets, at minimum, please keep these parameters:
+- Break
+- DefaultProfile
+- HttpPipelineAppend
+- HttpPipelinePrepend
+- Proxy
+- ProxyCredential
+- ProxyUseDefaultCredentials
+
+These provide functionality to our HTTP pipeline and other useful features. In script, you can forward these parameters using `$PSBoundParameters` to the other cmdlets you're calling within `Az.SqlVirtualMachine`. For C#, follow the usage seen in the `ProcessRecordAsync` method.
+
+### Attributes
+For processing the cmdlets, we've created some additional attributes:
+- `Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.DescriptionAttribute`
+ - Used in C# cmdlets to provide a high-level description of the cmdlet. This is propagated to reference documentation via [help comments](https://docs.microsoft.com/powershell/module/microsoft.powershell.core/about/about_comment_based_help) in the exported scripts.
+- `Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.DoNotExportAttribute`
+ - Used in C# and script cmdlets to suppress creating an exported cmdlet at build-time. These cmdlets will *not be exposed* by `Az.SqlVirtualMachine`.
+- `Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.InternalExportAttribute`
+ - Used in C# cmdlets to route exported cmdlets to the `../internal`, which are *not exposed* by `Az.SqlVirtualMachine`. For more information, see [README.md](../internal/README.md) in the `../internal` folder.
+- `Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.ProfileAttribute`
+ - Used in C# and script cmdlets to define which Azure profiles the cmdlet supports. This is only supported for Azure (`--azure`) modules.
\ No newline at end of file
diff --git a/swaggerci/sqlvirtualmachine/docs/Az.SqlVirtualMachine.md b/swaggerci/sqlvirtualmachine/docs/Az.SqlVirtualMachine.md
new file mode 100644
index 000000000000..ecf320db50b6
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/Az.SqlVirtualMachine.md
@@ -0,0 +1,55 @@
+---
+Module Name: Az.SqlVirtualMachine
+Module Guid: 9515a930-845b-4e48-b55f-e10415184cca
+Download Help Link: https://docs.microsoft.com/en-us/powershell/module/az.sqlvirtualmachine
+Help Version: 1.0.0.0
+Locale: en-US
+---
+
+# Az.SqlVirtualMachine Module
+## Description
+Microsoft Azure PowerShell: SqlVirtualMachine cmdlets
+
+## Az.SqlVirtualMachine Cmdlets
+### [Get-AzSqlVirtualMachineAvailabilityGroupListener](Get-AzSqlVirtualMachineAvailabilityGroupListener.md)
+Gets an availability group listener.
+
+### [Get-AzSqlVirtualMachineSqlVirtualMachine](Get-AzSqlVirtualMachineSqlVirtualMachine.md)
+Gets a SQL virtual machine.
+
+### [Get-AzSqlVirtualMachineSqlVirtualMachineGroup](Get-AzSqlVirtualMachineSqlVirtualMachineGroup.md)
+Gets a SQL virtual machine group.
+
+### [Invoke-AzSqlVirtualMachineRedeploySqlVirtualMachine](Invoke-AzSqlVirtualMachineRedeploySqlVirtualMachine.md)
+Uninstalls and reinstalls the SQL Iaas Extension.
+
+### [Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot](Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot.md)
+Starts SQL virtual machine troubleshoot.
+
+### [New-AzSqlVirtualMachineAvailabilityGroupListener](New-AzSqlVirtualMachineAvailabilityGroupListener.md)
+Creates or updates an availability group listener.
+
+### [New-AzSqlVirtualMachineSqlVirtualMachine](New-AzSqlVirtualMachineSqlVirtualMachine.md)
+Creates or updates a SQL virtual machine.
+
+### [New-AzSqlVirtualMachineSqlVirtualMachineGroup](New-AzSqlVirtualMachineSqlVirtualMachineGroup.md)
+Creates or updates a SQL virtual machine group.
+
+### [Remove-AzSqlVirtualMachineAvailabilityGroupListener](Remove-AzSqlVirtualMachineAvailabilityGroupListener.md)
+Deletes an availability group listener.
+
+### [Remove-AzSqlVirtualMachineSqlVirtualMachine](Remove-AzSqlVirtualMachineSqlVirtualMachine.md)
+Deletes a SQL virtual machine.
+
+### [Remove-AzSqlVirtualMachineSqlVirtualMachineGroup](Remove-AzSqlVirtualMachineSqlVirtualMachineGroup.md)
+Deletes a SQL virtual machine group.
+
+### [Start-AzSqlVirtualMachineSqlVirtualMachineAssessment](Start-AzSqlVirtualMachineSqlVirtualMachineAssessment.md)
+Starts Assessment on SQL virtual machine.
+
+### [Update-AzSqlVirtualMachineSqlVirtualMachine](Update-AzSqlVirtualMachineSqlVirtualMachine.md)
+Updates a SQL virtual machine.
+
+### [Update-AzSqlVirtualMachineSqlVirtualMachineGroup](Update-AzSqlVirtualMachineSqlVirtualMachineGroup.md)
+Updates SQL virtual machine group tags.
+
diff --git a/swaggerci/sqlvirtualmachine/docs/Get-AzSqlVirtualMachineAvailabilityGroupListener.md b/swaggerci/sqlvirtualmachine/docs/Get-AzSqlVirtualMachineAvailabilityGroupListener.md
new file mode 100644
index 000000000000..d645ee33f780
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/Get-AzSqlVirtualMachineAvailabilityGroupListener.md
@@ -0,0 +1,215 @@
+---
+external help file:
+Module Name: Az.SqlVirtualMachine
+online version: https://docs.microsoft.com/en-us/powershell/module/az.sqlvirtualmachine/get-azsqlvirtualmachineavailabilitygrouplistener
+schema: 2.0.0
+---
+
+# Get-AzSqlVirtualMachineAvailabilityGroupListener
+
+## SYNOPSIS
+Gets an availability group listener.
+
+## SYNTAX
+
+### List (Default)
+```
+Get-AzSqlVirtualMachineAvailabilityGroupListener -ResourceGroupName
+ -SqlVirtualMachineGroupName [-SubscriptionId ] [-DefaultProfile ] [-PassThru]
+ []
+```
+
+### Get
+```
+Get-AzSqlVirtualMachineAvailabilityGroupListener -Name -ResourceGroupName
+ -SqlVirtualMachineGroupName [-SubscriptionId ] [-Expand ]
+ [-DefaultProfile ] [-PassThru] []
+```
+
+### GetViaIdentity
+```
+Get-AzSqlVirtualMachineAvailabilityGroupListener -InputObject [-Expand ]
+ [-DefaultProfile ] [-PassThru] []
+```
+
+## DESCRIPTION
+Gets an availability group listener.
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Expand
+The child resources to include in the response.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, GetViaIdentity
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+Parameter Sets: GetViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the availability group listener.
+
+```yaml
+Type: System.String
+Parameter Sets: Get
+Aliases: AvailabilityGroupListenerName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true when the command succeeds
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of the resource group that contains the resource.
+You can obtain this value from the Azure Resource Manager API or the portal.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlVirtualMachineGroupName
+Name of the SQL virtual machine group.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+Subscription ID that identifies an Azure subscription.
+
+```yaml
+Type: System.String[]
+Parameter Sets: Get, List
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.IAvailabilityGroupListener
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+`INPUTOBJECT `: Identity Parameter
+ - `[AvailabilityGroupListenerName ]`: Name of the availability group listener.
+ - `[Id ]`: Resource identity path
+ - `[ResourceGroupName ]`: Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
+ - `[SqlVirtualMachineGroupName ]`: Name of the SQL virtual machine group.
+ - `[SqlVirtualMachineName ]`: Name of the SQL virtual machine.
+ - `[SubscriptionId ]`: Subscription ID that identifies an Azure subscription.
+
+## RELATED LINKS
+
diff --git a/swaggerci/sqlvirtualmachine/docs/Get-AzSqlVirtualMachineSqlVirtualMachine.md b/swaggerci/sqlvirtualmachine/docs/Get-AzSqlVirtualMachineSqlVirtualMachine.md
new file mode 100644
index 000000000000..c23b366d8aec
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/Get-AzSqlVirtualMachineSqlVirtualMachine.md
@@ -0,0 +1,225 @@
+---
+external help file:
+Module Name: Az.SqlVirtualMachine
+online version: https://docs.microsoft.com/en-us/powershell/module/az.sqlvirtualmachine/get-azsqlvirtualmachinesqlvirtualmachine
+schema: 2.0.0
+---
+
+# Get-AzSqlVirtualMachineSqlVirtualMachine
+
+## SYNOPSIS
+Gets a SQL virtual machine.
+
+## SYNTAX
+
+### List1 (Default)
+```
+Get-AzSqlVirtualMachineSqlVirtualMachine [-SubscriptionId ] [-DefaultProfile ] [-PassThru]
+ []
+```
+
+### Get
+```
+Get-AzSqlVirtualMachineSqlVirtualMachine -Name -ResourceGroupName
+ [-SubscriptionId ] [-Expand ] [-DefaultProfile ] [-PassThru] []
+```
+
+### GetViaIdentity
+```
+Get-AzSqlVirtualMachineSqlVirtualMachine -InputObject [-Expand ]
+ [-DefaultProfile ] [-PassThru] []
+```
+
+### List
+```
+Get-AzSqlVirtualMachineSqlVirtualMachine -GroupName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] [-PassThru] []
+```
+
+### List2
+```
+Get-AzSqlVirtualMachineSqlVirtualMachine -ResourceGroupName [-SubscriptionId ]
+ [-DefaultProfile ] [-PassThru] []
+```
+
+## DESCRIPTION
+Gets a SQL virtual machine.
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Expand
+The child resources to include in the response.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, GetViaIdentity
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -GroupName
+Name of the SQL virtual machine group.
+
+```yaml
+Type: System.String
+Parameter Sets: List
+Aliases: SqlVirtualMachineGroupName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+Parameter Sets: GetViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the SQL virtual machine.
+
+```yaml
+Type: System.String
+Parameter Sets: Get
+Aliases: SqlVirtualMachineName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true when the command succeeds
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of the resource group that contains the resource.
+You can obtain this value from the Azure Resource Manager API or the portal.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List, List2
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+Subscription ID that identifies an Azure subscription.
+
+```yaml
+Type: System.String[]
+Parameter Sets: Get, List, List1, List2
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ISqlVirtualMachine
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+`INPUTOBJECT `: Identity Parameter
+ - `[AvailabilityGroupListenerName ]`: Name of the availability group listener.
+ - `[Id ]`: Resource identity path
+ - `[ResourceGroupName ]`: Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
+ - `[SqlVirtualMachineGroupName ]`: Name of the SQL virtual machine group.
+ - `[SqlVirtualMachineName ]`: Name of the SQL virtual machine.
+ - `[SubscriptionId ]`: Subscription ID that identifies an Azure subscription.
+
+## RELATED LINKS
+
diff --git a/swaggerci/sqlvirtualmachine/docs/Get-AzSqlVirtualMachineSqlVirtualMachineGroup.md b/swaggerci/sqlvirtualmachine/docs/Get-AzSqlVirtualMachineSqlVirtualMachineGroup.md
new file mode 100644
index 000000000000..2da72cda0878
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/Get-AzSqlVirtualMachineSqlVirtualMachineGroup.md
@@ -0,0 +1,189 @@
+---
+external help file:
+Module Name: Az.SqlVirtualMachine
+online version: https://docs.microsoft.com/en-us/powershell/module/az.sqlvirtualmachine/get-azsqlvirtualmachinesqlvirtualmachinegroup
+schema: 2.0.0
+---
+
+# Get-AzSqlVirtualMachineSqlVirtualMachineGroup
+
+## SYNOPSIS
+Gets a SQL virtual machine group.
+
+## SYNTAX
+
+### List1 (Default)
+```
+Get-AzSqlVirtualMachineSqlVirtualMachineGroup [-SubscriptionId ] [-DefaultProfile ]
+ [-PassThru] []
+```
+
+### Get
+```
+Get-AzSqlVirtualMachineSqlVirtualMachineGroup -Name -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] [-PassThru] []
+```
+
+### GetViaIdentity
+```
+Get-AzSqlVirtualMachineSqlVirtualMachineGroup -InputObject
+ [-DefaultProfile ] [-PassThru] []
+```
+
+### List
+```
+Get-AzSqlVirtualMachineSqlVirtualMachineGroup -ResourceGroupName [-SubscriptionId ]
+ [-DefaultProfile ] [-PassThru] []
+```
+
+## DESCRIPTION
+Gets a SQL virtual machine group.
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+Parameter Sets: GetViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the SQL virtual machine group.
+
+```yaml
+Type: System.String
+Parameter Sets: Get
+Aliases: SqlVirtualMachineGroupName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true when the command succeeds
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of the resource group that contains the resource.
+You can obtain this value from the Azure Resource Manager API or the portal.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+Subscription ID that identifies an Azure subscription.
+
+```yaml
+Type: System.String[]
+Parameter Sets: Get, List, List1
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ISqlVirtualMachineGroup
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+`INPUTOBJECT `: Identity Parameter
+ - `[AvailabilityGroupListenerName ]`: Name of the availability group listener.
+ - `[Id ]`: Resource identity path
+ - `[ResourceGroupName ]`: Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
+ - `[SqlVirtualMachineGroupName ]`: Name of the SQL virtual machine group.
+ - `[SqlVirtualMachineName ]`: Name of the SQL virtual machine.
+ - `[SubscriptionId ]`: Subscription ID that identifies an Azure subscription.
+
+## RELATED LINKS
+
diff --git a/swaggerci/sqlvirtualmachine/docs/Invoke-AzSqlVirtualMachineRedeploySqlVirtualMachine.md b/swaggerci/sqlvirtualmachine/docs/Invoke-AzSqlVirtualMachineRedeploySqlVirtualMachine.md
new file mode 100644
index 000000000000..b25cc027a017
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/Invoke-AzSqlVirtualMachineRedeploySqlVirtualMachine.md
@@ -0,0 +1,239 @@
+---
+external help file:
+Module Name: Az.SqlVirtualMachine
+online version: https://docs.microsoft.com/en-us/powershell/module/az.sqlvirtualmachine/invoke-azsqlvirtualmachineredeploysqlvirtualmachine
+schema: 2.0.0
+---
+
+# Invoke-AzSqlVirtualMachineRedeploySqlVirtualMachine
+
+## SYNOPSIS
+Uninstalls and reinstalls the SQL Iaas Extension.
+
+## SYNTAX
+
+### Redeploy (Default)
+```
+Invoke-AzSqlVirtualMachineRedeploySqlVirtualMachine -ResourceGroupName
+ -SqlVirtualMachineName [-SubscriptionId ] [-DefaultProfile ] [-AsJob] [-NoWait]
+ [-PassThru] [-Confirm] [-WhatIf] []
+```
+
+### RedeployViaIdentity
+```
+Invoke-AzSqlVirtualMachineRedeploySqlVirtualMachine -InputObject
+ [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-Confirm] [-WhatIf] []
+```
+
+## DESCRIPTION
+Uninstalls and reinstalls the SQL Iaas Extension.
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -AsJob
+Run the command as a job
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+Parameter Sets: RedeployViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -NoWait
+Run the command asynchronously
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true when the command succeeds
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of the resource group that contains the resource.
+You can obtain this value from the Azure Resource Manager API or the portal.
+
+```yaml
+Type: System.String
+Parameter Sets: Redeploy
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlVirtualMachineName
+Name of the SQL virtual machine.
+
+```yaml
+Type: System.String
+Parameter Sets: Redeploy
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+Subscription ID that identifies an Azure subscription.
+
+```yaml
+Type: System.String
+Parameter Sets: Redeploy
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs.
+The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+
+## OUTPUTS
+
+### System.Boolean
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+`INPUTOBJECT `: Identity Parameter
+ - `[AvailabilityGroupListenerName ]`: Name of the availability group listener.
+ - `[Id ]`: Resource identity path
+ - `[ResourceGroupName ]`: Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
+ - `[SqlVirtualMachineGroupName ]`: Name of the SQL virtual machine group.
+ - `[SqlVirtualMachineName ]`: Name of the SQL virtual machine.
+ - `[SubscriptionId ]`: Subscription ID that identifies an Azure subscription.
+
+## RELATED LINKS
+
diff --git a/swaggerci/sqlvirtualmachine/docs/Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot.md b/swaggerci/sqlvirtualmachine/docs/Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot.md
new file mode 100644
index 000000000000..af69f85039d1
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot.md
@@ -0,0 +1,341 @@
+---
+external help file:
+Module Name: Az.SqlVirtualMachine
+online version: https://docs.microsoft.com/en-us/powershell/module/az.sqlvirtualmachine/invoke-azsqlvirtualmachinetroubleshootsqlvirtualmachinetroubleshoot
+schema: 2.0.0
+---
+
+# Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot
+
+## SYNOPSIS
+Starts SQL virtual machine troubleshoot.
+
+## SYNTAX
+
+### TroubleshootExpanded (Default)
+```
+Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot -ResourceGroupName
+ -SqlVirtualMachineName [-SubscriptionId ] [-EndTimeUtc ]
+ [-StartTimeUtc ] [-TroubleShootingScenario ]
+ [-UnHealthyReplicaPropertyAvailabilityGroupName ] [-DefaultProfile ] [-AsJob] [-NoWait]
+ [-PassThru] [-Confirm] [-WhatIf] []
+```
+
+### Troubleshoot
+```
+Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot -ResourceGroupName
+ -SqlVirtualMachineName -Parameter [-SubscriptionId ]
+ [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-Confirm] [-WhatIf] []
+```
+
+### TroubleshootViaIdentity
+```
+Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot -InputObject
+ -Parameter [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-Confirm]
+ [-WhatIf] []
+```
+
+### TroubleshootViaIdentityExpanded
+```
+Invoke-AzSqlVirtualMachineTroubleshootSqlVirtualMachineTroubleshoot -InputObject
+ [-EndTimeUtc ] [-StartTimeUtc ] [-TroubleShootingScenario ]
+ [-UnHealthyReplicaPropertyAvailabilityGroupName ] [-DefaultProfile ] [-AsJob] [-NoWait]
+ [-PassThru] [-Confirm] [-WhatIf] []
+```
+
+## DESCRIPTION
+Starts SQL virtual machine troubleshoot.
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -AsJob
+Run the command as a job
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -EndTimeUtc
+End time in UTC format.
+
+```yaml
+Type: System.DateTime
+Parameter Sets: TroubleshootExpanded, TroubleshootViaIdentityExpanded
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+Parameter Sets: TroubleshootViaIdentity, TroubleshootViaIdentityExpanded
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -NoWait
+Run the command asynchronously
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Parameter
+Details required for SQL VM troubleshoot
+To construct, see NOTES section for PARAMETER properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ISqlVMTroubleshoot
+Parameter Sets: Troubleshoot, TroubleshootViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true when the command succeeds
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of the resource group that contains the resource.
+You can obtain this value from the Azure Resource Manager API or the portal.
+
+```yaml
+Type: System.String
+Parameter Sets: Troubleshoot, TroubleshootExpanded
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlVirtualMachineName
+Name of the SQL virtual machine.
+
+```yaml
+Type: System.String
+Parameter Sets: Troubleshoot, TroubleshootExpanded
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -StartTimeUtc
+Start time in UTC format.
+
+```yaml
+Type: System.DateTime
+Parameter Sets: TroubleshootExpanded, TroubleshootViaIdentityExpanded
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+Subscription ID that identifies an Azure subscription.
+
+```yaml
+Type: System.String
+Parameter Sets: Troubleshoot, TroubleshootExpanded
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -TroubleShootingScenario
+SQL VM troubleshooting scenario.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.TroubleShootingScenario
+Parameter Sets: TroubleshootExpanded, TroubleshootViaIdentityExpanded
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -UnHealthyReplicaPropertyAvailabilityGroupName
+The name of the availability group
+
+```yaml
+Type: System.String
+Parameter Sets: TroubleshootExpanded, TroubleshootViaIdentityExpanded
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs.
+The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ISqlVMTroubleshoot
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+
+## OUTPUTS
+
+### System.Boolean
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+`INPUTOBJECT `: Identity Parameter
+ - `[AvailabilityGroupListenerName ]`: Name of the availability group listener.
+ - `[Id ]`: Resource identity path
+ - `[ResourceGroupName ]`: Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
+ - `[SqlVirtualMachineGroupName ]`: Name of the SQL virtual machine group.
+ - `[SqlVirtualMachineName ]`: Name of the SQL virtual machine.
+ - `[SubscriptionId ]`: Subscription ID that identifies an Azure subscription.
+
+`PARAMETER `: Details required for SQL VM troubleshoot
+ - `[EndTimeUtc ]`: End time in UTC format.
+ - `[StartTimeUtc ]`: Start time in UTC format.
+ - `[TroubleShootingScenario ]`: SQL VM troubleshooting scenario.
+ - `[UnHealthyReplicaPropertyAvailabilityGroupName ]`: The name of the availability group
+
+## RELATED LINKS
+
diff --git a/swaggerci/sqlvirtualmachine/docs/New-AzSqlVirtualMachineAvailabilityGroupListener.md b/swaggerci/sqlvirtualmachine/docs/New-AzSqlVirtualMachineAvailabilityGroupListener.md
new file mode 100644
index 000000000000..884c79d1ed93
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/New-AzSqlVirtualMachineAvailabilityGroupListener.md
@@ -0,0 +1,337 @@
+---
+external help file:
+Module Name: Az.SqlVirtualMachine
+online version: https://docs.microsoft.com/en-us/powershell/module/az.sqlvirtualmachine/new-azsqlvirtualmachineavailabilitygrouplistener
+schema: 2.0.0
+---
+
+# New-AzSqlVirtualMachineAvailabilityGroupListener
+
+## SYNOPSIS
+Creates or updates an availability group listener.
+
+## SYNTAX
+
+```
+New-AzSqlVirtualMachineAvailabilityGroupListener -Name -ResourceGroupName
+ -SqlVirtualMachineGroupName [-SubscriptionId ]
+ [-AvailabilityGroupConfigurationReplica ] [-AvailabilityGroupName ]
+ [-CreateDefaultAvailabilityGroupIfNotExist] [-LoadBalancerConfiguration ]
+ [-MultiSubnetIPConfiguration ] [-Port ] [-DefaultProfile ]
+ [-AsJob] [-NoWait] [-PassThru] [-Confirm] [-WhatIf] []
+```
+
+## DESCRIPTION
+Creates or updates an availability group listener.
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -AsJob
+Run the command as a job
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AvailabilityGroupConfigurationReplica
+Replica configurations.
+To construct, see NOTES section for AVAILABILITYGROUPCONFIGURATIONREPLICA properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.IAgReplica[]
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AvailabilityGroupName
+Name of the availability group.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -CreateDefaultAvailabilityGroupIfNotExist
+Create a default availability group if it does not exist.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -LoadBalancerConfiguration
+List of load balancer configurations for an availability group listener.
+To construct, see NOTES section for LOADBALANCERCONFIGURATION properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ILoadBalancerConfiguration[]
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -MultiSubnetIPConfiguration
+List of multi subnet IP configurations for an AG listener.
+To construct, see NOTES section for MULTISUBNETIPCONFIGURATION properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.IMultiSubnetIPConfiguration[]
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the availability group listener.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases: AvailabilityGroupListenerName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -NoWait
+Run the command asynchronously
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true when the command succeeds
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Port
+Listener port.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of the resource group that contains the resource.
+You can obtain this value from the Azure Resource Manager API or the portal.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlVirtualMachineGroupName
+Name of the SQL virtual machine group.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+Subscription ID that identifies an Azure subscription.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs.
+The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.IAvailabilityGroupListener
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+`AVAILABILITYGROUPCONFIGURATIONREPLICA `: Replica configurations.
+ - `[Commit ]`: Replica commit mode in availability group.
+ - `[Failover ]`: Replica failover mode in availability group.
+ - `[ReadableSecondary ]`: Replica readable secondary mode in availability group.
+ - `[Role ]`: Replica Role in availability group.
+ - `[SqlVirtualMachineInstanceId ]`: Sql VirtualMachine Instance Id.
+
+`LOADBALANCERCONFIGURATION `: List of load balancer configurations for an availability group listener.
+ - `[LoadBalancerResourceId ]`: Resource id of the load balancer.
+ - `[PrivateIPAddressIpaddress ]`: Private IP address bound to the availability group listener.
+ - `[PrivateIPAddressSubnetResourceId ]`: Subnet used to include private IP.
+ - `[ProbePort ]`: Probe port.
+ - `[PublicIPAddressResourceId ]`: Resource id of the public IP.
+ - `[SqlVirtualMachineInstance ]`: List of the SQL virtual machine instance resource id's that are enrolled into the availability group listener.
+
+`MULTISUBNETIPCONFIGURATION `: List of multi subnet IP configurations for an AG listener.
+ - `SqlVirtualMachineInstance `: SQL virtual machine instance resource id that are enrolled into the availability group listener.
+ - `[PrivateIPAddressIpaddress ]`: Private IP address bound to the availability group listener.
+ - `[PrivateIPAddressSubnetResourceId ]`: Subnet used to include private IP.
+
+## RELATED LINKS
+
diff --git a/swaggerci/sqlvirtualmachine/docs/New-AzSqlVirtualMachineSqlVirtualMachine.md b/swaggerci/sqlvirtualmachine/docs/New-AzSqlVirtualMachineSqlVirtualMachine.md
new file mode 100644
index 000000000000..39764405f524
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/New-AzSqlVirtualMachineSqlVirtualMachine.md
@@ -0,0 +1,1423 @@
+---
+external help file:
+Module Name: Az.SqlVirtualMachine
+online version: https://docs.microsoft.com/en-us/powershell/module/az.sqlvirtualmachine/new-azsqlvirtualmachinesqlvirtualmachine
+schema: 2.0.0
+---
+
+# New-AzSqlVirtualMachineSqlVirtualMachine
+
+## SYNOPSIS
+Creates or updates a SQL virtual machine.
+
+## SYNTAX
+
+```
+New-AzSqlVirtualMachineSqlVirtualMachine -Name -ResourceGroupName -Location
+ [-SubscriptionId ] [-AdditionalFeatureServerConfigurationIsRServicesEnabled]
+ [-AssessmentSettingEnable] [-AssessmentSettingRunImmediately]
+ [-AutoBackupSettingBackupScheduleType ] [-AutoBackupSettingBackupSystemDb]
+ [-AutoBackupSettingDaysOfWeek ] [-AutoBackupSettingEnable]
+ [-AutoBackupSettingEnableEncryption] [-AutoBackupSettingFullBackupFrequency ]
+ [-AutoBackupSettingFullBackupStartTime ] [-AutoBackupSettingFullBackupWindowHour ]
+ [-AutoBackupSettingLogBackupFrequency ] [-AutoBackupSettingPassword ]
+ [-AutoBackupSettingRetentionPeriod ] [-AutoBackupSettingStorageAccessKey ]
+ [-AutoBackupSettingStorageAccountUrl ] [-AutoBackupSettingStorageContainerName ]
+ [-AutoPatchingSettingDayOfWeek ] [-AutoPatchingSettingEnable]
+ [-AutoPatchingSettingMaintenanceWindowDuration ]
+ [-AutoPatchingSettingMaintenanceWindowStartingHour ] [-AzureAdAuthenticationSettingClientId ]
+ [-EnableAutomaticUpgrade] [-IdentityType ]
+ [-KeyVaultCredentialSettingAzureKeyVaultUrl ] [-KeyVaultCredentialSettingCredentialName ]
+ [-KeyVaultCredentialSettingEnable] [-KeyVaultCredentialSettingServicePrincipalName ]
+ [-KeyVaultCredentialSettingServicePrincipalSecret ] [-LeastPrivilegeMode ]
+ [-ScheduleDayOfWeek ] [-ScheduleEnable] [-ScheduleMonthlyOccurrence ]
+ [-ScheduleStartTime ] [-ScheduleWeeklyInterval ]
+ [-SqlConnectivityUpdateSettingConnectivityType ]
+ [-SqlConnectivityUpdateSettingPort ] [-SqlConnectivityUpdateSettingSqlAuthUpdatePassword ]
+ [-SqlConnectivityUpdateSettingSqlAuthUpdateUserName ] [-SqlDataSettingDefaultFilePath ]
+ [-SqlDataSettingLun ] [-SqlImageOffer ] [-SqlImageSku ]
+ [-SqlInstanceSettingCollation ] [-SqlInstanceSettingIsIfiEnabled] [-SqlInstanceSettingIsLpimEnabled]
+ [-SqlInstanceSettingIsOptimizeForAdHocWorkloadsEnabled] [-SqlInstanceSettingMaxDop ]
+ [-SqlInstanceSettingMaxServerMemoryMb ] [-SqlInstanceSettingMinServerMemoryMb ]
+ [-SqlLogSettingDefaultFilePath ] [-SqlLogSettingLun ] [-SqlManagement ]
+ [-SqlServerLicenseType ]
+ [-SqlStorageUpdateSettingDiskConfigurationType ]
+ [-SqlStorageUpdateSettingDiskCount ] [-SqlStorageUpdateSettingStartingDeviceId ]
+ [-SqlTempDbSettingDataFileCount ] [-SqlTempDbSettingDataFileSize ]
+ [-SqlTempDbSettingDataGrowth ] [-SqlTempDbSettingDefaultFilePath ]
+ [-SqlTempDbSettingLogFileSize ] [-SqlTempDbSettingLogGrowth ] [-SqlTempDbSettingLun ]
+ [-SqlTempDbSettingPersistFolder] [-SqlTempDbSettingPersistFolderPath ]
+ [-SqlVirtualMachineGroupResourceId ] [-SqlWorkloadTypeUpdateSettingSqlWorkloadType ]
+ [-StorageConfigurationSettingDiskConfigurationType ]
+ [-StorageConfigurationSettingSqlSystemDbOnDataDisk]
+ [-StorageConfigurationSettingStorageWorkloadType ] [-Tag ]
+ [-VirtualMachineResourceId ] [-WsfcDomainCredentialsClusterBootstrapAccountPassword ]
+ [-WsfcDomainCredentialsClusterOperatorAccountPassword ]
+ [-WsfcDomainCredentialsSqlServiceAccountPassword ] [-WsfcStaticIP ]
+ [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-Confirm] [-WhatIf] []
+```
+
+## DESCRIPTION
+Creates or updates a SQL virtual machine.
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -AdditionalFeatureServerConfigurationIsRServicesEnabled
+Enable or disable R services (SQL 2016 onwards).
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AsJob
+Run the command as a job
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AssessmentSettingEnable
+Enable or disable assessment feature on SQL virtual machine.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AssessmentSettingRunImmediately
+Run assessment immediately on SQL virtual machine.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingBackupScheduleType
+Backup schedule type.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.BackupScheduleType
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingBackupSystemDb
+Include or exclude system databases from auto backup.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingDaysOfWeek
+Days of the week for the backups when FullBackupFrequency is set to Weekly.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.AutoBackupDaysOfWeek[]
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingEnable
+Enable or disable autobackup on SQL virtual machine.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingEnableEncryption
+Enable or disable encryption for backup on SQL virtual machine.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingFullBackupFrequency
+Frequency of full backups.
+In both cases, full backups begin during the next scheduled time window.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.FullBackupFrequencyType
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingFullBackupStartTime
+Start time of a given day during which full backups can take place.
+0-23 hours.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingFullBackupWindowHour
+Duration of the time window of a given day during which full backups can take place.
+1-23 hours.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingLogBackupFrequency
+Frequency of log backups.
+5-60 minutes.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingPassword
+Password for encryption on backup.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingRetentionPeriod
+Retention period of backup: 1-90 days.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingStorageAccessKey
+Storage account key where backup will be taken to.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingStorageAccountUrl
+Storage account url where backup will be taken to.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoBackupSettingStorageContainerName
+Storage container name where backup will be taken to.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoPatchingSettingDayOfWeek
+Day of week to apply the patch on.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.DayOfWeek
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoPatchingSettingEnable
+Enable or disable autopatching on SQL virtual machine.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoPatchingSettingMaintenanceWindowDuration
+Duration of patching.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AutoPatchingSettingMaintenanceWindowStartingHour
+Hour of the day when patching is initiated.
+Local VM time.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -AzureAdAuthenticationSettingClientId
+The client Id of the Managed Identity to query Microsoft Graph API.
+An empty string must be used for the system assigned Managed Identity
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -EnableAutomaticUpgrade
+Enable automatic upgrade of Sql IaaS extension Agent.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -IdentityType
+The identity type.
+Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.IdentityType
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -KeyVaultCredentialSettingAzureKeyVaultUrl
+Azure Key Vault url.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -KeyVaultCredentialSettingCredentialName
+Credential name.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -KeyVaultCredentialSettingEnable
+Enable or disable key vault credential setting.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -KeyVaultCredentialSettingServicePrincipalName
+Service principal name to access key vault.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -KeyVaultCredentialSettingServicePrincipalSecret
+Service principal name secret to access key vault.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -LeastPrivilegeMode
+SQL IaaS Agent least privilege mode.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.LeastPrivilegeMode
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Location
+Resource location.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the SQL virtual machine.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases: SqlVirtualMachineName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -NoWait
+Run the command asynchronously
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true when the command succeeds
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of the resource group that contains the resource.
+You can obtain this value from the Azure Resource Manager API or the portal.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ScheduleDayOfWeek
+Day of the week to run assessment.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.AssessmentDayOfWeek
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ScheduleEnable
+Enable or disable assessment schedule on SQL virtual machine.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ScheduleMonthlyOccurrence
+Occurrence of the DayOfWeek day within a month to schedule assessment.
+Takes values: 1,2,3,4 and -1.
+Use -1 for last DayOfWeek day of the month
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ScheduleStartTime
+Time of the day in HH:mm format.
+Eg.
+17:30
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ScheduleWeeklyInterval
+Number of weeks to schedule between 2 assessment runs.
+Takes value from 1-6
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlConnectivityUpdateSettingConnectivityType
+SQL Server connectivity option.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.ConnectivityType
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlConnectivityUpdateSettingPort
+SQL Server port.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlConnectivityUpdateSettingSqlAuthUpdatePassword
+SQL Server sysadmin login password.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlConnectivityUpdateSettingSqlAuthUpdateUserName
+SQL Server sysadmin login to create.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlDataSettingDefaultFilePath
+SQL Server default file path
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlDataSettingLun
+Logical Unit Numbers for the disks.
+
+```yaml
+Type: System.Int32[]
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlImageOffer
+SQL image offer.
+Examples include SQL2016-WS2016, SQL2017-WS2016.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlImageSku
+SQL Server edition type.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.SqlImageSku
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlInstanceSettingCollation
+SQL Server Collation.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlInstanceSettingIsIfiEnabled
+SQL Server IFI.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlInstanceSettingIsLpimEnabled
+SQL Server LPIM.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlInstanceSettingIsOptimizeForAdHocWorkloadsEnabled
+SQL Server Optimize for Adhoc workloads.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlInstanceSettingMaxDop
+SQL Server MAXDOP.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlInstanceSettingMaxServerMemoryMb
+SQL Server maximum memory.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlInstanceSettingMinServerMemoryMb
+SQL Server minimum memory.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlLogSettingDefaultFilePath
+SQL Server default file path
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlLogSettingLun
+Logical Unit Numbers for the disks.
+
+```yaml
+Type: System.Int32[]
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlManagement
+SQL Server Management type.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.SqlManagementMode
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlServerLicenseType
+SQL Server license type.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.SqlServerLicenseType
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlStorageUpdateSettingDiskConfigurationType
+Disk configuration to apply to SQL Server.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.DiskConfigurationType
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlStorageUpdateSettingDiskCount
+Virtual machine disk count.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlStorageUpdateSettingStartingDeviceId
+Device id of the first disk to be updated.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlTempDbSettingDataFileCount
+SQL Server tempdb data file count
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlTempDbSettingDataFileSize
+SQL Server tempdb data file size
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlTempDbSettingDataGrowth
+SQL Server tempdb data file autoGrowth size
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlTempDbSettingDefaultFilePath
+SQL Server default file path
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlTempDbSettingLogFileSize
+SQL Server tempdb log file size
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlTempDbSettingLogGrowth
+SQL Server tempdb log file autoGrowth size
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlTempDbSettingLun
+Logical Unit Numbers for the disks.
+
+```yaml
+Type: System.Int32[]
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlTempDbSettingPersistFolder
+SQL Server tempdb persist folder choice
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlTempDbSettingPersistFolderPath
+SQL Server tempdb persist folder location
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlVirtualMachineGroupResourceId
+ARM resource id of the SQL virtual machine group this SQL virtual machine is or will be part of.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlWorkloadTypeUpdateSettingSqlWorkloadType
+SQL Server workload type.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.SqlWorkloadType
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -StorageConfigurationSettingDiskConfigurationType
+Disk configuration to apply to SQL Server.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.DiskConfigurationType
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -StorageConfigurationSettingSqlSystemDbOnDataDisk
+SQL Server SystemDb Storage on DataPool if true.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -StorageConfigurationSettingStorageWorkloadType
+Storage workload type.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.StorageWorkloadType
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+Subscription ID that identifies an Azure subscription.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Tag
+Resource tags.
+
+```yaml
+Type: System.Collections.Hashtable
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -VirtualMachineResourceId
+ARM Resource id of underlying virtual machine created from SQL marketplace image.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainCredentialsClusterBootstrapAccountPassword
+Cluster bootstrap account password.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainCredentialsClusterOperatorAccountPassword
+Cluster operator account password.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainCredentialsSqlServiceAccountPassword
+SQL service account password.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcStaticIP
+Domain credentials for setting up Windows Server Failover Cluster for SQL availability group.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs.
+The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ISqlVirtualMachine
+
+## NOTES
+
+ALIASES
+
+## RELATED LINKS
+
diff --git a/swaggerci/sqlvirtualmachine/docs/New-AzSqlVirtualMachineSqlVirtualMachineGroup.md b/swaggerci/sqlvirtualmachine/docs/New-AzSqlVirtualMachineSqlVirtualMachineGroup.md
new file mode 100644
index 000000000000..b47df75b5d44
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/New-AzSqlVirtualMachineSqlVirtualMachineGroup.md
@@ -0,0 +1,403 @@
+---
+external help file:
+Module Name: Az.SqlVirtualMachine
+online version: https://docs.microsoft.com/en-us/powershell/module/az.sqlvirtualmachine/new-azsqlvirtualmachinesqlvirtualmachinegroup
+schema: 2.0.0
+---
+
+# New-AzSqlVirtualMachineSqlVirtualMachineGroup
+
+## SYNOPSIS
+Creates or updates a SQL virtual machine group.
+
+## SYNTAX
+
+```
+New-AzSqlVirtualMachineSqlVirtualMachineGroup -Name -ResourceGroupName -Location
+ [-SubscriptionId ] [-SqlImageOffer ] [-SqlImageSku ] [-Tag ]
+ [-WsfcDomainProfileClusterBootstrapAccount ] [-WsfcDomainProfileClusterOperatorAccount ]
+ [-WsfcDomainProfileClusterSubnetType ] [-WsfcDomainProfileDomainFqdn ]
+ [-WsfcDomainProfileFileShareWitnessPath ] [-WsfcDomainProfileOuPath ]
+ [-WsfcDomainProfileSqlServiceAccount ] [-WsfcDomainProfileStorageAccountPrimaryKey ]
+ [-WsfcDomainProfileStorageAccountUrl ] [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru]
+ [-Confirm] [-WhatIf] []
+```
+
+## DESCRIPTION
+Creates or updates a SQL virtual machine group.
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -AsJob
+Run the command as a job
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Location
+Resource location.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the SQL virtual machine group.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases: SqlVirtualMachineGroupName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -NoWait
+Run the command asynchronously
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true when the command succeeds
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of the resource group that contains the resource.
+You can obtain this value from the Azure Resource Manager API or the portal.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlImageOffer
+SQL image offer.
+Examples may include SQL2016-WS2016, SQL2017-WS2016.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlImageSku
+SQL image sku.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.SqlVMGroupImageSku
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+Subscription ID that identifies an Azure subscription.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Tag
+Resource tags.
+
+```yaml
+Type: System.Collections.Hashtable
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainProfileClusterBootstrapAccount
+Account name used for creating cluster (at minimum needs permissions to 'Create Computer Objects' in domain).
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainProfileClusterOperatorAccount
+Account name used for operating cluster i.e.
+will be part of administrators group on all the participating virtual machines in the cluster.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainProfileClusterSubnetType
+Cluster subnet type.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Support.ClusterSubnetType
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainProfileDomainFqdn
+Fully qualified name of the domain.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainProfileFileShareWitnessPath
+Optional path for fileshare witness.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainProfileOuPath
+Organizational Unit path in which the nodes and cluster will be present.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainProfileSqlServiceAccount
+Account name under which SQL service will run on all participating SQL virtual machines in the cluster.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainProfileStorageAccountPrimaryKey
+Primary key of the witness storage account.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WsfcDomainProfileStorageAccountUrl
+Fully qualified ARM resource id of the witness storage account.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs.
+The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.Api20220801Preview.ISqlVirtualMachineGroup
+
+## NOTES
+
+ALIASES
+
+## RELATED LINKS
+
diff --git a/swaggerci/sqlvirtualmachine/docs/README.md b/swaggerci/sqlvirtualmachine/docs/README.md
new file mode 100644
index 000000000000..8fd6fded9d75
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/README.md
@@ -0,0 +1,11 @@
+# Docs
+This directory contains the documentation of the cmdlets for the `Az.SqlVirtualMachine` module. To run documentation generation, use the `generate-help.ps1` script at the root module folder. Files in this folder will *always be overridden on regeneration*. To update documentation examples, please use the `../examples` folder.
+
+## Info
+- Modifiable: no
+- Generated: all
+- Committed: yes
+- Packaged: yes
+
+## Details
+The process of documentation generation loads `Az.SqlVirtualMachine` and analyzes the exported cmdlets from the module. It recognizes the [help comments](https://docs.microsoft.com/powershell/module/microsoft.powershell.core/about/about_comment_based_help) that are generated into the scripts in the `../exports` folder. Additionally, when writing custom cmdlets in the `../custom` folder, you can use the help comments syntax, which decorate the exported scripts at build-time. The documentation examples are taken from the `../examples` folder.
\ No newline at end of file
diff --git a/swaggerci/sqlvirtualmachine/docs/Remove-AzSqlVirtualMachineAvailabilityGroupListener.md b/swaggerci/sqlvirtualmachine/docs/Remove-AzSqlVirtualMachineAvailabilityGroupListener.md
new file mode 100644
index 000000000000..a48bbca0e9bb
--- /dev/null
+++ b/swaggerci/sqlvirtualmachine/docs/Remove-AzSqlVirtualMachineAvailabilityGroupListener.md
@@ -0,0 +1,254 @@
+---
+external help file:
+Module Name: Az.SqlVirtualMachine
+online version: https://docs.microsoft.com/en-us/powershell/module/az.sqlvirtualmachine/remove-azsqlvirtualmachineavailabilitygrouplistener
+schema: 2.0.0
+---
+
+# Remove-AzSqlVirtualMachineAvailabilityGroupListener
+
+## SYNOPSIS
+Deletes an availability group listener.
+
+## SYNTAX
+
+### Delete (Default)
+```
+Remove-AzSqlVirtualMachineAvailabilityGroupListener -Name -ResourceGroupName
+ -SqlVirtualMachineGroupName [-SubscriptionId ] [-DefaultProfile ] [-AsJob]
+ [-NoWait] [-PassThru] [-Confirm] [-WhatIf] []
+```
+
+### DeleteViaIdentity
+```
+Remove-AzSqlVirtualMachineAvailabilityGroupListener -InputObject
+ [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-Confirm] [-WhatIf] []
+```
+
+## DESCRIPTION
+Deletes an availability group listener.
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+{{ Add code here }}
+```
+
+```output
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -AsJob
+Run the command as a job
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+Parameter Sets: DeleteViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the availability group listener.
+
+```yaml
+Type: System.String
+Parameter Sets: Delete
+Aliases: AvailabilityGroupListenerName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -NoWait
+Run the command asynchronously
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true when the command succeeds
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of the resource group that contains the resource.
+You can obtain this value from the Azure Resource Manager API or the portal.
+
+```yaml
+Type: System.String
+Parameter Sets: Delete
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SqlVirtualMachineGroupName
+Name of the SQL virtual machine group.
+
+```yaml
+Type: System.String
+Parameter Sets: Delete
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+Subscription ID that identifies an Azure subscription.
+
+```yaml
+Type: System.String
+Parameter Sets: Delete
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs.
+The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.SqlVirtualMachine.Models.ISqlVirtualMachineIdentity
+
+## OUTPUTS
+
+### System.Boolean
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+`INPUTOBJECT `: Identity Parameter
+ - `[AvailabilityGroupListenerName ]`: Name of the availability group listener.
+ - `[Id ]`: Resource identity path
+ - `[ResourceGroupName ]`: Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
+ - `[SqlVirtualMachineGroupName